Programming Interviews For Dummies
Book image
Explore Book Buy On Amazon
Mock interviews are great interview practice, especially when it comes to programming opportunities. Programming interviews often come with their own set of particular questions and assessments so it’s a great idea to do some interview prep work.

Sometimes, it makes sense to impose yourself on your friends to help review your cover letter and résumé, and help you with mock interviews. Your friends aren’t the only people in your network, and it’s likely they won’t all be available to help when you need them, either. Is it time for dramatic music?

Cue the adventurous music instead because the situation is far from bleak for you, programming superhero. LinkedIn is a premier resource for finding people who currently work at the company you are interested in or have worked at that company before.

And if you’re going to work for a large company such as Microsoft or Amazon, you’ll also find books specifically written about the interview processes at those companies.

When the company calls to set up your interview, learn from the company representative how many people will be interviewing you and the interviewers’ roles if you can. That knowledge will help you prepare your mock interview the right way. If the company rep won’t tell you, then prepare as if you’ll be meeting with an entire panel of interviewers — at least seven.

Here you learn how best to canvass your network so that you can learn more about the interviewing tactics of the company you wish to work for as well as find folks willing to be a part of your mock interview team.

Interviewing programmers who have interviewed before

If you’re fortunate, one of your friends will have interviewed at the company before — or knows a person who did. Your friend will be able to give you some pointers not only about what kinds of questions you may get but also what the entire process is like.

If one or more friends work at the company, they may also be able to tell you about your interviewers so you know how to deal with them.

If talking to a friend isn’t an option, you still have three paths to explore.

LinkedIn

If you have one or more LinkedIn connections who work in the human resources industry, contact them and ask if they know anyone who has worked at the company before. You’ll obviously have much better luck if you’re applying at a large company with many locations because such a person will be easier to find.

What’s more, the company likely has a fairly standardized interview process, so if your HR contact recommends someone at another location, the process at that location is likely the same as the one for the office in your area.

You can also search for the company directly in LinkedIn. A company search will also bring up the profiles of people who currently work for or who have worked at that company. If you’re lucky, one or more of those people will be linked to one of your connections so you can ask your connection for a referral.

Otherwise, you’ll have to pay for and use InMail to make a connection and hope that person is happy to help you.

Programming forums

There are plenty of programming forums and groups on other social media websites such as Facebook and Reddit where you may be able to find people who work (or have worked) at the company.

And don’t forget to canvass programmer-centric websites including Stack Overflow and LeetCode that have online forums; on those sites you can chat with other programmers and find out if they know anyone who works for the company you’re interested in. web-based programming forums and groups are less targeted than LinkedIn, but it’s still a path with breadcrumbs.

programming mock interview Source: Stack Overflow
You have to sign up for or log into your Stack Overflow account if you want to ask a question.

In-person events

If you’ve applied to a job at a specific company in your area, then you should check out in-person programming events in your area. Your local newspaper and/or business journal as well as online meeting sites like Meetup should have information about when the next event is.

Even in-person events aren’t as effective as LinkedIn at finding people because you have no idea who will be at the event, let alone how many people will be there. But, like programming forums, live meetings are another opportunity to find the person you’re looking for, or a person who can get you in touch with The One (or several Ones).

Find people who will give you mock programming interviews

Chatting with others online and reading books only take you so far. If your friends and other connections are in the same area you are, then you can get them together at a location that’s convenient for everyone such as shared office space that offers its conference room for rent and conduct a mock interview session.

Some, if not all, of your friends will be happy to participate in a mock interview. However, you don’t want the mock interview to be friendly and easygoing. You want it to be nervous and intimidating — that is, as close to the real thing as possible.

Only a realistic mock interview will give you the feedback you need to feel good when you start your actual interview. Therefore, you may not want to have all your friends as mock interviewers because during the real interview, you’ll be in a room full of strangers.

One of your top priorities should be to find and talk to a programmer with more experience than you so that that programmer will give you harder programming problems and won’t be afraid to ask challenging follow-up questions. More experienced programmers, such as your potential boss, await your arrival for the real interview.

You can also use social networking sites, online programming forums, and in-person events to also find more experienced programmers. It’s easy to find a person’s experience online, but in the case of in-person events, you may have to ask the event coordinator who you should talk to.

Schedule your mock interview

