yet another blog

On Software Engineering Interviews

05 Oct 2023

From June and August I had quite a bit of software engineering interviews. These are my thoughts on that.

Disclaimer: This is on my experience only, I am nobody, I don’t ask or suggest you to follow, please read it with a grain of salt.

The soft-skill interviews

I really don’t see any points asking these questions in a technical interviews. Questions like

  • How to handle conflicts? or
  • How to persuade your boss to listen to your ideas ?.

Instead, by observing how the candidates communicate throughout the interview(or ask questions that get them to speak more) is enough to access to access his communication skills(which is the most important thing).

Poorly structured interview

I have plenty of interviews that the interviewer came in and doesn’t really have a list of topics that they want to ask. They really just came up with whatever questions that pop up in their head. This is a big red flag, they take you lightly and it is not worth your time joining these companies.

Don’t take your interviews too seriously

I used to stressed out at my very first interview for an internship position. As I interview more, I become get used to failures and rejections.

If you think that people think you are stupid to join a company. Don’t. This is what an interviewer does after walking out of the interview room or turn off that zoom meeting. They will go on Slack talk to the HR that she will tell you No and that’s it. One open position normally wil have tens if not hundreds of applicants apply so there is no point to be disappointed. Instead, learn from your failure and do not repeat that mistake again.

On pair programming questions

It is common now that candidates are asked a programming puzzle and solved it in a limit amount of time. I used to be asked this problem and I think it is a great to access a candidate skills. In short, asking an long implementation problem tells a lot about a candidate. The problem should not be very trivial) but ideally should involve some slightly-tricky logic(like nested for-loops or some trickly conversations). Why does this work ?

  • This is a proof of how programming-savvy a candidate is. At most jobs, you don’t use a Dijkstra or an algorithmic puzzle that requires a subtle observation. At most positions, I really think that being able to write long implementation is enough to hire a candiate.
  • Many good software engineers don’t really grind Leetcode a lot. It has been a long time since the last time he wrote BFS, he can write a BFS with a bit of a help from Google may be not in a 30 mins time frame. Of course, for those positions that require algorithms skills(optimization on systems, Google level talent bar(where they have thousands applicants fighting for one headcount)), asking tricky algorithms to test smartness makes sense.

On technology specifics

I once got asked what are different annotations in Spring framework. I never worked with Spring so I couldn’t answer this. If a candidate don’t specify that on their resume so why ask ?

A good interview question

Ask them to present a technical issue and make them dive deep into it. This is could be anything, technical issues, application features that they build in their past project, a data structure or an algorithmn.

Why does this work?

  • This can access his communication skills.
  • This can show how geeky they are ? Which is extremmely telling.
  • Can access how deep he can go in a topic ?

One bad thing about this interview is that the interviewer should have an adequate knowledge to carry on the topic.

In conclusion

One funny thing about this industry is that the hard part is to actually get through the interview. The interview questions don’t really relevant to their tickets assigned. But this is understandable, since there is a surge in supply of software engineers, there is no reason to hire the best people with the same price. A manager these days spend way too much time interviewing(an executive at Zalopay claimed to spend 10 hours weekly interviewing alone) so you as an interviewee should not expect that they will be passionately warm and welcoming. Cut to the chase and don’t make long speeches.


comments powered by Disqus