Tech QA

Tech QA

  • HTML

    • HTML page parts: head, body, css, scripts

    • Semantics

    • Simple form: name, email, age, phone, submit #coding-task

    • What are data- attributes good for?

    • Describe the difference between <script>, <script async> and <script defer>

    • Re-flow / repaint

    • HTML5 - difference, new tags and APIs

  • CSS

    • Cascade, Specificity, Selector weight

    • Document flow

    • Box model

    • Positioning

    • Z-index

    • "inherit" values

    • Flex?

    • Grid?

    • Units: %, px, em/rem (difference), vh/vw, vmin/vmax

    • Responsive/Adaptive design, @-media

    • Pre- and post-processing

  • DOM / BOM

    • Tree structure, traversing, adding-removing nodes

    • Events: bubbling and capturing, delegation, Event obj

  • CS

    • Overview, Paradigms (OOP, FP)

    • Typing: static-dynamic, strict-weak

    • Data structures: array, linked-list, queue, stack

  • JS

    • Types, type coercion, truthy/falsy

    • Functions

    • Context, this, bind - apply - call, currying

    • Prototypes, inheritance

    • ES2015+ features: let/const, default params, rest/spread, Promise/async-await

    • Array methods

    • AJAX: XMLHttpRequest, Cross-Origin Resource Sharing, fetch

    • Event loop

    • memoization

    • throttling/debouncing, difference

    • Modules, AMD - CommonJS - ES2015+ difference

    • Typescript

    • Describe redux flow and main parts

  • TS

  • Angular

    • Describe overall exp w/ Angular

    • Capabilities, Pros & Cons

    • What is app main building element, components

    • Component vs Module - difference?

    • Services

    • What is scope?

    • Routing

    • pipes

    • RxJs

  • Tasks:

    • f(birthDate) => age; Is it pure?

    • example of inheritance (Shape, Animal, Car)

    • replace digits in a string

    • revert order of symbols in a string

    • check if a string is palindrome

    • fn gets 'options' arg and overwrites default options

    • example of xhr request wrapped in promise or async

    • tree search

    • sum fn with any number of arguments

    • AlarmClock class, run subscriptions every n seconds

    • fn, enter number n, print multiplications of 1..n on 1..n

    • Cascade function

    • Query string from object

    • Linked List in js (with add, remove, insert)

  • General dev themes

    • Progressive enhancment

    • Patterns: composition, factory, decorator, singleton, pub/sub

    • Unit tests

    • HTTP: Types of requests, response codes, headers, cookies, CORS

    • REST

    • Optimization: CDN, # of requests, load order, lazy load, cache, gzip, chunks

    • Code Quality: CR, comments, linters, naming and formatting, conventions and style guides

    • Dev process: Git, Agile

    • Do you know/look into some adjacent technologies

  • Personal traits

    • How do you keep up with the trends? Blogs, books?

    • The most interesting thing in FE currently?

    • Failed deadline - who is to blame?

    • Are you ready to work on unpleasant tasks (like doing markup or manual testing)

Last updated