My job is to not be easy on people—Steve Jobs.
That's right! Every potential employer in the tech world isn't going to be easy on you when you enter the technical round of interviews. They want to get down to the heart of the matter.
Are you as well versed in the rudiments, as you are in the finer points of computer science or are you a poser?
Are data structures and trees the toys of your everyday play? Are you comfortably at ease with arrays as you are with sorting and search algorithms?
Listen to this story of Quentin, a chap in many respects like the multitude that seeks employment at the hands of Amazon, Google, Netflix, and how he, despite many warnings, failed to achieve his dreams.
Quentin was an average mind at an average school. But he was eager to land a job at one of the behemoth players in the tech world. So, to achieve his aim, he managed to set up a couple of interviews through his social circle. Quentin sought advice from his peer group, and they advised him to prepare for the technical round since that would prove to be the clincher.
But he didn't take their advice seriously. A deadly combination of overconfidence and cocky pride resulted in him looking entirely at sea during the technical round.
As a result, he didn't get the job.
If only Quentin had listened to the advice of his friends and peers, and invested in technical interview prep mock classes, he would not have had to face the disappointment of seeing his dreams crumble to dust.
With adequate technical interview preparation and coding interview preparation, he wouldn't have failed the all-important technical round.
If you don't want to be in the same boat as Quentin, prepare your technical round as assiduously as possible. Take several mock interviews and beat the rest of the crowd to the top prize!
Let's get started!
The technical interview is that process where the interviewer will pose questions that will gauge your technical expertise—for example, coding problems, brainteasers, real-life problems, and sometimes even riddles.
So, before you begin to prepare for a coding interview or start technical interview preparation, go through the following tips and tricks that can help you on your quest to land the job of your dreams!
A technical interview consists of more or less these following rounds, but it varies from company to company.
Usually, the first screening step is the technical phone screen interview where they'll vet you before they call you for an in-person interview. What this usually means for you is that your resume has the company impressed and they are eager to follow-up.
Before you enter the prestigious halls for the full-day interview, the company might want a peek at your coding skills by sending you an assignment over Skype or Zoom or even over a plain old phone call. Passing this test will let the rest of the interview process begin.
It is the most critical stage of the interview. You will be up in front of a panel, and the panel will throw various coding problems at you and you have to answer on a whiteboard. As simple as that.
Google's interview process is the toughest around. Many candidates rate it as highly excruciating. It involves a screening call, two phone interviews and one full-day onsite interview.
Facebook follows the same pattern as Google. They also have one screening call, two phone interviews and one onsite interview.
Apple also follows its brothers-in-arms to conduct one screening call, two phone interviews and one onsite interview.
Amazon begins tough. They have two online assessments, one phone interview, and to end the process, an onsite interview.
There are around four technical interviews, and a human resources interview follows these.
Uber starts with a screening call and follows it up with an online assessment. Then, they move onto a phone interview and an onsite interview.
So, brush up on your data structures, trees, sorting and search algorithms, arrays and dynamic programming skills!
Who will be conducting the interview?
It varies from company to company. But mostly you can expect everyone on the panel to have varying degrees of technical expertise. You can expect that they will be some top guns at the organization.
At a start-up, most of those interviewing you will be your future colleagues or bosses. Expect even the Chief Technical Officer to be present at the interview along with senior developers and members of the coding team. Your interview preparation should include a lot of coding interview preparation and a lot of technical interview preparation to be start-up worthy.
At an interview for a larger company, you can expect multiple rounds with different heads. For example, there may be a technical round with the tech team and a culture interview with an HR. Expect even the CTO to be present at the interview. Make sure your prep for technical interviews is top-notch when you apply for these larger corporates.
The rule of thumb to follow while dressing for interviews is this: dress one level higher than the organization's dress code. If the company has casual dress wear, opt for business casual. If they support a business casual, go for business formal. But whatever you wear, make sure you project your best and are comfortable in your attire. However, do not distract from preparing for a Google technical interview by stressing about your clothes! Pick out your Sunday best, and it will be adequate.
Items to carry for your technical interview
Before the big day, prepare for a coding interview sedulously. Also, to boost your chances, take some mock interviews. Yet when the big day dawns here is a list of essential items without which you must not step out of the house.
If you have taken a couple of mock interviews or attempted some mock interviews online, you will have some idea about what you are in for on the main day. If not, here is a break-up of what to expect at each stage of the interview.
You should feel proud that you made it to this round of the interview process. This round signifies that they like your resume and something in it has caught their eye. So what should you prepare for the phone screen round? While you can talk about your technical expertise, you should focus mainly on sounding enthusiastic and eager to join the team.
While they or may not be able to see you, you can convey a lot during a phone interview. Mostly what interviewers will be looking for in a phone interview is your passion, enthusiasm and interest in the job.
The person conducting the interview may not be a technical person so first ascertain that before beginning the conversation. If they are a member of the HR, play up your soft skills and if they are from a technical background, play up your tech knowledge. No matter what, here are some Interview Preparation tips to ace that phone interview.
a. Highlight your passion for technology and coding
b. Sound enthusiastic for the position and the prospect of the interview
c. They will be checking your communication skills, so pause, think, speak clearly in a cautious manner.
You have thirty minutes to make your pitch to the interviewer and get them to head to the next stage of the process, so try to stand out. What you can do is answer specifically in terms of the job. Read up on the job description and apply precisely those points to the interview. For example, if the job has demands on dynamic programming, make sure to include your expertise in understanding these specific algorithms.
For the technical interview, bring up all the past projects that you have worked on, without forgetting to mention the exact role you played. Remember that you have to convince them of your technical expertise so inquire into the projects they have with them and the specific modules you'd like to work on. For instance, if the set-up is an internet-based company, Java interview Preparation is a given.
The remote coding round of interview is not as difficult as the onsite coding round but does have its challenges. There are usually two approaches, and that depends on the nature of the company. If the organization is a start-up, you can expect an at-home assignment which you must submit within forty-eight hours. In case it is a large company, expect to code in situ on a real time coding platform.
While doing your interview preparation, remember that the technical aspect must take precedence over the other aspects. One of the best ways to approach the technical round is with a thinking-out-loud strategy. Give voice to your thoughts that will reel the interviewer into giving you hints. Also, it would help if you used the term 'we' instead of 'I' since that will indicate that you are a team player.
If you receive a take-home assignment, however, make sure to take time to complete it. Do not be hasty. And once you are done, tick off all the boxes that need to be checked.
In the take-home assignment, the questions may not be 100% clear. This is deliberate. The company is trying to figure out what your approach would be to a vague assignment. Also, be wary of trying to pick up too many new skills during the take-home assignment. It would help if you stuck to those that you know. And if at all you need to pick up a new skill, do so, but do not expect to become an expert in that language all at once.
One of the biggest Interview Preparation tips is never to start coding right away during the challenge. Only after you have thoroughly prepared and are logically clear on all the foundation should you start with the coding.
The interviewers are hawk-eyed. They have not set you the challenge with just your coding expertise in mind. There are plenty of other skills they are looking for, and these are:
Can you code at all? You need to prepare for a coding interview if you are still shaky with your coding. To bag a job at big companies like Google or Facebook, you need to be a stellar coder. Anything less, and it's time to go back to the drawing board.
Not everybody writes the whole code and then begins to troubleshoot. The right approach is to code in modules. Break up the problem into sub-parts and then attack the sub-problems. And as you develop your program, test it bit by bit. Doing so is excellent career advice for coders.
A biggie— how you attack the problem is vital. Do you take the whole block and try to put it all together or do you work in small bite-sized amounts? The way you work matters, and they will be looking out for how well you can solve problems and how you approach problems,
Collaboration is not the same as cheating. If you can come up with doubts and ask relevant questions to the problem setter, it means you have a collaborative streak in you. Also, asking for inputs while not expecting them to solve the whole problem will be a booster for you. If you are still a little unsteady, interview prep courses are a must for you.
The most straightforward way to get noticed on a remote coding challenge is to go beyond what is prescribed. If they've asked you to solve two items, at least chart out four more sub-problems.
But as a caution, do not get help on the task. When there is a follow-up interview, the interviewers may ask you why you chose to do certain things instead of taking another approach. They would catch you if you did not write the original code. So if you still feel a little bit rusty, take technical interview prep mock classes to boost your performance.
Hands down the most formidable challenge on the battery of interview tests are the onsite interview. You may need to prepare for a technical interview in case you are aiming at top companies like Google or Amazon, and it won't hurt to prepare exclusively for Amazon Google interview questions.
Tips to follow during the onsite technical interview + whiteboard challenge
Since the whiteboard challenge can be quite a daunting task, here are some whiteboard Interview Preparation Guide, which will help you to crack that uphill challenge in a jiffy!
Nobody likes to be lost or all at sea when posed a tough question. Neither should you be. If you are in doubt about the question, always ask. The interviewer might even throw you a few hints.
What the interviewers want to know is are you able to articulate your thoughts well while coding. Can you communicate the idea that you have formulated? If yes, you could be a winner.
When thinking out loud, you might want to be precise in your way of handling the problem. Don't be vague when referring to code. If you have a function that sorts the numbers, be specific about which algorithm you are using, bubble sort or merge sort or any other sorting algorithm. Also, explain why you chose that particular algorithm instead of the others.
If you are unsure of what the solution is, do not worry. A great interview preparation tip is to be confident that you will be awarded some part marks for working out certain portions of the code. So start with what you do know and the wait for the interviewer to give you a little boost.
Skills employers are looking for in the onsite technical interview
There are many tips when it comes to preparing for a Google technical interview, but one of the things you ought to know is exactly what the interviewers are looking for in an onsite technical interview.
In any technical interview, the focus, no matter what is always going to be on your coding skills. Take extra prep for a technical interview if you feel that you are not suitably prepared for the coding round.
The panel will closely monitor the approach you took to solve the problem rather than the solution itself. They want to know if your mind works out of the box rather than in tried and tested routes.
Everyone knows how the established algorithms work. But can you come up with something different from what is already known? If you can think creatively, you will be noticed in this round.
One of the most important career advice you will receive is to communicate your ideas clearly. If you are unable to do so, your ideas will not be realized. People will have a hard time working with you if you are incoherent in expressing yourself, so you should learn to communicate your ideas well.
Finding patterns and working with organized data is a merit for a computer programmer. Everyone recognizes this trait. Practise mock interview questions or else take mock interview online tests to hone your analytical thinking skills. And try to be methodical in your approach to work.
Remember interviewers want to know if you will be able to fit into an existing team. Additionally, this is something no Google interview questions can prepare you for, so try to be a team player.
Vitally crucial is the ability to handle constructive criticisms and feedback. Do not get annoyed at the changes suggested to you. Accept them, and then highlight your views. The whole process should be one of give and take.
The way to stand out in a whiteboard interview is to write crisp, clear, and effective code. Do not unnecessarily complicate matters for yourself. For example, take the time out to name your variables properly as this will save you time when you are in the thick of programming. Also, for web-based companies, your Java interview Preparation should be substantial.
Breathe easy once you have completed your technical interview. The worst is over! What remains now is for you to wait and see how things pan out. All the career advice ever given will not be enough to see you through this period of waiting!
Try to maintain the requisite emotional distance from the process. Remember rejections are standard and it will take plenty of subsequent efforts before someone hires you so, do not lose hope. Also, if you are disqualified for the job, stay positive. At least you learned something new, and you can always build up your game by taking one or more mock interview questions to prepare for other upcoming interviews.
If your coding skills did not impress the panel, there is no point in wondering what will. But not to lose hope. If you want to be memorable, follow-up with a thank-you note saying you are grateful for the opportunity and ask about the position after a week.
Here are some vital tips to keep in mind while preparing for a coding interview.
Your introduction should be crisp and classy. Prepare precisely how you are going to communicate your career up till now, what your future goals are, and what you hope to achieve, all in under a minute.
While you make yourself job-ready, you want to prepare data structures, dynamic programming and algorithms very well along with the other Computer Science rudiments. Google interview questions and practice them.
Pick a language from among Java, Ruby, C, C++ or Python and be proficient in it. Companies usually allow you to code in your language of choice.
Scour the internet for coding challenges and try your hand at them. While preparing, you should try coding on paper or the whiteboard to be more realistic.
If you are still shaky on your interview skills, mock interview questions are what you need. Take the help of your friends and family and practice a few rounds of mock interviews.
To interview at the big companies, you will need a little more fine-tuning. Here is where you can take the help of interview prep courses or webinars which will guide you into what to expect.
Recruiters want to know if you understand the basics of what it means to work in tech. They are not looking for bookish knowledge, but practical, hand on insight into problems.
Ideally, it would help if you had worked on several open-source projects or had a couple of projects in the past that you started work on from scratch. Instead of letting the interviewer grill you about what you know, here is the time to amaze them with your on-job skills.
When you start to practice coding, do so in intervals of thirty to forty-five minutes often with a timer nearby. Keep time for debugging as well, and you will find that you are practicing more efficiently.
To practice coding efficiently, one of the ways you can help yourself is to practice coding with friends. Two brains are better than one. And a coding mentor can genuinely help you to hone those programming skills.
At an interview, you will be thrown a couple of tricky questions as well. The right way to approach these files is to have a process that helps you to deconstruct the question.
Even if you are approached by a company you are not keen on working with to interview, do not pass up the opportunity. What's the worst that could happen? You'll get some coding practice and make some friends. What's the best that could happen? You will get a job!
Imposter syndrome is when you feel like you do not belong in the tech world because you underestimate your skill and talent. Many people suffer from this, and ultimately migrate away from tech. But to avoid feeling like this, reinforce your love for technology and get cracking on that interview preparation.
While formulating solutions to problems, and even while coding, do your best to keep your nerves under control. Always aim, while programming, to make concise and precise solutions. Once you get into a habit of writing exact stuff, you will consequently become a better programmer.
What do you think are the most important interview questions that are really probing?
When they open the floor to you, here are some questions that you can ask the interviewer.
Take this as an Interview Preparation Guide, and you will understand how to avoid making certain errors that can seal your fate on a technical interview round.
Before any technical interview, revise everything that you know on the subject. Most candidates are smart, but the mind isn't a computer. The grey cells need to be refreshed from time to time, so to be interview ready, prepare for mock interviews online.
Most candidates make this mistake. They jump the gun and plunge headlong into the problem in their excitement to solve the problem first. But what they do not know is they could have saved themselves some trouble if they had spent more time planning the answer.
No one likes working with someone who allegedly "knows-it-all." Especially, if you are young, you cannot possibly know it all! So be careful of how you speak in a technical interview. Instead of giving very definite answers like 'hate' and 'love' use some non-definite terms like 'prefer' instead.
When you are working on your problems, there is no barrier against talking to the interviewer and discussing the issue with them. Doing so may even get you some handy hints!
Again, you look like a know-it-all when you do this, so refrain from thinking you know what the question is going to be.
Everyone has those days—the days when you do not know enough to answer. On days like this remember, it is time to go back to the drawing-room and rework your strategy. Do not get flustered. You might have missed the golden opportunity but blame your laziness for that.
Usually, when asking you technical questions, the panel will focus on the coding language of your choice and the latest developments in networks and databases. Here is a small sample.
Take some interview prep courses to make sure you are ready to tackle the interview.
With these questions, the panel wants to know how you will react to various situations you may encounter in the workplace.
When you start your interview preparation, take the time to focus on behavioral question