Interviewing Resources – Software Engineering

In one of my previous posts, Interview – Never go unprepared, I had written about my journey and lessons learned that have helped me in my career. I am going to share with you all today the resources that I use. I would highly encourage you all to post any other resources that you have used in the comments section. It will help aggregate the links at one place for anyone needing it.

To start with, when I’m preparing for any software engineering role, I divide the preparations into 4 main tasks. The target audience for this is software engineers from entry level to software engineering managers and application architects.

Research the company

It is very important to research about the position, the company and the interviewer who is going to take your interview. It gives you an idea on what to expect, what the demand of the role is and what kind of culture the company has. Also, always read about the company values, search for the videos of the company, if available, to get a rough idea and try to anticipate what to expect. The more you do it the better your anticipation gets.

Resume

I always start with my resume. The first thing is to update it with all the information. Keep it small enough that covers all necessary information, usually 1-2 pages. This is your first impression. As you are updating your resume, update LinkedIn profile to match it. Many recruiters or hiring managers look at your LinkedIn profile to get more details. If you have your own website or github account or twitter feed, keep it updated. Hiring managers are more interested in seeing your journey and experiences rather than your resume or interview preparation. They will be impressed if you have been consistently working on improving your knowledge and skillset.

Behavioral

Next, I’ll prepare for behavioral aspect. I firmly believe in being a trustworthy person and great team player as compared to a very high performer but untrustworthy. As Simon Sinek says, the seal team , the best performing team in the world, always value trust over performance. It is always better to hire trustworthy, low or medium performer person than a high performer but low trustworthy person. Some of the resources that I use often are: Amazon leadership principles & 50 top leadership questions

Technical

Lastly, but by no means the least, is brushing up your technical skills. To be a successful software engineer, the main technical skills to posses are – design thinking, ability to code in any OO language and thinking big to solve problems. Github system design primer is the resource that I’ve used in the past or continue to use even today to help enhance my skills.

To summarize, interviewing is not as easy as it seems but not very difficult either. With a systematic approach and working consistently on developing your design thinking, you should be able to crack the interview. Hopefully, this post will be helpful for anyone who is looking for jobs in these unprecedented times.