Flipping the hiring funnel from code generation to system architecture
How to restructure your technical evaluation to find engineers who think about dependencies rather than typing speed.
Summer arrived, and it was time for a dinner with former colleagues. We met up in Madrid and went to a Mexican restaurant, just to change things up from the typical ‘tapas and raciones’ plan.
Of course, we talked about work. I am not saying it is a good idea to talk about work during a dinner with friends; I am just saying it is today’s reality, and that carries a lot of meaning, such as:
What everyone is up to.
How we use AI in our jobs.
Uncertainty about where our profession is heading.
Clearly, the uncertainty point took up quite a bit of time.
Throughout the conversation, one of my friends asked:
Guys, with all this AI stuff, how do you interview people applying for a Software Engineer position?
In today’s email, I will tell you what my current approach is for interviewing candidates in the early AI Native era. Specifically:
Live coding test: yes or no?
Using AI for the technical test.
What gives me the most value in identifying a good candidate in the era of AI.
If you are a Software Engineer or Tech Lead involved in designing and running job interviews to hire Software Engineers, this email is for you.
Know someone who might be interested in this topic? Forward them the email 👇🏻
Now, let’s get down to business.
Live coding test: yes or no?
This was the first thing that came up in the conversation, and I personally have a strong opinion on it.
In my opinion, live coding tests are dead. In fact, they were already dead before the arrival of AI, at least for senior profiles.
Why?
Nowadays, coding tests do not bring enough value to invest the time of two Software Engineers during a live interview with another person, since we have machines (Claude Code, Cursor) to generate code.
👉🏼 In 2027, code is going to be much less important than it is today. Things like design patterns, software architecture (MVC, hexagonal, etc.) will take a back seat, overtaken by other aspects such as:
Code efficiency. AI code works, but is it optimal in terms of performance?
AI-optimized code. A lot of code means a lot of tokens and a lot of money spent; this is something you know perfectly well today. Therefore, the code generated by AI in 2027 must be optimal from the start, so that the cost of creating it is optimal and its subsequent modification by the AI is cost-optimal as well.
For junior profiles, I still see some value in it, but not so much to know if they understand the language syntax, but rather to understand how their mind works when programming, whether they use patterns, and what tradeoffs they evaluate.
At this point, you might be wondering:
So, do I ask the candidates to use AI live?
Using AI for the technical test
There could be an alternative to the live coding session, but one that is more AI Native: live code creation but using AI.
☝🏼 However, this variant has certain challenges that I consider a blocker today:
To program with AI, you need a paid account. Obviously, a company cannot expect candidates to pay out of pocket to spend tokens programming with AI for a live interview. In that case, how is AI usage managed?
Waiting times for the machine to do its job. From the moment the developer asks the AI for something until the result appears, time passes; dead time that can lead to awkward silences and, worse, a waste of time for both interviewers and the interviewee.
As I said at the beginning, I think these are barriers that can make an interview even more difficult.
👉🏼 Instead, I think you can ask the interviewee about how they use AI today, and their opinion on using AI for code generation.
Why?
Because it will give you clues as to:
Do they have the experience your company needs regarding AI usage?
Do they fit your company’s stance on those aspects?
So, what can give me value in a face-to-face interview?
What gives me the most value to identify a good candidate in the era of AI
Two key aspects.
1. Cultural fit
You need to make sure the candidate is a cultural fit for your company. If the person is not aligned on:
Values
Goals
Growth expectations
...
You are going to waste your time, you will fail at your goals, and the company’s reputation will suffer.
I won’t expand much more on this topic, as you can find interesting articles about it in this same newsletter.
2. System design
☝🏼 This seems key to me today.
More than ever, you need candidates to have the ability to think about:
The system.
Dependencies.
Global architecture.
Making decisions based on trade-offs.
The product to be built.
The largest part of your interview should revolve around system design.
If you are interested in learning System Design, I don’t have much about it in my newsletter, but I can recommend:
✨ Takeaways
So, what to keep in mind:
Live coding is obsolete for seniors: Spending the engineering hours of two interviewers to watch a candidate write lines of code is a poor use of resources. In the era of Claude Code and Cursor, standard code generation is a solved problem (kind of).
The problem with live AI testing: Running live coding sessions with AI introduces friction, such as managing paid tool licenses for candidates and dealing with awkward, time-wasting lag while waiting for AI outputs.
The interview sweet spot (System Design & Culture): The true signal of a great candidate in an AI-native world lies in their architectural thinking and cultural alignment. Shift your interview focus toward global architecture, dependency management, making trade-offs, and ensuring core values match your team’s vision.
Now it’s my favourite part. What are you doing in terms of hiring? What are your approaches in this early AI Native era? Looking forward to your comments!

