Frontend
Explain how ChangeDetectionStrategy.OnPush works and how it differs from the Default strategy.
Implement your own memoization (caching) function that caches the result of a function when called repeatedly with the same arguments, including handling primitives and undefined, as well as the ability to clear the cache (clearCache).
We cannot tag and version through CI/CD. The client may be one version, the backend another. What can be done in these conditions besides error monitoring through Sentry?
Bonus task: given a code with a function MySync that takes a parameter start (default 0), logs it to the console, uses a Promise and recursively calls itself inside resolve, plus a separate setTimeout. Explain what will happen here and what will be logged to the console.
Describe a complex trade-off you have faced.
What was your approach to writing CSS? Are you familiar with the CSS-in-JS approach?
How does the public folder differ from the assets folder?
How to modify the validator to perform case-insensitive uniqueness check, considering that the component props have access to the entire data table and the row id being edited?
You mentioned dynamic forms. What did you use for these forms and what is meant by dynamic forms?
/** * Implement the sumPromises function that takes * promises as arguments and returns * the sum of their results. * * The function can accept any number of arguments. * You can use any Promise API. */ // Code here // Example usage const promise1 = Promise.resolve(1); const promise2 = Promise.resolve(2); sumPromises(promise1, promise2).then(console.log); // 3
Tell us about using NX in a project and why it was chosen.
Implement the Array.prototype.groupBy method, which returns a structured version of an array of objects, where each key is the result of the passed function call, and the value is an array of elements corresponding to this key.
Tell us about your ProHR project: who was involved, and what was the most difficult part?
What happens in a computer when a person enters a URL and lands on a page?
Что такое ref, reactive, computed и watch?
Why is it necessary to bind methods in React class components when working with event handlers?
Why was IndexedDB chosen for storing drafts and scenario states instead of localStorage or sessionStorage?
What does the Array.prototype.slice method do? How is it used to copy an array?
What is the Event Loop and how does it work in JavaScript?
How do you monitor code quality? Linters, pre-commit hooks, or something else?