Interview questions for every software developer

Throughout my career, I have interviewed with 20+ companies for junior, senior and lead positions and I would like to share the questions that keep coming up. To make the questions easier to follow I have named the company FakeForty2 (which is not a real company!)

strong ideas
strong ideas


From experience, this is often the first question that gets asked in an interview as it is a good opportunity to get warmed up. It helps to read your CV beforehand as it will make it much easier to answer this question. I always regret not doing it.

This is an opportunity for FakeForty2 to get to know what impression they have made outside of the company and it also allows them to fill any gaps in your knowledge. Don’t forget to research the company beforehand!

Some things you could research include the company’s products, leadership team and values. It can also sometimes help to look at company rating sites such as to get an impression from people who have worked there.

This question naturally comes towards the beginning of the interview. In my very first blog article, I share my reasons for doing it, if you are looking for some inspiration.

My advice here would be to pick something that required you to learn something new. For example: “To understand why there was no error propagation, I had to research how GraphQL handles errors.” If you don’t have any previous experiences you could describe what you needed to learn to complete a recent project.

Another tip: Try generalising the problem in a way that doesn’t require too much context. If you are using acronyms specific to the business domain of your previous project your interviewer might not be able to follow you.

You could start answering this question by emphasizing that it depends on the situation, how much quality you are willing to compromise. If the company’s survival depends on the feature you are implementing, then it’s probably not worth refactoring anything that slows down the feature you are currently working on. If it’s a normal situation you might decide to stop writing a test after spending an hour on it. Either way, I think it’s important to emphasise that compromising on quality makes software more difficult to change and ultimately slows down future feature work.

Alternative: What are your strengths/weaknesses?

This is not only an opportunity for you to share your strengths through the positive feedback you have received but also an opportunity to build trust by sharing constructive feedback you have received. Sharing constructive feedback also allows you to share what actions you took afterwards, which can make a very good impression.

If you are struggling to think of how to answer this question it might be a good time to gather some feedback. For example, you could send out an email to anyone who has worked or studied with you on a project and ask: “What did I do well?” and “What could I have done better?”

Just in case you directly get asked what your strengths and/or weaknesses are, it might be a good idea to prepare three strengths and three weaknesses. I would suggest also backing it up with some feedback you have received.

Alternative: What are you currently getting paid?

I would recommend thinking about how (and when) you would like to answer this question. Sometimes this question even gets asked before the interview. From the research I have done, it seems that is best to mention a range that you would like to earn within a year, with your desired salary at the lower end. For example, if you would like to earn 50 000 a year you could say: “I would like to earn between 50 and 55”. From experience, it also helps to ask: “Does that fit in your range?” If it doesn’t fit in their range, it will be an opportunity for an open discussion. If your expected salary doesn’t fit in the company’s range, you will know that you haven’t aimed too high.

If you get asked what you are currently getting paid and answer it, it is likely to put you at a disadvantage. To avoid answering it, you could say: “I would prefer not to say”. If they are really pushy, you could admit that you don’t feel comfortable disclosing it or that you are not allowed to, as your current employer wouldn’t want you to share it either!

At the end of an interview, the interviewer will often ask if you have any questions. I usually have a lot and try to ask them during the interview so it doesn’t seem too one-sided. If you need some ideas I have provided some questions in Ensure it is the right job for you by asking these questions.

Additional resources

You might also like:

Written by

Self-taught software developer | Ex ThoughtWorker |

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store