One of the opportunities I get for being in IT headhunting is speaking with veteran developers and leaders in the field of IT. Furthermore, I have become close friends with many of these leaders as they allow me to pick their brains whenever we meet. During my last meeting with one of them, I got the opportunity to discuss how developers can get ready for technical interviews.
Let's face it, a technical interview isn't the same as other job interviews. Because the IT world is highly competitive and hiring managers are always looking to get the best talent, technical interviews often involve a rigorous process designed to test a developer's coding competence and ability to solve problems. So, trust me when I say it can be a bit intimidating, especially if you don't know what to expect.
That said, if you are a newbie, perhaps, fresh out of college and looking to kick start your career, it's important that you are well-prepared before you head to a technical interview. Luckily, this article contains a comprehensive guide to train you. Let's get you ready so that you can ace that next technical interview and land that job.
What Is A Technical Interview?
Tech jobs are unlike other jobs. Basically, it's a test of competence. Yes, it's not totally impossible to learn on the job even if you know next to nothing at the point of hiring. But the truth is advertised roles are often too competitive that more competent candidates will likely have an edge over those with significantly lesser competence.
Besides, the hiring managers in the tech world usually prefer candidates that possess some hard and soft skills, even if they are fresh out of college. Therefore, technical interviews are an organized process that allows tech professionals to prove that they have the required skills for a job.
Of course, it's more than just knowing how to code. What's more, it's not usually about tricking with brain teasers, riddles, or impossible questions. Usually, it's about testing if you can handle real-job problems that you'll likely face if you get hired.
Technical interviews: What to expect.
While companies will have slightly different modus operandi, here are the likely trend or scenarios you might be facing.
- The technical phone screen stage:
It’s not uncommon for hiring tech companies to initially walk you through a telephone conversation before meeting you in person. This stage is to meant to test measure your enthusiasm, confidence, and communication skills. Try not to get carried away, and keep your answers within the scope of the job you applied for so that you sound more like you want the position and just any available job.
- The remote coding stage:
Whether you are an offshore developer or an in-house tech person, This is one of the stages that are common with tech companies, especially larger corporations. Small startups may not have this stage, so you may go from technical phone interviews to the main in-person stage. The remote coding stage usually involves a preliminary test of your hard skills, usually your knowledge of coding/programming languages.
This stage could be in the form of a coding assignment, which you may have access to via log-in details. What's more, the process is usually timed, meaning you are expected to complete the assignment within a time frame. While you may not be monitored via video, it is better, to be honest. If you use third-party help to ace your remote coding assignment, chances are you may ask questions about the test when you meet your interviewer in person.
You may be exposed if you cannot answer why you chose to answer a question the way you did. Basically, the interviewer is interested in your coding skills, problem-solving ability, and collaboration skills. During this stage, the interviewer will also be checking if you’ll test your code as your write, which is one of the basics expected from a coder.
- Onsite interview or whiteboard challenge:
You can call this the "real tech interview" as that's what most people like to tag it. Usually, you will meet an interviewer in person and you will likely be tested on both your soft and hard skills. Companies are different, so while they may have onsite computers to test your skills, it's not a bad idea to go there with yours.
This stage can last for as much as 4 hours and could even the entire day. If you are being tested by a startup, chances are your interviewer is a tech person, perhaps the head of your department, or another senior developer or software engineer.
On the other hand, in larger tech firms, your interviewer may be a conventional HR person or a member of the company's tech team. Sometimes, you may have to go through a series of interviews with both a general HR team and a tech team.
Altogether, the onsite interview/whiteboard challenge is to test the following.
- Your knowledge of programming language and application
- Your creative thinking ability.
- Communication Skills.
- Analytical thinking skills.
- Test of handling feedback.
- Problem-solving skills.
How to dress for your tech interview.
While many tech companies allow a relaxed or casual appearance in workplaces and during interviews, the best approach is to appear smart or formal to your tech interview. The truth is, you can't go wrong with a neat shirt, tie, and jacket. If you are afraid of appearing over-dressed, you can search the company on social media and throw the question at the online HR person.
Furthermore, if you are going to appear less formal, you might want to cover your tattoos with appropriate clothes if you have them on a visible part of your body, like your arm, neck, etc.
The truth is, some interviewers don't care as body arts are becoming a norm these days. However, I always preach being on the safe side. You may be interviewed by a team of tech or HR people. It's not uncommon to find people that don't think tattoos are not ideal for workplaces.
If it comes down to selecting a candidate with equal competence, a recruiter who holds a biased view about body art in workplaces may just use that condition to edge you out.
Tips to Prepare for Technical Interview
1. Prepare for the “tell me about you” question.
Did I mention that your technical interview is all about coding or your hard skills? Both conventional HR persons and tech-savvy interviewers as this question, so it's important that you train yourself how to answer it effectively. Many hiring managers I spoke to told me some candidates often do not expect this question as they are always too focused on the technical aspect.
Since it's almost always among the first few interview question, not answering it well could throw you off balance and impair your ability to answer the next questions. To answer these questions well, refer to your soft skills, passion, and some future expectations as a developer.
2. Brush up on the fundamentals.
Most of the time, technical interviews will not require that you pour out complex or hard-to-remember concepts. Instead, you'll be tested on your ability to make things simpler. Knowing the fundamentals is what will help you through that.
For example, you may be asked how you would figure out the problem of the web page that's got performance issues. This type of question can show off how you have solved a similar challenge in the past, but you'll do well to display your knowledge of the fundamentals so that the interviewer can know you understand the rudiments and didn't just learn by copying how a problem was fixed online.
If you did not go through a formal college degree in computing, computer science, or software engineering, chances are, you may not be exposed to all the fundamentals. However, that doesn't mean you cannot learn the required ones if you are self-taught.
The reason fundamentals are important is that once you understand them, they make it easy when you want to scale up or down. You don't have to cram everything like you are going for a college exam. You just need the must-know topics like:
- Data structures
- Dynamic programming
- Hash tables
Of course, the above list is not exhaustive, so you might need other topics based on the job you applied for. Another tip that could help you narrow down the topics you need to brush up on is to go over your remote coding assignment or assessment. Don't just go over the answers, but understand the fundamental reason or significance of choosing to answer a question in a certain way.
3. Practice with your programming language.
You don't have to be overconfident. Before heading to your technical interview, you'll probably have a couple of days or more notice. Get busy with the programming languages you have learned over the years. If you have not over-blown your trumpet on your resume by claiming you are an expert in the application of a particular programming language, you shouldn't have a problem getting ready.
Another way to avoid being overconfident is to start practicing early so that you don’t have to cram. You can solve as many as you can and even put yourself under some time management test.
Test your coding skills by hand on a paper and whiteboard. Try to create a realistic look-alike or tougher condition of your tech interview. While you can’t predict the exact conditions you’ll be in, practicing under closely related conditions could boost your confidence.
4. Mock interviews or coding are not a bad idea.
When it comes to trying to create a realistic technical interview condition, one of the best approaches is to do a mock interview. You can ask a tech person that you respect or a friend to ask you a prepared question. While this tip may seem like playing around, it is proven to be effective in boosting confidence and taking the edge.
You can do a mock coding interview at sites like Pramp.com, which offers free service. This way, you’ll improve your hard skills before the real interview.
5. Have a relevant project to discuss.
It doesn't matter whether you are a fresh-out-of-college developer or have spent some years in software development, it's a good idea to have a personal project you can talk about at the technical interview. It could also be an on-the-job project, but it's not the best idea to not have anyone at all. As a fresh graduate, perhaps with little to brag about, you may have worked on a couple, of course, works in college with mini-projects by the side.
At your level, the interviewer isn't expecting too much but is also expecting a drive and enthusiasm with the little you have to show off. Furthermore, if you've been in the developing business for a while, you want to make sure the project you will be discussing at the interview is relevant to the job you applied for. You'd undoubtedly stand out than those who have something of little or no relevance to the job they are being interviewed for. That's like bringing a knife to a gunfight.
6. Establish a process to help deconstruct or make the complex question simpler.
Trust me, a technical interview can sometimes get tough as you may not get softball questions throughout the interview. Therefore, having a process to construct questions can make things easier.
For example, Instead of rushing at a question when you are not totally sure what the interviewer is asking, it's not a bad idea to rephrase the question for clarity. First, you'll avoid asking the interviewer to rephrase a question since you have technically done so yourself. Secondly, the interviewer will also know that you understand the question, and you were able to communicate for clarity when you needed to.
7. Talk through your coding.
Now, a coding question has been thrown at you. An effective way for answering your interviewer is to talk through your code. Think of it as walking your interviewer through the journey. This way, you don't just dump the solution at the person assessing you on a whiteboard, but also tell them how you arrive at the rationale behind your answer.
I hope you found this article useful. Here at Cloud Employee, we assist both developers looking for work and companies looking to hire dedicated offshore developers across many technologies. Talk to us, learn more about how Cloud Employee works, or see our Developer Pricing Guide.
Work with world leading tech businesses
We connect high-performing software engineer talent in the Philippines with some of the world’s leading and most innovative Tech companies.Submit CV