My very first interview was a mock one at a university job fair. It was a risk-free way to test my knowledge with a professional. I had clear gaps, and I made trivial mistakes, but he was very kind about it. He was an alumni, and he was there to help students like me. He recommended a fun book about Python and introduced me to the company where I would end up spending the next ten years.
He may not even know what impact he had on me, but soon after becoming a full-time developer, I got myself involved in recruitment. I wanted to make the first interview experience good and memorable for as many students as I could. I imagine, for many this is a scary journey to begin, but here I am to help you make one step, step one.
In this series, I will introduce you to a 5+1 step approach, that I recommend to most of my students who are preparing for a coding interview.
- Start with the things you know [#0002 — The Things They Showed You]
- Solidify your understanding of the problem [#0003 — The Things They Hid From You]
- Use your intuition [#0004 — Child’s Play]
- Just write it down
- Don’t stop, analyse
- Be flexible
You may ask, why do I start with coding first? While there is a lot (way more, in fact) to talk about regarding theoretical questions, those interviews are usually similar to a university oral exam, so they should be at least somewhat familiar. Coding, however, feels foreign and intimidating to many.
Sadly, I can’t promise a one-size-fits-all solution, but I can give you a solid foundation and some insight into what an interviewer may be looking for. To what I’m looking for in an entry level candidate. Keep in mind that every company has a different approach to interviewing, and even within a company, interviewers may differ. One thing however is common: they all appreciate if a candidate puts in the effort and comes prepared. And that’s what you’re about to do now.
Without further ado, let’s start with a simple coding task.
Problem Statement:
Given two words, decide if they are anagrams.
An anagram is a word or phrase formed by rearranging the letters of another,
such as THING and NIGHT.
⚡ Your Turn: Try solving the problem on your own, and if you can, measure how much time did it take.
When (you assume) you’re ready, continue with #0002 — The Things They Showed You.