

Discover more from The Outsider Dev
It was Monday morning. I woke up early, too nervous to stay in bed. I got my coffee mug and a bottle of water side by side. I double-checked my internet connection, video, and audio. I moved some things in the background out of sight to make it look less cluttered. After reading a little more about the senior software engineer role, I checked my interviewerâs LinkedIn profile again.
I joined the call precisely at 9:30. The interviewer was a senior engineer with a respectful beard - the kind of guy who always seem to know what theyâre doing. He was friendly and calm. After some chit-chat about the guitar in my background, he sent me a link to an online editor and started talking about the technical challenge.
The challenge had three parts, gradually increasing in complexity. The first one was pretty simple: revert a string.
I asked questions, discussed the requirements, wrote some comments (some input examples and the expected results), and got ready to start.
Then it happened.
Blank.
Null.
Undefined.
It was like I had never typed a single line of code in my entire life. I didnât know where to start. I searched my mind for any common code expressions to handle strings.
Every JavaScript keyword was unreachable in my brain.
I asked if I could do the challenge in Ruby despite having checked âAdvanced level in JavaScriptâ in the job application. âRuby is just plain English,â I thought.
It turned out I couldnât speak English anymore either. There wasnât a single word available. My hands were sweating, and the silence was getting too uncomfortable. My mind was wandering away, and I caught myself thinking about how I couldnât actually think.
The interviewer noticed something was wrong. He reassured me it was okay to be nervous. âDo you want to drink some water?â I surely did. I took a deep breath and started over.
I couldnât stop thinking about how terribly I was failing at the interview. About the funny story that the interviewer would tell his coworkers about our call. About how I wasnât able to solve even the first and simplest challenge, so I most definitely wouldnât be able to solve anything else.
The time dragged on for a terrifying 15-minute window, the longest of my entire career. Not a single line of working code. I wrote comments, moved strings over from one line to another, and created an empty function declaration (wisely named function revertString() {}
), and that was all.
Visibly intrigued, the interviewer suggested we end the call early and promised to give me feedback should they decide to continue with my application.
It goes without saying I didnât get an offer. Not even an email explaining why they decided not to follow up - probably for the best.
The next day, it took me 5 minutes to work out the solution. I mean literally - I sat down, started the timer as if I were being interviewed, and solved it.
The thing is - I was really interested in that position. The company held technical competency to a high standard, but my lack of confidence and fear of failing to meet the expectations produced a self-fulfilling prophecy. I was so afraid of losing the opportunity that I did precisely that.
I knew I could still write good software, solve complex problems, and learn new things quickly. That didnât change.
This humbling experience from years ago made me realize I can fail, even when I know the answer.
Itâs a complex mix of thoughts, expectations, and knowledge that defines how we perform at any given moment. Failing an interview is not indicative of oneâs true ability and potential.
As a bonus, this also challenges our perspective as interviewers.
Just because someone is having a hard time answering our question, it doesnât mean they donât know it. Thereâs so much more going on in their heads than simply crafting an answer.
Especially when talking with people whose first language is not the language youâre speaking. Native speakers might not realize thereâs yet another âtranspilerâ executing in the background of the candidateâs brain.
Coding challenges are hard enough. Going through them while speaking another language is an arduous task. Interviewing after a full day of work is exhausting. Add a timer and an expectation of a job offer, and you have the recipe for losing a great candidate.
So, please, letâs keep the human aspect in mind when discussing technical interviews. Pressure, nervousness, and a multitude of other factors can lead to poor performance, especially when the candidate is highly invested in the outcome.
Have you ever faced this situation?
If youâre a developer, donât sweat it. A technical interview is just like running your code - if it crashes, restart the server and keep coding. Every dev knows anything can be fixed after a little debugging.