Discussion ideas when interviewing Elixir developers

Interviewing and hiring developers is hard. Software engineering is not only about the technical stuff but also about communication and collaboration. Yet many companies structure their technical interviews like an exam:
- "What types of variables are available in Elixir?",
- "Explain immutable data structures."
- etc...

We believe contextual discussions give a way better understanding of one's experience and capabilities. This post offers some ideas for technical talks you can have with your Elixir developer candidates.

Here are 5 topics you can use during your next interview:

What do you like and dislike about Elixir compared to another language you are familiar with?

This discussion will allow your candidate to elaborate on their particular understanding of Elixir and how they compare it to another language. Having them talk about the pros and cons (in their mind) of Elixir will give you a good understanding of their depth of knowledge and also what other tech they have a deep understanding of.

What is a complex issue that you’ve managed to resolve using Elixir’s concurrency capabilities?

This will shed light on the candidate's ability to leverage Elixir's concurrency features (that are essentially one of Elixir's most valuable aspect), to effectively tackle problems that demand parallelism and efficient resource utilization. Moreover, this question will allow the candidate to share a real-world problem they've worked on and for you to grasp the level of complexity they've dealt with.

Have you created some custom macros that you believe would find applications in other Elixir projects?

This topic could reveal the candidate's ability to abstract complexity into reusable macros, their grasp of metaprogramming, and their awareness of the need for code organization. The discussion could also give you valuable insights into their previous team's programming culture.

How would you handle the deployment of a fresh Elixir project?

Great engineers are not only proficient with just one thing but have a very good understanding around the main subject. Discussing deployment strategies of Elixir-based systems could provide valuable insight into the candidate's understanding of how software runs beyond their development machine and their overall experience with production systems.

What Elixir library have you used recently that you find helpful and what was the problem you solved?

Discussing the candidate's practical experience with Elixir libraries and real-world problems will give you insights into their ability to evaluate tooling, when it's a good idea to pick a library or do your own implementation and what level of complexity have they dealt with.

Hopefully, these topic ideas will make your next Elixir interview easier and allow you to have more meaningful discussions with your candidates. If you struggle to fill your Elixir positions and have an urging matter to deal with, HONE offers dedicated engineering and can help you move your project ahead. Learn more: honesw.com/elixir

Struggle with Elixir?

Get help from our Elixir engineering team