*Initial screening stage*
A friendly chat with an internal member of the talent team. They gave a good overview of the company, the interview process and what to prepare for each stage.
*Soft Skills Interview*
A stage with an Engineering Manager discussing previous projects, what influence you had etc. The company gave a good heads of up what topics it would cover in advance.
*Coding Exercise*
A coding exercise using an online IDE. Some method signatures are provided, surrounded by code comments suggesting what needs to be implemented. Key focusses I found were on deciding which type of Collection to use (including thinking about time complexity, and how you wish to add + read from it) & a brief section on thread safety.
Whilst the test itself isn't hard, I personally feel the usage of an online IDE is a poor candidate experience. It immediately throws candidates out of their comfort zone, into an IDE environment that lacks in a lot of the shortcuts & tooling they are used to, and would use in their day to day job e.g. IDE code completion, Unit Tests, Compiler Warnings. I found I spent a good third of the interview learning and battling issues relating to the online IDE that just wouldn't happen in Intellij.
My feedback to improve this stage would be to change it to a take home test, done in a candidates preferred IDE, and then reviewed and iterated on in an interview setting. That would allow Personio to get an understanding of other areas of engineering also: Test approach, use of build tools, justifying frameworks & libraries etc, whilst also freeing up more time for tech questioning afterwards.
*System Design*
Draw the sys design for a calendar app, justifying your decisions and taking into consideration scalability and present load requirements.
Again the prep the talent team gave for this was great. You can come up with a system diagram in your spare time, using the tools you are used to, and then review, iterate and justify it in the interview.
A great format, if only the coding exercise was similar.
*Overall*
I was advised that I passed every stage of the process, but my application was unsuccessful due to the role being moved to the US instead of the UK.
I was understanding at the time that change happens, but for the months following I could see the UK was still advertised for that role, and it was actively getting promoted on LinkedIn for UK candidates. Personio also reached out to colleagues of mine for the role, so the optics of this to me weren't great.
Coincidentally (I hope), just after my final interview I told them that my wife had a baby on the way, I really hope this wasn't the real reason for me being turned down.
My efforts to clarify though unfortunately resulted in no response.