How a Software Engineer Should Answer the "Tell Me About Yourself" Interview Question

I think that without a doubt the most common interview question is “so, tell me about yourself”. 

As someone who’s gone through the HackReactor program, spoken to recruiters, and interviewed dozens of candidates myself, here are the most important things any candidate should keep top of mind. 

Common Misconceptions 

There are two common misconceptions with this question. The first misconception is that it’s not really an ‘interview question’, rather just an opportunity to make small talk with the interviewer to show them that you can build rapport. The second misconception is that this is your chance to show the interviewer that there is more to you than just being a programmer. Indeed, if someone asks you in a social setting “tell me about yourself” your answer probably should include more than just what your favorite frontend frameworks and sorting algorithms are, but in an interview you should focus on your technical strengths.

Many years ago I used to think this was a silly question interviewers would ask when they weren’t prepared to actually give an interview, and I would even get slightly offended. I would wonder “well doesn’t this interviewer have my resume? Have they even looked at it? There is so much from both my career and who I am as a person that has brought me here to this position… where do I even start?” But in reality, this is what makes this question both interesting and useful for the interviewer. Out of everything from the candidates' past, what are they going to choose to describe themselves in 30 seconds?

Your answer should instill confidence about your chosen job and skills 

The last thing you want after your answer is to leave your interviewer with doubts about the fact that you enjoy programming, and that it’s what you will continue to build your career in. In the past when I had the opportunity to conduct an interview, it was somewhat of a negative if the interviewee seemed eager to be in a leadership or more product facing role in the near future. Of course, there’s nothing wrong with aspiring to be in a leadership role, but it would make me second guess their true intentions and whether programming was something that they enjoyed and were invested in.

When answering, I like to immediately jump into my current strengths, and my top choices for programming languages and frameworks. I can work backwards by talking about my current job, previous roles and framing every role as a building block that has brought me to where I am today with expertise in those particular languages/frameworks I originally centered my answer around.

If you have previous professional experience that isn’t related to programming , there may still be value in mentioning them if you're able to tie it back to how it makes you an even better programmer today. Here are some ways you can tie back other skills to your role as a programmer: 

  • Designer: Strong understanding of UX and ability to craft beautiful UIs
  • Engineer (non-software): Process, logic, and problem solving ability
  • Product Manager: Organizing build process, getting user feedback, and connecting the pieces
  • Manager: Leadership for future lead engineer roles
  • Sales/Real Estate/Recruiter/HR: Can relate to the user and can work collaboratively as part of a team
  • Musician/Chef: Grasp it as a science as much as an art
  • Writer: Writing programming blog posts and tutorials

If you are looking for your first professional software engineer role and you find that you are either having trouble filling the 30 seconds, or it is dominated by your previous non-programming related experience, you can fill in more space by mentioning a showcase project you have been working on. 

Another advantage to incorporating a project into your “tell me about yourself” response, is that it can easily segway into the intuitive follow up of: tell me more about that project. It positions you to showcase a project that you've prepared yourself to talk about and once again show your excitement for future technologies you want to learn and general areas that you want to grow in. During the interview, it's valuable to to demonstrate your willingness to adapt to the ever-evolving nature of programming. This portion of the answer will be even stronger if you can tie in your excitement to learn a technology that the company currently uses. It will show that you’ve done your homework, and that you’re confident that even if you haven’t worked with a particular technology in the past, you can pick it up quickly. 

Once you have given a solid overview of your technical ability and interests, I do think it’s nice to have a couple sentences on other interests/hobbies. There is a chance that the interviewer may have a common interest, whether a sports team, or travel destination. Having the ability to build rapport with an interviewer is always a plus and allows them to see if you’re someone they would enjoy working alongside.

About the Author

Aljosha Novakovic

Aljosha Novakovic is a full stack software engineer at IBM. @yoshcode