Your ability to schedule a mock interview will depend on how much time you have between the time you get the call from the company and when your company will be holding interviews. Many companies hold interviews during a block of time, such as during one week, so everyone in the company can get their other projects done and then concentrate on hiring the new employee.

When you talk to friends, strangers online, or strangers in person, ask them if they would be interested in participating in a mock interview at a convenient location like a rented conference room. Also be up front about your time constraints, and hopefully many of the people you talk to can accommodate your schedule.

You should block off at least four hours (that is, an entire afternoon) for the interview because you’ll not only go through the mock interview but also receive feedback from your interviewers as well as people you may want to serve as observers.

Reward your interviewers well

You should approach each mock interview member either in person or online to ask them about what they want in return for their time and effort. People will want to be compensated in some way, and you’ll need to figure out what that is — it could be a hearty meal, a gift card, or just a trade that you’ll participate as an interviewer in the other person’s mock interview.

You may need to give different gifts to different people. One way to do that is to give people a choice of what type of gift they want from a list of gifts you’re willing to give. Your potential interviewer may have a suggestion for a gift instead, and you’ll have to decide for yourself if you want to do that (or your budget may decide for you).

Don’t serve any snacks or even meals until after the interview. During the interview, just serve water as that’s likely all that’s going to be served by the company during your real interview.

Prepare your interviewers

A mock interview is a good opportunity for your interviewers to role play and give you a good idea of how to work with the personalities of your interviewers.

At least a day before you meet for the mock interview, think about who your interviewers are going to be, fire up Microsoft Word or your favorite word processing application, and type a one-page description for each person about what department they work for and what type of personality they are. For example, one interviewer can be very dominant, another can be nice, and another can be submissive.

Don’t type suggested questions into these descriptions. The mock interviewer is responsible for coming up with a list of questions based on the description. You’re not supposed to know the questions ahead of time, just as with a real interview.

When you’re done, print out each description and give it to each person at least a few days before the mock interview starts so that you know each interviewer knows their role. Each interviewer will have some time to absorb it, form their questions, and rehearse their behaviors in their heads before the mock interview begins.

Here’s a sample mock interviewer description that you can use as a starting point in building your own:

You are an expert in Java, but you feel like your skills aren’t being used at the company to their fullest extent. For that reason, you feel like any new person interviewing for a job better be at least up to your level or you don’t even want to deal with them. You are dismissive of anyone who claims to know Java and doesn’t have the skills to back it up and assume that everyone fits that category — unless they prove otherwise.

You don’t really want to hire anyone because you feel threatened by anyone who could challenge your skills, so you’ll be looking for flaws in even the highest qualified applicants. You also like to see how people react under pressure, so you often try to get a rise out of candidates by directly challenging them and being combative.

Include observers

The mock interview should also include at least two observers who will take notes about how you and your mock interviewers perform. These observers should sit out of easy sight, such as in the corner of the conference room. Feedback from people who aren’t participating directly is invaluable to getting information that can help you during the real interview.

All this good feedback will also be invaluable for everyone else on the team since they may find themselves looking for another job someday. That argument may convince one or more people who are on the fence to join your mock interviewing team because they’ll know they’ll benefit from the experience.

Take notes to improve your answers to interview questions

A mock interview is the perfect opportunity for you to take notes as you’re asked questions and after you finish the coding test so you can understand what you’re doing well and where you’re falling short.

You should also write some notes right after the mock interview to get your impressions of the experience and any other thoughts about where you could do better. Your observers will be able to fill in some gaps in that knowledge as well, so be sure to get copies of their notes. (And don’t be surprised if others in your mock interview group want copies of your notes to refer to the next time they have an interview.)

If you have the time and your interview team is willing, you may want to have a second interview after decompressing for a couple of hours and then see how well you fix some or all of your issues. However, some interviewing problems may need to be fixed during the time between your mock and real interviews, such as filling holes in your programming knowledge.

About This Article

This article is from the book:

About the book authors:

John Sonmez is a software developer and the author of two best-selling books, The Complete Software Developer's Career Guide and Soft Skills: The Software Developer's Life Manual. He is also the founder of the Simple Programmer blog and YouTube channel. Eric Butow is the owner of Butow Communications Group (BCG), which offers website design, online marketing, and technical documentation services for businesses. He is the author of 32 computer and user experience books.

This article can be found in the category: