Every veteran front-end web developer is aware of the limitations and annoyances involved with front-end technologies. AngularJS, Google’s extensible MVW framework, does an amazing job tackling these very limitations and difficulties by empowering the developer with a set of tools and an expressive, readable and easy coding environment. The official website of AngularJS claims the framework to be “super heroic,” and your next AngularJS developer should be capable of meeting the same standards. But that’s easier said than done. During my time founding and running Toptal, a marketplace for freelance developers, engineers and programmers, we’ve interviewed over 50,000 software engineers. I’ve witnessed many AngularJS interviewing challenges firsthand, and I’ve also learned some solutions.
Here is my guide on how to hire an AngularJS developer in particular — though many of these tips work for hiring other types of developers — and a few ways you can tell whether your hire is doing a good job.
Create Your Job Description
You can save yourself time by using an existing template. Most of these templates are broken into sections, including a company introduction, job description, responsibilities and necessary qualifications. Your job description should be clear and straightforward to attract the best candidates for the position and save you time down the line. (For reference, here is our own AngularJS job description template.)
A great AngularJS developer is often expected to have skills in areas beyond web browsers, such as creating sophisticated build pipelines, configuring continuous integration environments and more. Make sure you also list these requirements in your posting.
Develop a Plan of Attack
Hiring an AngularJS developer is difficult, but it becomes much easier with a well-planned process. To start, organize multiple interviews and make sure you’re filtering out poor candidates early on.
As well, AngularJS developers can become a central communication hub for your team, so make sure you’re evaluating communication skills rigorously. One way you can do this is to test whether they can explain complex technical concepts in simple ways, even to non-technical people. Even if you won’t understand the details, can they walk you through their decision-making processes and the pros and cons of their architectural choices?
Prepare Interview Questions
A candidate who is proficient in AngularJS and one who is a master are very different, but telling the two apart isn’t always easy. What I’ve found to work is compiling a pool of interview questions that test raw smarts in addition to AngularJS knowledge. Keep them as relevant to your project as possible. For instance, “Name three ways to communicate between modules of your application using core AngularJS functionality.”
However, avoid brain teasers and trivia questions. Nothing is more unappealing to great developers than interview questions that are irrelevant to the job. Don’t forget that great developers are likely to have plenty of options to choose from.
Find Good Candidates
A smart, streamlined search will always yield more successful results, regardless of what sort of developer you’re hiring. Attend developer conferences (such as ng-conf and Angular U for AngularJS developers). This allows you to have a much higher base level of confidence in your candidates.
I would also search online communities like Stack Exchange, technical blogs and GitHub for frequent contributors. A tremendous passion for the technology will pay off in a big way.
Making Sure You’ve Hired an Expert
Once you’ve hired someone, continuous evaluation is key to maintaining a healthy development team, and is critical to ensuring your Angular apps remain top-notch. Before you can evaluate, you must be familiar with AngularJS common mistakes and best practices, and you should also keep in mind the following question: If someone asked you and your developer what they worked on yesterday, what they’re working on today and what they’ll be working on tomorrow, would the answers be the same? If the answer is no, you either need to re-evaluate your hire or take another look at how you’re collaborating.
Check for Common Mistakes
AngularJS requires a deep understanding on the developer’s part, and any shortcomings here will invariably lead to serious performance issues. Common AngularJS developer mistakes are well-documented, and their workarounds are well-known among the AngularJS community. Committing these mistakes is inexcusable for any top AngularJS programmer. Set up periodic team code reviews to ensure that no team member is making these common errors.
Since AngularJS typically has an impact on user experience, don’t take UX lightly. Make sure your developer doesn’t either. Get user feedback along the way, even if it’s just from a small group of close friends or colleagues.
Have Them Follow Best Practices
Since the unveiling of AngularJS, a large number of best practices and tips have been documented and discussed. (Here‘s a great example.) Consequently, standards have emerged that help maintain software quality. Ask your hires how they would implement certain features and what the performance and testability effects would be. Great developers should be well-versed in potential solutions. I would also ask them how the team should be organized and how the tasks should be divided. This is a great way to brainstorm approaches and lets your team showcase their expertise.
Building small web apps with AngularJS is relatively easy, but once you start getting into maintainability, extensibility, testability and more, things start getting trickier. Make sure your AngularJS developer is an outstanding problem solver with communication skills who is capable of taking your applications to the next level. What I’ve found is that a well-planned hiring process is what what allows you to find and keep a master AngularJS developer.
Breanden is the co-founder and COO of Toptal, and has been a founder, CTO, developer, designer and consultant for many companies.
BusinessCollective, launched in partnership with Citi, is a virtual mentorship program powered by North America’s most ambitious young thought leaders, entrepreneurs, executives and small business owners.