The process took four weeks from submitting my resume to receiving a job offer.
First was a short ~30 minute phone interview, then three online tests: a general aptitude test, a personality test, and a coding test. The aptitude and personality tests were both 15 minutes long, and the coding test was two hours. The coding test was three simple questions, at least for the entry-level position.
After taking all the tests, I was invited for an in-person interview. There were three separate interviews: two technical, and one behavioral/managerial. Each was an hour long. The technical interviews each consisted of a few short questions about the programming languages I knew, followed by two coding questions requiring you to write a program on a sheet of paper or a whiteboard. The managerial interview was a few questions about my personality and how I worked best. There was time after each interview to ask the interviewers questions about their experience with iCIMS.
A week after the in-person interview, I was offered the job over the phone.
Throughout the whole process, I had one person from iCIMS acting as my liaison to the company. For me, this was the same person who interviewed me over the phone and offered me the job.