Changing how we think and prepare for technical interviews.
This is a two-part blog series which I wish to have a discussion on how we approach technical interviews.
In Part I, I’ll touch on why I think this is necessary and relevant and in Part II I’ll speak more specifically about the concept of deliberate practice and give some concrete examples of applying it to the technical interview.
The Dreaded Technical Interview
If you’re reading this, then you’re most likely going through the grind of preparing for technical interviews (software engineers, data scientists, etc).
By now you should know that tech interviews are not like regular ‘old school’ interviews — we can’t just woo the hiring manager with our charm and talk out of our ass — we actually have to perform!
While these jobs are in high demand, the rejection rate for applicants is high, and that’s even if you can get past the initial screening steps to get to the on-site interview.
The thing is, if you can make it to an on-site interview, that means the company actually WANTS to hire you — you now just have to make their decision justified. So if the hiring managers want you to succeed, how come so many candidates fail the final on-site interview round?
I believe that a lot of people who get to on-sites actually do know their stuff and would probably be great employees¹, they just aren’t prepared for the performance that is the on-site interview (that’s the second time I’ve used that word now…).
What’s another industry who’s hiring process requires multiple pre-screenings and a strenuous ‘on-site’ performance?
More specifically, the professional orchestral music industry.
The main difference in the hiring process between tech companies and orchestras is that orchestral positions are significantly more competitive and often have tens of extremely talented and qualified instrumentalists fighting for one position in the orchestra.
In tech, there are so many positions up for grabs and hiring managers desperately want them filled! They don’t waste time by offering on-site interviews to people who aren’t qualified or tick the minimum boxes — so if you get an on-site, they now just want to see how you perform ‘on the job’.
This is a processes also known as auditioning.
I think tech candidates need to start thinking about technical on-sites as auditions rather than interviews.
With this in mind, I’m going to share some practice principles that professional musicians use to prepare for their auditions and performances and I believe we could² approach our technical auditions with the same spirit.
The Current Approach
One thing that makes studying for these interviews particularly tough, is that there are so 👏🏻 many 👏🏻 topics 👏🏻 to cover 👏🏻. It can be overwhelming, to say the least.
This issue has been identified and addressed to some degree with excellent resources like LeetCode, HackerRank, Interview Query and the many, many other online coding sites and books. This is great, and really helps address the ‘what’ to study portion. However, how do you know your study plan is effective and will actually get the results you want?
Preparing for these interviews is more than just being ‘good at your job’. I’ve seen seasoned professionals (who really are great at what they do) get rejected after on-site interviews.
The tech interview is a whole game of its own, requiring its own skillset different from the job itself.
I realised the need for a more structured study approach to these interviews when I saw the plethora of tech YouTubers and bloggers sharing their tech interview experiences. The biggest take-away I heard over and over again was
‘It’s hard, you’ll get about 20 rejections before you get a job offer, but just keep practicing.’
That just simply didn’t sit right with me.
If you’re getting rejection after rejection³, that means you’re doing the same thing over and over again expecting a different result (i.e. the definition of insanity).
I noticed the advice from a lot of these ‘tech gurus’ was
‘Just do as many problems as possible, just do them all, and do really hard ones and if you keep getting stuff wrong then just do easy ones so that you keep your confidence up, but just keep doing new problems every day!!! You’ll eventually get it! Have faith!’
And then you have the ones who just try to overwhelm you with their incredible intelligence (vomit) and make everything seem 100 times more complicated than it actually is just to make themselves look smarter…
All-in-all, I realised there was no structured advice or suggestions as to how to tackle technical interview preparation other than ‘just practice’.
Preparing for the Technical Audition
Before becoming a data scientist, I had a successful career as a professional pianist and music educator. In the professional music world, there is an intense focus on mastery. No one wants to just be ‘good’, they want to obtain mastery of their instrument. Thus, musicians spend a huge amount of time refining their practice habits to be as efficient as possible to achieve expertise in their field.
During my music career, I became fascinated with pedagogy and understanding how experts become experts. There is a huge amount of literature on this, but I will not bore you with the details here!
The study plans I create are designed to implement a process called ‘deliberate practice’. It’s a technique I learned over my music career and imposed in my own practice as well as my students’ practice routines.
The man who formalised this area of study is Dr Anders Ericsson⁴, and he details most of his work in his book Peak (which is one of my favourite books — highly recommend).
But It’s Just an Interview, It Can’t be that Serious?
I want to point out that this whole idea is based on ‘mastery’ and becoming an expert at something. This is usually applied to professions such as professional athletes, musicians, fighter-pilots, chess players etc. who are wanting to excel and become masters in their respective fields.
But, this can actually apply to any context you want to get better at — you can apply these principles to becoming an expert at making the perfect cup of coffee, folding your clothes, picking your nose…
In this context, our objective is becoming an expert at the technical interview. However, by default, you will also excel at your job as a whole, just by the nature of the process.
In Part II of this blog series, I’ll dive deep into the specifics of deliberate practice and some ideas of how to structure a study plan for the technical audition.
¹Of course there are always exceptions to this — one main exception being that not every candidate is a good cultural fit, which a lot of companies value very highly. Let me also add though that you can apply deliberate practice to prepare for your culture fit interview as well, but I do believe that this should be backed by genuine motivation to want to work for the company and belief in the company’s values.
²And perhaps should…
³I am making the assumption here that you are otherwise qualified for the job. I’m not talking about being rejected for a job where you don’t have the educational or experience minimum required.
⁴You might be familiar with the ‘10,000 hour rule’, made famous by Malcolm Gladwell. Well, Andres Ericsson was actually the one who produced the research on the magical 10,000 hours to expertise, but Gladwell made money off it by turning it into a buzz phrase and failed to acknowledge the importance of Ericsson’s findings. Ericsson stresses the fact that mastery or expertise is achieved after 10,000 hours of deliberate practice in a given field. This cannot be stressed enough. In fact, Ericsson calls out Gladwell’s conclusions of his work “… a popularised but simplistic view of our work … which suggests that anyone who has accumulated a sufficient number of hours of practice in a given domain will automatically become an expert and a champion.”
Pianist turned Data Scientist | Active real estate investor | Co-Founder of Data-Birds.com
See more from Leana: