The interview process consisted of 4 steps: Phone Screen, Coding Assignment, "Coffee Screen", and On-Site Interview.
____
The phone screen was brief, where both myself and the interviewer could go into some detail about what we were looking for. I was given an overview of what the company does, what some of their core tenets are, and how the interview process would proceed.
____
The coding assignment was straightforward and fair - about 8 questions across C#, SQL, and JavaScript, and I was asked to complete at least one or two in each section. The assignment was given to me as a PDF and did not have a turn-in deadline; it was expressed that the only consideration would be the quality of the work.
____
The "coffee screen" was a chance to meet with two current software engineers on the PrecisionLender team. This portion of the interview was a very general overview into my experience in a development environment, as well as some insight into the average day for a Software Engineer at PrecisionLender. I was given the chance to ask any questions about the company, their role, their likes/dislikes, etc.
____
The final portion was the in-person interview. It was just short of a full day and consisted of a coding exercise, two interviews, and a lunch.
The coding exercise was intentionally simple and the interview told me that it was not meant to be a trap of any sort, but rather just a confirmation that I'm comfortable in a programming environment. I was given time to work on my own and use whatever resources I had available, with the interviewer checking in every few minutes. Afterwards there was a brief review, during which we ran and tested the code.
The first interview was a "standard" interview with two developers, each from a different team. There were questions about my resume, my history as a developer, past successes and failures, etc.
The second interview was a "technical deep dive" with three other developers (again from different teams), and focused mainly on my knowledge of the primary technologies used at PrecisionLender. We spent time going into specific facets of each technology, starting with general questions and getting more specific until they felt they were able to get a good idea of what I knew and didn't know for each.
I was then taken to lunch with three other members of the PL team, however this time it was not strictly developers - I was able to get a sense of what other teams PL has, and what the day-to-day workflow might be for someone on an entirely different team. The discussion was kept very informal and light, touching on things like background, hobbies, sports teams, etc.
____
All-in-all, the interview process was thorough, but at no point intimidating or excessive. I was happy to be interviewing with other developers rather than strictly managers and higher-ups, as it gave me an honest idea of what to expect if I were hired. Coming out of the interview, I felt that I had a very good idea of who PrecisionLender was, and that the process had left them with a very good idea of who I was as well.