Lesson learned from interviewing software engineers
I just completed a recruitment process that took almost three months with dozens of interviews, and I decided to share a few things I noticed along the way, which I think may help interviewees to get through this tedious and non-trivial process.
1. The Company
Read about the company you are trying to get into, understand what its main products are and what the nature of the company is. The difference is noticeable between who comes to the interview after doing a background check and who does not. Those who did come prepared often asked better questions.
2. HR
The first interview will usually be with the company HR recruiter who will actually check an initial match. For the people I recruit, I ask the HR recruiter to ask preliminary questions of general technical knowledge, whose answers are binary such as yes/no, know/don’t know, right/wrong, true/false.
To be honest? You do not have to answer everything correctly to move on to the next step.
3. Availability
Be available and try to be flexible in scheduling follow-up interviews. Keep in mind that the team leader interviewing you may be very busy and have hard time to find available slots.
On one hand, try to be as flexible as you can, on the other hand, if you are not feeling well, or for any personal reason you are not at your best, it is better to postpone to another date.
4. Professional interview
Know the product you have worked on in the past. Many hiring managers, like to ask about things you are already supposed to know and dive in. If you are a junior and looking for your first job, go through your final project again and be sure you remember the details - the technical questions will be accordingly.
5. Technical test
Recruiters are often looking for the candidate’ potential and problem-solving skills. For me, the way of thinking whether iterative or something else, even if it requires some guidance, is much more important than the solution itself (I recruited more than one candidate, who submitted a wrong final solution). If you are stuck, ask for help, so that if you will not pass, at least you learned something new for your next interview.
6. Development skills and best practices
Clean code, readability, maintainability, and flexibility are not just buzzwords. If the job description requires OOP, make sure you know the most common concepts in OOP, derived from the SOILD principles.
7. Home assignment
It is quite common nowadays to ask for a home assignment followed by a code review as part of the recruitment process.
Recommended by LinkedIn
It is a tool that comes to test your way of thinking, your algorithmic skills, your technique and your learning ability.
Keep in mind that this is one of the last steps in the recruitment process, so take it seriously and make sure you complete it on time.
8. Ask questions
Try to understand well the nature of the team you are going to be a part of, and I'm not just talking about the technological stack that the company uses.
Ask about the work routine: who are the people on the team (seniors/juniors)? what is the workload? work-life balance?
Ask yourself if this is the right team for you.
This is not a Catholic wedding, of course... J, but having a good synergy between team members is not less important than the professional experience required.
To summarize,
Read about the company, be honest, do your homework and get well prepared, be available for follow-up interviews, ask the right questions and be at your best are my two cents for successfully going through a recruitment process.
Good luck.
תודה רבה לך על השיתוף🙂 אני מזמין אותך לקבוצה שלי: הקבוצה מחברת בין ישראלים במגוון תחומים, הקבוצה מייצרת לקוחות,שיתופי פעולה ואירועים. https://chat.whatsapp.com/IyTWnwphyc8AZAcawRTUhR
Wow, great tips Aviad ! Thank's for sharing !
Great article, Aviad!
Wow, Aviad H.! What a great article! 👏🏻👏🏻 Well done for putting that together and publishing it! 😊