Applied through the website.
First was a 30 minute chat with the recruiter. Short introductions, went over my background, she asked why I wanted to work at Finix and what I was looking for in my next role. It’s good that I had some background info on the company and their competitors, and I had a background in accepting payments.
Second was a 30 minute conversation with the hiring manager. It was a casual chat about the company, and my experience. He asked about testing, how I work in a stressful environment, and what I do in my free time. It’s important to be personable and honest about who you are. This was a “can I work with this person” kind of interview.
Third was a 60 minute coding challenge with an engineer from a different team. Shared UI using codility style platform. They gave me a challenge to code something with arrays and adding up values. It needed to print pretty. You can choose your own language, but the interviewer will likely not know the language you’re using, so they would only help with rules of the challenge.
Fourth and fifth were back to back on the same day.
Fourth was a 60 minute system design interview with a member of the hiring team. The best way to prepare for this is basically watch system design mock interviews on YouTube. Ask the interviewer lots of questions, and communicate your design decisions clearly and effectively. Be able to defend choices made and be flexible enough to change your design on the fly.
Fifth and final was a 90 minute shared screen coding exercise with a member of the team. Make sure you know your language of choice as the interviewer will be well versed in this language as well.
At the end of the day, the most important part of the process I walked away with was to be able to communicate well and be able to explain your decisions.