Imagine you have unlimited resources and need to create an interface with a form from scratch as part of a large application. What stack and architecture would you choose?
Frontend
How did you understand that the product was working poorly? How did you collect error information, and how did you handle user requests?
Modification of the safe task: instead of the final position, count how many times the hand passes through zero (crossing the boundary 99→0 or 0→99).
How does React compare two trees (current and work in progress)? What algorithm is used?
TypeScript task: describe a user type with fields firstName, lastName, optional middleName, and a flag indicating the presence of a middleName. Write a function to format the full name. Describe a phone type that always starts with +7. Convert the type with lowercase keys to a type with uppercase keys without refactoring, using TypeScript features.
Tell about the most critical bugs in the last year or two. What happened and how were they fixed?
[name] tell us about projects at [organization]. How was the number of users measured, who were they, and how was their satisfaction with the products measured?
What was the size of the team? How many frontend developers and other specialists?
How did you measure that Formik with Context API is slowing down? How did you realize it was time to change the approach?
Describe what happens when you press a button in a React component with a counter: how useState works, how React understands which part of the DOM to update?
A task about a safe: there is a round drum with values from 0 to 99, and the arrow initially points at 50. Positive numbers rotate clockwise, negative numbers rotate counterclockwise. Given an input array of numbers, determine the final position of the arrow after all operations.
Why does React need a virtual DOM tree? Why can't the real DOM be changed directly? What are the advantages and disadvantages of different approaches?
Tell us about the technology stack used in the projects. For example, what UI kits were used?
Is asynchronous necessary in JavaScript? What would happen if there was no asynchrony? How does the Event Loop work?
Looking back, which architectural decisions were successful, and which were not? What do you regret?