In many ways, software engineering interviews are just like any other job interview. You need to know about the company you’re interviewing with, know why you want to work there and be able to demonstrate the value you will bring to the organization.
In other ways, software engineering interviews will be different. You’ll be expected to speak about very technical aspects of your job and maybe asked to solve problems on the spot.
How can you be sure to ace a software engineering interview? To find out, we spoke with Matthew Griffin, a lead engineer with Zayo Group, a telecom infrastructure provider based in Tulsa, Oklahoma.
Here’s his advice.
It’s not enough for you to know about your technical prowess. You should have an online portfolio or profile that demonstrates this to others, Griffin says. Work on open-source community projects on GitHub. Publish your code. Stay up-to-date on social networks. This will give your interviewer some information about you beforehand, and you’ll have examples you can refer back to when answering questions during the interview.
This also shows the interviewer that you are open to expanding your skills. Technical trends change a lot, but this shows you can learn dynamically and won’t be relying on outdated skills, Griffin says.
You should be prepared to speak about every single thing listed on your résumé, and fully explain it to an interviewer as if they know nothing about it, Griffin says. If there is something on your résumé about which you are not 100 percent clear, leave it off.
Your interviewer is likely to question your listed skill sets and present you with problems relating to those skills. They want to see your logic and how you approach problems, and have you talk about work you’ve performed to see why you did the things you did.
You should be able to answer these questions in a way that highlights at least one language you know very well — C++, Java, C#, etc. — as well as your knowledge of system design, sorting and mathematics.
Griffin recommends HiringLibrary.com as a tool for IT people to practice interview scenarios.
Everyone interviewing for this open position is likely smart and great at what they do. They aren’t all kind, approachable and good listeners. If you are, highlight that in your interview.
IT people sometimes think technical proficiency is enough and neglect soft skills, Griffin says. This is a mistake. Practice answering questions thoughtfully, succinctly and confidently. Make sure you seem comfortable and make others comfortable as well.
Software engineers often work alone on their portion of a larger project, Griffin says. For this reason, it’s important they be able to work independently and manage their time. But, he says, their portion is indeed part of a larger whole and they will have to work as a team at various points.
In software engineering, being a team player doesn’t just mean being friendly with co-workers and helping when they need it, though that does come up. It also means writing your code in a way “that others can easily read it, review it and step in at a moment’s notice to pick up where you left off,” Griffin says. If your code is convoluted and hard for others to work with, you’ll slow down the entire team and no one will want to work with you. Highlight your code’s simplicity and elegance in your interview, in the context of helping others who need to work with it.
It’s perfectly fine to say you don’t know the answer to something. In fact, that may be what the interviewer wants. You may get an interviewer who’s deliberately trying to trip you up, Griffin says. “Sometimes an interviewer wants to find out what you know and sometimes they want to show off what they know.” Or it may be that your interviewer is trying to assess your willingness to admit a weakness. It’s fine to say you aren’t familiar with something but would love to learn.
Louisiana Job Connection is a full-service employment hub. Complete your profile today and let Louisiana Job Connection match you with a job that’s tailored for your skills and experience.