Interview prep for software engineers who want to stand OUT
Job interviews can be daunting, especially for software engineering folk who also tackle technical tests. Full respect to you! It’s not lost on us that these tests can be rigorous and stressful. However, with the right preparation and mindset, you can navigate the process with confidence and ease – hopefully landing you that dream gig!
Whether you’re a senior software engineer or a rising star in the tech world, this guide will equip you with a range of tips and tricks to shine, from acing technical problem-solving to nailing behavioural questions.
*It’s important to note that every company’s interview process is unique, so feel free to pick and choose the strategies that resonate most with your specific situation. Let’s dive in!
Firstly, some general tips
Know your audience
It’s important to do your homework on who will be interviewing you. Understand if they are a technical or non-technical stakeholder, and be ready to adapt. If interviewing with a start-up, you might meet the CTO or dev team, whereas with a large company, you might meet someone in a Talent Acquisition function first. Treat each interview stage as important.
Meeting with several interviewers can make for a more relaxed experience, with more opportunity for friendly chat or discussion. You could benefit from different perspectives and really get a sense of the culture of the business. That’s a win for you!
Do your research
Do you know what the company does/sells? Who are their customers? What their unique selling point is? What do you like about them? Do some research and have some questions ready to ask. This shows enthusiasm and interest. Bonus points for questions that show you’ve done your homework!
Tips for engineering roles
Engineering is as much about coding as it is about communication, collaboration, and keeping the end-user in mind, so you should be prepared for interview questions ranging across all these topic areas. Often, there will be a more general first-round interview, then a technical task or technical interview to follow.
Talking code
In any interview, the interviewer will want to hear about your previous work and technical skills. Again, know your audience. Have you done a cheeky LinkedIn stalk to assess how technical they may be? This can help decide how into the weeds to go. It’s never a bad idea to explain terminology as you go – even if talking with another developer, it can show them how you would communicate with non-technical folk. If you’re unsure, you can always ask how familiar someone is with a term first and then, if needed, give a brief explanation. Keep it short and sweet.
Make your individual contribution clear
For any piece of work or situation, you should always set the scene – What were you building, for who and why? Have at least two examples of work ready to share. Fight the tendency to say “we.” Acknowledge who was on the team but focus on what you did – The design? End to end? Building the API? Debugging? Testing?
Highlight the successful outcome
What was the outcome of the work you did? Why did it matter? Be as specific as possible to show how it helped the business. Did it improve page load by 70%? Did this then result in more customers for the next quarter? This also segues nicely into…
Value add
How can you add value in this role and to the business more broadly? What impact did you have in your previous positions that you can highlight? When thinking about this, consider both their wants/needs and what you can offer and try to find that sweet spot in the Venn Diagram. Is it your niche technical ability or your experience across diverse industries? Maybe it’s your non-technical skills that add the most value. For example, maybe you championed a new initiative in the team or introduced a new way of working.
Collaboration
Have you worked cross-functionally with Product teams or Designers for example? How do you collaborate with them? Do you have an example you can share? Think about your work style, is it more independent or collaborative? Go back to the job ad to see what they’re looking for in this regard and think of examples to match. Remember the interviewers are people you might potentially work with every day. They are asking themselves, will this be someone I could work with? Similarly, ask yourself the same question about them too!
When advertising for a role, we seek not only the matching set of technical skills that would make the candidate successful, but also the cultural fit with the team. Software and engineering skills are important and form the base of what essentially gets a candidate to the interview stage and hired, but what makes them a valuable colleague is cultural fit with the team and compatibility with the overall vision of the business.
Mujtaba Hussain, Senior Director of Engineering @ Fillr
Communication
Good communication can mean a lot of things. Are you the hype-person for your team? Did you start lunch-and-learn sessions in your last business? Is detailed documentation more your jam? We’re all different, so highlight the positive communication skills you do have and for where you may be lacking, show self-awareness.
The interview itself is a chance for the interviewer/s to witness your comm skills first-hand as well, so keep this in mind. Worried you’re waffling on? Pause and see their reaction or clarify if that answered their question. Maybe you’re afraid you’re being a bit monosyllabic? Ask if they would like you to elaborate. Don’t be afraid to show some personality too. If they ask what you get up to outside of work, give them some insight into you. Likewise, ask them something about themselves.
Technical tasks & interviews
A common part of software hiring is a technical task e.g. take-home coding task, live coding test or paired programming. This can be followed up with an onsite whiteboard or technical interview to discuss your completed task. Make sure you read the instructions they provide carefully but also try to read between the lines. You want to ensure you’re meeting all the core requirements but also showing a little about yourself as an engineer and what sets you apart – don’t be afraid to be proactive.
If they say they care more about your approach or what you consider good practice, they’re probably not going to lay out exactly what you should do. They want to see how you interpret the instructions and what you come up with yourself. Also – a quick reminder – don’t forget to review for errors and check everything is working as it should before you submit!
Hot tip: If you have a chance to do an interview prior to a technical task, consider asking them about their practices so you have an idea of what they might like to see e.g. is testing important to them? Do they like a lot of comments or focus more on clean code? This is also a good way to see if you’ll ultimately fit in well with how they roll. If you’re not open to doing the practices they care about, maybe this isn’t the role for you.
So, you’ve submitted your task. Nice work! You’ll probably be tired by now, but we do suggest prepping for the tech interview itself too. Interviewers are looking for engineers who cannot only code but also explain their work and assess it critically. Reflect on your submission. Why did you choose that language/structure/pattern? What parts were trickiest or easiest, did you find anything you would do differently? If you had more time, what would you have done next? Think about scale; if we added 1 million users, would your code need to change?
Tips for Whiteboard/Live Coding Tests (if applicable):
- Ask the interviewers if they would like you to talk through the process of what you are doing and why, while you are writing on the whiteboard. Practising doing this at home beforehand. It might feel strange but it can help!
- If you’re not sure what the interviewers are asking, it’s okay to clarify. Say something like “Am I correct in saying that your end goal is X?” This shows you can communicate well.
What if you get stuck on a tech whiteboarding or live test?
That’s okay – you’re only human. What’s important is how you react to the situation 🙂
- Acknowledge it: You could say something like “Apologies, I’ve hit a roadblock. I’ve solved problems like this many times before, but perhaps I’m a little nervous.”
- Explain your thought process: “I’m thinking of doing A, B, C but I’m not sure because of X”
- Give them a window into your thoughts: A good interviewer is there to help you in these moments and will hopefully nudge you in the right direction. They will appreciate that you want to communicate, you care, and you want to work through things together. This is your opportunity to see how they treat you in a challenging situation.
We seek engineers who are not only passionate about technology but also deeply understand its purpose in solving real human problems. Ideal candidates should have a solid foundation in both technical and UX design, always advocating for the user experience and prioritising it over mere technical optimisations.
Apart from technical skills, we value engineers who bring joy and a positive attitude to their work. We look for individuals who are collaborative, can support their peers, and enjoy their job, knowing that life at work isn’t just about the codebase. Strong opinions are welcome, especially from those open to changing their views with sound reasoning.
A quality software engineer writes clean, clear, and testable code, understanding that it’s meant to be read and maintained by others. They prioritise writing straightforward code over creating unnecessary complex solutions. They appreciate the significance of ‘dependency elimination’ as a strategic approach over mere ‘dependency injection.’
We evaluate candidates based on their ability to understand problems deeply and propose viable solutions. We value the learning process, including how candidates use resources like Google to solve issues. Our interviews focus on lessons learned from past projects and how candidates contributed to successful outcomes. Additionally, we conduct ‘pairing’ interviews to assess cultural fit and team chemistry more than just technical prowess.
Sam Chalela, Group CTO @ Colab6
And a final tip
…But also the first tip! Before you even start prepping, ask yourself. Does this opportunity align with your career aspirations? If so, make sure you show enthusiasm. This counts equally as much as the rest of the tips in this blog!
Finally. Be kind to yourself! Interviewing well is a skill and it can take time to develop. You may not nail it first-go-round, but learn and reflect for next time. Remember, the person on the other side has been there at some point too…And if you need more help, you can always ask us at affix 👍
All the best,
Cass
Keen to know the types of software engineering roles affix recruits?
Glad you asked! We’re in our element recruiting both individuals and whole teams into contract or permanent positions across mid to senior software engineering, SRE/DevOps and, of course, engineering leadership positions up to CTO level.
Need to hire?
👋 Hiring managers – please get in touch with Lead Talent Partner Cass Galliot or our GM of Tech, Breanna Skeen.
Looking for role?
🙌 Job seekers – Please check out our latest jobs here. You might also like to create a profile with us here.