10 questions I ask each senior Angular candiate
Oct 1, 2017 - 4 min read
This article war originally posted on linkedinView Original
That all comes to set of questions I use always to evaluate possible candidates for Angular2/4 related role. It proved to be powerful as: I was able to reject people who wouldn't be able to pick up the product; I found amazing candidates who had very little commercial experience, but almost from day 1 were fully productive team members in complex projects.
- What is dependency injection and/or inversion of control and how it's used by Angular Most of "senior" candidates thought I ask about
- Events, callbacks, promises and observables - how they differ, what are each pros/cons? It's literally impossible to work in Angular and not use at least 2 of them
- From array [0, 1, 2, ... j] how to get in one operation array of first 4 elements - [0, 1, 2, 3]? 90% candidates wanted to use jQuery or
forloop. Understanding array interface is required to be able to work with reactive model layer in Angular - Observables; this question was followed by asking about
- How to present an image using just CSS and HTML? it's so simple that most of the candidates failed to mention more than 2
- What's the difference between setTimeout and setInterval and usage of which can cause performance problems? This question is a great opening to the discussion about concurrency, race conditions, but also scope and closures as most of the developers don't know the scope of setTimeout callbacks.
- What features of functions are not available in arrow functions? It's scary that so many people started using ES6 features, without understanding consequences. Biggest here is the difference in scope behaviour that can cause serious issues.
- If API is in domain google.com and frontend is in domain facebook.com. What has to be exposed by API server so frontend can communicate with it? This question is my ultimate filter also for backend developers. It shows if a person has really worked on projects using 3rd party or distributed APIs.
- What CSS3 features help with building responsive websites? It's not a must-have but allows to see, if a person who would work on frontend part of your project (which may be a mobile-first single-page application) understands responsive design or just uses Bootstrap of Foundation.
- In Angular2 how bind in the template ngModel of input to a Subject? It's cherry on the cake question and shows that person has worked with Angular2/4 and tried to use the power of reactive models to improve the app.
- What would have to happen, to make you leave the company? That is last, but not least important question. I just want to know the motivation behind the person, so I know I would choose a candidate who would hand with me for longer.
Those questions never failed me and helped to build a strong team. I didn't leave the answers as I hope you'd dig to find them. Also, because for some there is no one best answer.
Hope it brought some light to the specifics and helped you understand how unique Angular developers could be.