Applied online, followed by recruiter call, followed by interview with hiring manager, followed by technical interview, followed by an assignment to be completed and submitted within 2 days, followed by onsite half day interview with team members. Pretty thorough interviewing process.