I have been asked to assess the technical ability of a small group of graduate software engineers.
We have typically asked a lot of open ended questions to assess their level of enthusiasm for software engineering. We have then followed that up by giving the grads some code to review and asked them to find issues with the code. Human resources wants to use a screening tool like HackerRank.
I feel that such approaches do not adequately evaluate all the qualities we need for the grad to be successful in our organisation. A lot of grads tank in the technical code review and we may be missing out on some talent because of the way we conduct the interview.
I was thinking it might be better to start with a simplistic one sentence requirement. The grad then collaborates with a senior software engineer through a single iteration working through the process from requirements analysis, design, implementation, testing, deployment, and defect management. I think this will give us a better picture of how well they can communicate, collaborate, and code. It will also enable the senior software engineer to assess their level of understanding of each stage of the software development life-cycle.
What process have you used to find good grads?
If you are a new or recent grad, what could we do to help you shine in a technical interview?