Application - Applied online through their website, and was contacted by a recruiter a day or two after to setup a phone screen.
Phone Screen - 15min call w/ the recruiter to go over my background and get a better description of the position. Setup a technical phone interview a couple of days after.
Phone Interview - 1hour technical phone interview w/ one of the Software Engineers with the same position as the one I was applying for. Was asked technical questions regarding O-notation, Algorithm Design & Coding (determine if a string is palindrome, determine if a string contains all letters from a-z, write a hashcode function), SQL (write specific SQL, how to make a backup of a table), basic Unix (command to check if java instance is running, and Java Config (Verbose GC, meaning of Xms & Xmx parameters). Struggled w/ a few of the questions (apparently no one has every gotten a perfect score), but was still called in for an onsite interview the next week.
Onsite Interview - Was scheduled to have five 45min interviews with various people at their office. Ended up meeting w/ only 3 of the 5 (one was still on vacation, while other was always a maybe and ended up being to busy to meet with me). First Interview was w/ one of the more senior level engineers. Asked general questions about my background, how to debug high CPU issues, and algorithm/coding questions (given an array of integers a, and integer b, find 2 numbers in a that add up to be). Second interview was w/ the Director and Manager of the position/team. Went over a description of the role, and asked questions regarding Databases (defined a table & SQL and asked why it was poorly written based on the defined table, how to backup the table) and algorithms/coding (given an array of strings, return if an anagram exists). Last interview was with an Engineer in the same role as the one I was applying to. He didn't really have questions prepared (seemed all the ones they had prepared I'd already been given), but was asked some troubleshooting and coding (data structures to store JSON) questions. Lastly, had a quick 15min chat w/ the recruiter where he went over a bit more information about the company.
Results - The next day, was told I didn't get the position as they were looking for someone with more senior level experience.
Good overall experience. All people I met with were nice and easy to talk to. Results were somewhat expected; the role was more of a support role (which is my background), but were looking for someone w/ more development experience.