I think being a developer is one of the coolest jobs you can have. Think about it:
- We get to challenge the creative and logically thinking part of our brain on a daily basis
- We get to solve problems for real people, and to actually make a difference for someone else
- We get paid a significant amount of money to do those things
But I don't need to tell you - if you're reading this, you're likely either already working as a developer, or you're trying to break into the industry and land your first coding job.
Whatever it might be, one thing is for certain: To reap the benefits of working as a developer, you first must pass an often tedious application / interviewing process that is not always representative of real development work.
Unfortunately, that's how it goes. But there's a few simple tactics you can deploy to greatly increase your chances of getting hired by nailing your interviews.
In my experience, the hiring process tends to go like this:
- You submit a written application
- The most interesting candidates get through to the first interview. This is often an informal / personal conversation about you, your goals, and how you'd fit in with the company culture.
- If there's a match, you move on to the next phase. This can either be a technical whiteboarding interview, or a take-home assignment that you prepare beforehand, and then discuss in an interview.
- Depending on the company size and process, there could be multiple rounds of these interviews. I know some large companies (FAANG) can have 5+ rounds (which is completely bananas if you ask me). But most startups, agencies and non-tech companies will have 2-3 interviews in total.
- If you pass all the stages, you receive a job offer.
That's why it's absolutely key that you nail the informal and technical interviews. And why I've compiled a list of tips to help you do just that:
- For your informal interview, come prepared. Do some research beforehand, like checking the company website and reading their case studies or learning about the organisation. During the interview, make sure you present yourself well when they ask to hear more about you. Be honest about your own abilities. Ask questions to learn more about the role / company.
- For the technical interview, figure out the format they use. If it's a whiteboarding situation, practice algorithm problems at home. Make a plan before you start. When working through a problem, share your thought process. Make sure you understand the assignment, and ask questions if you don't. Don't worry about writing perfect syntax.
- If the technical interview is based on a take-home assignment, read it carefully. Take note of what they ask you to focus on. If the assignment is too broad and you can't make it all in time, decide if you're going to complete every task quickly, or do a few tasks really well - and be prepared to defend this decision in the interview. Spend time writing clean code, as code quality is very important for this. Throw in some fun details like animations or creative solutions.
Personally I much prefer the take-home assignments, because they provide a more accurate depiction of your skills and what you'll be doing day-to-day. Plus, when discussing it in the interview, you know exactly what's going on since you just made the project. Unfortunately not all companies use them, but with a bit of practice, you can easily work through whiteboarding interviews too.
Just remember that the interviews are a necessary step in any hiring process. Spend some time learning how to interview well, and you'll quickly find yourself with multiple job offers to choose from.