What other criteria can you name for a good library component?
Frontend
You started learning React, but React is more popular and has more job openings. Why did you ultimately switch to Angular?
Tell about writing unit tests: when do you think a test should fail? What exactly should a unit test check for a class tested according to the London School (with all mocked dependencies)?
Compare dependency injection through constructor parameters and through the inject function: what are the advantages and disadvantages of each approach?
Continuation of the scenario with a junior: after your comment about the lack of error handling, the junior added a catchError method to the pipe, which in case of an error places the message 'error receiving token' into the same token signal where the token itself was previously stored. Analyze this approach from the perspective of responsibility mixing - what is done wrong here and how would you explain it from the architectural principles (particularly, Single Responsibility Principle and separation of presentation and model)?
Can you list all technical solutions to this problem (except replacing the field with a signal)?
If the template does not know that the value has changed, why does adding an async pipe in the template solve the reactivity problem? How does it work under the hood?
Tell more about using async pipe and manual subscription: what exactly needs to be done for the value to be correctly displayed in the template (including working with subscription and unsubscribing via takeUntilDestroy or ngOnDestroy)?
Do you have any criteria based on practice for when inheritance is appropriate to use and when it is not?
Can you give a specific example of a library that prevented the build from passing when updating Angular (for example, to version 16)? What exactly was the problem and how did you solve it?
Your resume indicates an Angular update from version 14 to 20. Can you tell us about a problem that arose during the Angular update in a project - a practical story?
Why is inheritance needed in OOP? Provide a justification for its use, even if the task of reusing logic can be solved by other means (e.g., through DI)?
Why does the value update in the template when using a signal and calling the set method, but not when simply assigning this.token = string? Explain this at the level of change detection concept.
Are you familiar with UML class diagrams? Have you dealt with types of relationships such as association, composition, aggregation, generalization?
You said you wrote tests using a neural network. If the neural network generated tests that fail with any code change, do these tests achieve their goal? Are they useful?
If you needed to count the number of lines of code in a project, how would you approach this task? How would you formulate a query to find a solution or for a neural network?
Why did you choose web development and Angular specifically, rather than, for example, mobile development?
At your previous job, you mentioned that the frontend part was relatively small, but it was handled by 6 frontend developers. Where did the team of exactly 6 people come from, and how does it relate to the overall frontend team of the company?
Imagine a scenario: a junior developer comes to you with a task to create an Angular component with a field to display a token and a 'create token' button. When the button is pressed, a request is sent to the server, a token is received, and the junior writes this.token = the received string, but the value is not displayed and the page does not re-render. What would you advise to solve this problem and what approaches are generally available to fix it?
Tell us how you entered the development industry: how you trained, how you found your first job, considering your resume indicates a non-technical specialty.