- Great communication
- Alignment with our core values
- Engineering excellence
We have a great recruiting team responsible for sourcing candidates, scheduling, and helping candidates throughout the hiring process.
Referrals are encouraged and employees may be eligible for a bonus if they refer a candidate who is hired. When making a referral it is helpful to note if this is someone you've worked with in the past and can vouch for, or a more casual acquaintance or friend of a friend. Both types of referrals are fine, but noting the difference can help guide the interview process.
Our goals with the interview process is:
- Accurately vet candidates for both technical as well as non-technical skills.
- Provide a great experience for candidates.
The process varies from team to team, but in general you can expect the following.
Our recruiters perform an initial screening calls and take notes about the candidate. If they feel the candidate is a good fit, they'll move forward to schedule a tech screen.
Before we bring someone onsite, we prefer to get a solid sense that the candidate is a proficient software engineer by doing one or two remote tech interviews. These are typically done over a Zoom videoconference, using Coderpad for the coding portion. In addition to coding, we typically discuss past jobs or projects, the Iterable team, and give time for the candidate to ask questions.
Successful candidates will move forward to an on-site interview.
We typically conduct a single day on-site, although we'll occasionally split this up to accommodate a candidate's schedule.
The goals of the onsite interviews are:
- To have more members of the engineering team interacting with the candidate.
- To more rigorously gauge technical competency.
- To evaluate fit
- To articulate why this is a great place to work.
- To answer all candidate's questions about the role, the company, our culture, or whatever else.
During the onsite interview day, we invite candidates to have lunch with us at the office. This allows us to get to know candidates better in a non-technical setting, and also allows local engineers to interact with them even though they may not be part of the interview panel for that candidate.
During onsite interviews we perform three different tech screens with engineers or our co-founders. During these sessions you might spend a little bit of time to get to know each other, followed by technical questions. Different sessions will focus on different areas, such as system design or coding.
We want to evaluate candidate's ability to communicate clearly and articulate complex problems in an effective way. We ask candidates to give a 15 minute presentation to the group with another 15 minutes for Q&A. It's up to the candidate how they choose to present. Most present from a slide deck, but others may simply use the whiteboard or share code and a live demo from their laptop.
The prompt can be:
Prepare a 15 minute presentation describing a recent interesting project or major accomplishment. Explain the challenges you encountered, how those were overcome, your involvement in the project, and the interactions and collaboration with your team as well as others within the organization.
Some on-site sessions will ask the candidate to code. We encourage candidates to choose the programming language with which he or she is most likely to succeed! We program mostly in Scala at Iterable, but candidates don't have to use Scala in the interview. It is much more important they choose their best language and solve the problem in the best way possible.
Candidates are encouraged to use their own laptop and IDE, but we can set up a loaner if needed.
All engineers are encouraged to join the interview panel in order to conduct tech screens as well as onsite interviews.
To become part of the interview panel, it can be beneficial to join others in either onsite or tech interviews in order to shadow what they do as well as help calibrate responses.