Through out my career I was interviewed and I interviewed for Software Engineer positions and here I would like to propose one of the best processes of interviewing for a good Senior Software Engineer (SSE).
Just to let you know that the sourcing is not covered here, so I imagine that people just come to our “Careers/Jobs” page.
We are looking for the best SSE, so our process aims for the best.
- I would propose to change the candidate submission process to a programming test that enables the upload. This test may ask to implement a web service (SOAP or REST) and host it somewhere. The service should realise a specific contract, so when a candidate is ready he just puts an url in the text field and click “Test”. In order to finish the submission process of the CV, Cover Letter and the Code, SSE must have at least 80% of unit tests passing against his implementation. The main tricks here can be: performance of the tests (90 calls per minute f.e. should be handled), security or just a complicated algorithm inside the test. So the final submission steps are: enter candidate information as name, phone and email; receive an identification code (a guid) which must be returned by a method in the web service, than the candidate has 24–48 hours to pass the tests and that he can submit his CV, Cover letter and the Code (don’t forget about unit tests).
- As a next step I would recommend 1 hour high-pace interview about his experience, technology questions and other theoretical and situation questions. But the high pace is important here.
- This step can be on top of previous one or as an another interview. Here I would ask the candidate to share the screen and fix bugs, implement new features and tests for a prepared solution buggy solution. This will show us how quickly he learns, develops and thinks.
- The next step usually may be repetition of the step 3, but with more algorithmic approach or to do something from scratch to show the knowledge of Big(O), collections and algorithms. (This is optional in geleral and very favourite by Big Lads like Amazon, Microsoft, Google etc).
- The next one is usually “Cultural feet” or if in more details: situational and behavioural questions. This interview seems very easy, but it is very easy to fail if you are not prepared.
- Another type of interview is added normally is motivation, management, team work, cultural feet interview with HR or Top Managers of a company, which is usually done to have a second opinion about the whole interview process.
A few other hints for your:
- Try to push the talk about salary to the latest stage until potential employer is interested in you. However, do you homework and check that the company can satisfy your expectation and nobody needs to waiste time for the whole interview process if the expectations are very different.
- Prepare for every interview and think about all possible questions up front. 99% questions are standard questions or just a flavour of them, so there is no excuse of not being prepared.
- Research everything about the team, company, product, interviewers up front. The more information you know the better.
- Always prepare a few questions relevant to the interview and interviewer.
I hope this post will help you to get great talent into your team!