Latest Posts

Front-end and Back-end: The Art of Hiring Developers

By
June 21, 2017

We’ve shared insights into how online programming tests can help provide a great candidate experience and how teams of different sizes leverage coding tests in their process. At this point, we realize we sound like a broken record about 4 million assessments, so we’ll stop after this post! But we have some final thoughts around hiring two of the most sought after technical roles: front-end developer and back-end developer.

Front-end Developers

Front-end developers create user experiences and interactive interfaces for your end users. Because they work at the intersection of humans and computers, front-end developers are expected to understand both user perspectives and technical factors. For this reason, it can be difficult to find good candidates that not only grasp both worlds, but can meld them together to produce seamless, intuitive user experiences. 

Hiring Challenges:

Highly talented front-end developers are in huge demand, and can therefore be picky about the roles they take and the companies they join. Junior front-end candidates are choosy too because they often look to join an established team where they can find great coaching. For both, make sure you keep them engaged so they don’t drop out of your process. But you’ll also need to be picky about who you hire as well. The work front-end developers do touches many parts of the product and user experience, so they collaborate with a lot of teams and consequently, have many stakeholder perspectives to take into consideration. Hire a front-end developer who plays nice with others.

Often front-end developers don’t have a formal computer science background, so they may not possess comprehensive foundational programming skills. Instead, they’ll have experience with specific tools through learning by example and trial by error. While often they’ve mastered their favorite languages, they might need to learn a lot on the job to adapt to a different stack. Few front-end developers have the know-how to create automated tests, a skill crucial for quick development.

Things to look for during screening:

  • Fundamental understanding of programming principles, frameworks, and approaches
  • Familiarity with new Javascript mechanisms
  • Knowledge of closures, async/await, generators
  • Stack Overflow profile, GitHub profile, personal blog, community involvement

Screening tips & tricks:

Things to look for during interviews:

  • User-orientation
  • Ability to communicate with technical and non-technical teammates
  • Acceptance of critical feedback
  • Knowledge of collaboration tools, like issue trackers, Trello, and Jira

Interview tips & tricks:

  • Ask them to create a small app from scratch
  • Discuss open source projects
  • If they didn’t write code as expected, ask them how they would write it if they had more time
  • Gauge how they respond to feedback (again)
  • See what their day-to-day is like and get into the weeds with their workflow and work style

Summary:

In screening, your priority is to find out which tools a front-end developer is comfortable using, and whether they have the aptitude and willingness to learn new languages in your stack. Learn what kind of online presence they’ve created over the years, and take a close look at their projects outside of workIf you plan to bring front-end candidates onsite, have them build a small app and run through it in person. Always examine a candidate's ability to translate technical concepts into fluid, beautiful user experiences.

Using online programing tests to hire front-end and back-end developers.png

Back-end Developers

Back-end developers construct and maintain the servers, applications, and databases that enable the platform with which users interact. Because they need to translate business needs into technological requirements, back-end developers are often more technical by nature and have strong backgrounds in programming.

Hiring Challenges:

Individuals who pursue a career in back-end development are usually passionate about coding and building things. These people become developers because they enjoy solving problems, creating code, and building systems. While front-end developers might be considered user-centric, back-end developers are often more code-centric. When hiring programmers, it’s important to gauge whether they are interested in an opportunity to work on your specific product, and towards your company mission, or if they view it as just another coding gig.

Back-end developers need to have immense knowledge of data structures and keen attention to detail to ensure things run well behind the scenes. There are a lot more back-end languages than front-end languages, which can add complexity in finding a hire that fits with your stack. They should be armed with real-life exposure to popular bugs and data structures to be effective in the trenches.

Things to look for during screening:

  • Knowledge of algorithms and data structures
  • Basic programming skills and understanding of code complexity
  • Ability to learn quickly and think a problem through to find the optimal solution
  • Great bug-fixing and refactoring skills 

Screening tips & tricks:

  • Test programming skills online with simple tasks
  • For senior roles, use a variety of difficult tasks in your online coding tests
  • Give candidates a logically broken piece of code and have them fix it
  • Codility bug-fixing and optimizing tasks
  • Gauge aptitude to learn other tools and technology quickly

Things to look for during interviews:

  • Test for ability to create web apps or API’s
  • Basic knowledge of how HTTP and server communication works
  • Automated testing skills
  • While oftentimes not the case, for back-end roles that do collaborate with nontechnical people, assess communication skills and how they explain technical concepts

Interview tips & tricks:

  • See how they respond to criticism and how they support their perspective
  • Suggest some code that deviates from widely accepted code styles and see whether they recognize that
  • Test for obvious bugs and popular problems like N+1 problems
  • Share your technical workflows and ask for recommendations to improve them

Summary:

In screening, dig into how they approach problems and their ability to write code that not only works, but also scales well. Use Codility’s programming online tests to check for knowledge of algorithms, data structures, bug-fixing, and refactoring. When back-end developer candidates come onsite, dive even deeper into their understanding of complex code, web apps, API’s, server communication, and automated testing. It’s great if they are technically gifted, but use the in person time to also find out if their interest is limited to 0’s and 1’s, or if they want to get behind your product and mission.

Last Thoughts

Skilled front-end and back-end developers can be game-changers for your product and your company’s future, so make sure you hire the right ones. Each role has its nuances, whether it’s balancing usability and technicalities on the front-end or making sure everything’s connected and running smoothly on the back-end. From helping thousands of clients build their technical teams, we’ve seen how coding tests can help identify and interview talented developers.

What insights will we gain from sending millions more coding assignments and working with thousands more businesses?

Want to try Codility for your team? Start a free 7 day trial of our tech recruiting software now: 

Start a Free Trial