Andrew Kordampalos
← Writing5 min read

Hiring Engineers 2.0: Is bubble sort still accurate in the age of AI and Copilots?

Originally posted on Medium on

Given the recent layoffs in the tech industry, many senior and experienced engineers are back on the market, ready to prove themselves and join new teams. The scene looks different though; AI and automated systems are everywhere. But how much has the hiring/interview process changed throughout the years?

Another sorting challenge.

Many tech giants, as part of their lengthy interview process, ask experienced engineers to prove their engineering knowledge. Regardless of how much high-quality code they’ve written, or how many successful products they’ve already worked on, they are required to code in real time with a potential colleague, demonstrating how to sort a set of data efficiently or explain what a closure is. It’s akin to asking an English professor to prove their command of English.

Most of the challenges in which they’re asked to participate are not reflective of the everyday challenges they would encounter in order to build the next big thing or to coexist harmoniously with the rest of the engineering team. This process can make the candidate feel weary, as it is not interactive, lacks thoughtfulness, and doesn’t promote critical thinking.

The age of automation

A proficient engineer with a classical academic background will likely ace that challenge. They’ve probably written a good sorting function many times in the past. However guess what; the best engineer currently co-existing with us and it’s called ChatGPT/Copilot. All you need to do is describe what you want and with a press of a key, and it will generate the most efficient version of a sorting function suitable for your use case.

As an engineering manager or engineer who conducts interviews, your actual goal is to identify candidates that go beyond just good coding. You should find the thinkers, those who stimulate debate about whether to use one approach or another. You want to discover the talents that ask the right questions and can see the big picture. At the same time, you need to find experts in the field for which you are hiring, and ask them about the technologies and services they would utilize in the position they are applying for. This will help you understand who is the right candidate and what you are hiring for, while simultaneously making the candidate more excited about the role. Give them a taste of what it’s like to work for your company, and you won’t regret it.

Let’s change that

Firstly to change that, you need to focus on your goal during the interview.

Set a scenario

Before diving into questions, it's beneficial to establish a contextual scenario for your interview. This allows the engineer to immerse themselves in a situation relevant to their potential role. Here are a few examples:

  • We are about to build a new language processing tool using AI that helps you improve the quality of your language and reducing your mistakes.
  • We are creating an internal tool of UI components that will enable us to build faster and more efficiently. Picture yourself being part of this project.
  • You’re a part of a media team with the primary objective of improving the quality of our audio and video streams.

These examples, or any other that fits your company’s needs, can provide the candidates a sense of the real-world scenarios they might encounter, allowing them to demonstrate how they would apply their skills and knowledge in such contexts.

Ask the right questions

Rather than spending a large portion of the interview time on basic language concepts such as read, print, equality, and booleans, it would be more beneficial to dive directly into the specific topics and challenges related to the role.

EXAMPLE I Suppose you’re hiring an engineer to work on a new AI tool. The questions you pose should be tailored to this scenario to assess their domain expertise. Here are some examples:

  • Which AI engine or model would you choose for this project and why?
  • Why wouldn’t you opt for alternative engines or models?
  • How would you handle potential downtime or delays from our AI service provider?
  • Given context A, can you explain why model B might not be suitable?
  • What strategies would you implement to cache data, enhancing the user experience by increasing speed?

These questions, and any others you might think of, should lean towards passive coding or conceptual understanding, rather than active coding. The idea is to evaluate the candidate’s knowledge depth, problem-solving skills, and decision-making process.

EXAMPLE II Imagine you’re hiring a UI engineer who is tasked with leading the development of an internal UI tool. Here are some potential interview questions and discussion points:

  • Could you discuss the potential benefits and drawbacks of creating an in-house tool versus utilizing an external one?
  • What technologies or libraries would you consider for this project, and why?
  • Given this broken interface, can you identify the issues and suggest how you would fix/improve them?
  • Would you choose the approach A that is widely supported and costs more developing time or an approach B that is cutting edge and less adopted, but the developing is much shorter and why?
  • How would you plan on educating your colleagues on how to effectively use this tool?

Anything else related to UI engineering and not engineering in general…

Let them Google

Let’s face it, the process can be stressful, and even the most skilled candidates may not remember the precise syntax or usage of a certain piece of code, and Google can be a valuable ally in an interview. Allowing the engineer to Google and search for relevant information during the interview can be beneficial. Of course, this should happen under your watchful eye. Allowing them to Google the answer can help you understand their critical thinking abilities and their search strategies. But remember, we’re not aiming for a free-for-all here. Keep the essence of the challenge alive. It’s all about striking that perfect balance between evaluating knowledge and understanding how they approach a problem.

Conclusion: Discover the next problem solvers

In this rapidly evolving digital landscape, we must ensure that our hiring practices evolve alongside the tools we use. By moving away from the rigid, formulaic interview process that dominated the past and embracing a more flexible, problem solving approach, we can discover the next thinkers and problem solvers.

The objective is not to eliminate the technical aspect from our interviews entirely but to make it more relevant, more engaging, and a better reflection of the actual work engineers will perform. It is time to place higher emphasis on the candidate’s problem-solving skills, their adaptability, and their potential to grow, rather than their ability to recall and implement classic algorithms on demand.

Moreover, providing candidates with the opportunity to showcase their expertise in a more realistic, job-centric context is not only beneficial for the employer, but also enriching for the potential employee. It creates an interactive environment that enables a deeper understanding of their potential role and challenges they may face, making the hiring process more transparent and the company more attractive to top talent.

By implementing these changes, we are not just hiring engineers. We are engaging problem-solvers, critical thinkers, and innovators. We are not merely adapting to the age of AI and Copilots; we are shaping our future, one hire at a time.

Let me know your thoughts and what hiring process are you following or do you like?

Twitter: @ckor

Enjoyed this? Get the next one by email.

No spam. Unsubscribe anytime.

Andrew KordampalosAI Growth at Zapier · New York