Mastering the Tech Interview: Tips for Success and Avoiding Common Pitfalls
The interviews are typically aimed at assessing a candidate’s practical experience in programming and their ability to solve problems encountered in day-to-day project work. Companies want to ensure that once you are offered a job, you can contribute to their success.
Interview - What & Why:
The interviews are typically aimed at assessing a candidate’s practical experience in programming and his/her ability to solve the problems faced in day-to-day working on projects. Company wants to make sure that once offered a job, you can contribute to the company’s success.
Interview process for freshers may consist of a technical written test, and mostly followed by another round of technical face-2-face Q/As. Both may include programming questions. For experienced programmers, a good company generally does not conduct a written test.
How to prepare:
Prepare a good resume:
Give enough and a good summary of what you have achieved so far. Even if you are a fresher, you might have done some internships, participated in some hackathons, did some casual projects with friends, or explored a different technology, or just took some training somewhere – mention in your resume. But remember, a good resume can fetch you only an invitation for the interview, not a guarantee for the job.
Write your code on paper, literally.
Technical preparation is important as well.
Why on paper? Since most IDEs will give you immediate hints about the mistakes you made during coding and you can correct them, but that privilege is not available when you practice on paper. Once you write full code on paper, then go to your computer and try now, typing exactly as you wrote. You’ll now realize what mistakes to avoid in your next code on paper.
Advantage: In most interviews, you may not get a computer to write, but a paper or a board. You are now well-versed with the thinking process of coding on a paper. Once you have practiced enough that you believe now you can imagine the coding steps in your mind, you may go to a computer directly.
Understand the coding steps, not remember:
We always stress upon understanding the concepts well and apply them to develop a solution. There may be more than 1 solution to a problem, and you should know why one is better/worse than other. ‘Pseudo code first’ approach may help you here, but you should be able to convert the pseudo code into actual working code as well.
Communication & Attire:
Attire is important, you should be adequately well dressed (of course not in pajamas, Bermudas or sandals etc), but it ends there. A great suit alone will not win you the job.
How will you answer interviewer’s questions if you can’t communicate? Language is one thing (Hindi, English or some other local language) but you should be able to articulate your achievements and answers well. In software industry, English is most prevalent language, thus you should possess a good grasp on it.
A good interviewer wants to understand how you approach a solution, not always in the end result. Thus, if you are thinking in the right direction, then your smaller mistakes may be overlooked if you can convey your thought process to the interviewer.
Confidence:
Answering with confidence (watch for over-confidence) increases your chance. You’ll feel confident if you are well-prepared, practiced enough, well-dressed and rehearsed.
In the next article, we’ll see why most interview failures happen