This post was originally published on SheCanCode.
Hello! I’m Neha Srivastava, a Staff Software Engineer based out of NYC. Effective communication is key to acing an interview; I’m here to give you all the tips and tricks for securing a technical position at Attentive.
However, in my 12 years of experience in the industry as a candidate, interviewer and now as a hiring committee member at Attentive, the difference between a good hire and a great hire often comes down to how effectively the candidate can communicate in both technical and behavioral rounds. Let’s do a deep dive of the interview process at Attentive to understand how effective communication can take you across the finish line.
The key to a good interview is to make sure you understand the expectations of the role you are interviewing for. While some companies – typically startups – are looking to hire for a specific role, larger companies such as Attentive have the flexibility to hire a good engineer that meets their expectations, and find the best team fit for them later.
The resume is your first chance to make a good impression. Typically a one-page resume is preferred, and the experience section should be thoughtfully crafted. Our hiring team will want to hear about the work which you significantly contributed to, or led. Projects that you can discuss in depth and mention by name will be the best reflection of your work. I recommend finding a suitable and succinct name for your project if you don’t already have one, since it makes for good talking points for several rounds in the interview and it makes it easy for the interviewers to recall your work. The rest of the experience can be through bullet points.
Resume-crafting is a skill and it can take some work to get it right. Resume Analyzer, a side project I helped develop, will provide feedback on your resume using AI.
The purpose of this initial round at Attentive is for our recruiter to get to know you better. We value an approach where you can share your career goals, highlight your ambitions, and discuss your previous projects in detail. Come prepared with an introductory speech to sum it all up succinctly. It’ll help give them a good idea of you, your work, and your ability to effectively communicate.
To make a memorable impression and stand out from the crowd, pick a recognizable project from your resume and discuss your technical contributions, challenges and deliverables in some detail. Make sure that the experience you mention is also reflected in your resume – it can help to make your profile more recognizable. You should also describe your career goals so we can better understand you and identify the best team and role to suit your aspirations.
Feel free to share your compensation expectations. If you’re unsure about what to expect, you can do market research to gauge what other developers are paid in the industry. The compensation expectations do not need to be based on your last compensation, but on the role in question. Sometimes people think that if they ask for less money, they’re more likely to move forward in the interview process. This is a misconception. At Attentive, we'll never ask what you've earned in a previous role; our goal is to provide competitive rates above the market's average, including equity compensation.
At Attentive, the engineering screen is as much about communication as it is about your ability to code a solution or your understanding of system architecture. The engineering screen has two parts - a coding screen and a project retro.
In the coding screen, our team is assessing your ability to navigate and solve a problem—we’re looking for you to walk us through your thought process. Feel free to ask clarifying questions to define the scope of the problem. Though it may seem like this round focuses on proving your technical skills, this stage is in fact crucial to proving your ability to work well in a team. The ability to communicate your ideas with others will position you as a strong collaborator and a good team player.
The project retro section of the engineering screen primarily focuses on discussing a past project of your choosing with the interviewer. In this section, be prepared to briefly explain the problem statement, the technologies you used, and justify your technical decisions. We want you to dive deeper into the architecture solution of your project using whiteboard tools like Miro. During this section we want you to talk about the business impact of your project and cite stats while doing so. Sprinkling in details about your role will help us get a good picture of your level of involvement. The intention here is to understand your involvement and understanding of the architecture of the technical solution of your past project.
You may be asked about challenges that you faced in the project. For this, pick a challenge where you’re the hero of the story, and highlight what steps you took to overcome it. It's not always clear but solving decision paralysis and clarifying requirements are all part of the technical process, and so you don’t always have to pick a design or code challenge to discuss.
We emphasize transparency—you’re building a rapport with somebody who may end up being your manager. Don’t make up things that didn’t happen, but talk freely about the things that did.
The onsite interview at Attentive has a combination of coding and system design rounds plus an engineering manager round. However, it is equally important for us to figure out if you are a good cultural fit for us. We evaluate this during our interactions with you throughout the interview and thus, communication is key to almost all the rounds.
The coding round(s) during the onsite are very similar to the engineering screen.
The system design round is a very technical-communication-heavy round. The intention here is to understand your ability to architect technical solutions out of abstract or vaguely defined requirements. Given a vague problem, an ideal candidate should be able to define the scope of the design by asking clarifying questions. You are also allowed to make certain assumptions as long as they are clearly communicated. Make quick back-of-the-envelope calculations to show that you can quantify the problem. Explain your choice of technologies throughout the solution. There are often no perfect choices in architecture, so it’s all about understanding the trade-offs you are making and walking the interviewer through them. If you aren’t sure, evaluate the options you have out loud, so that the interviewer can understand your options. You know that a system design round is going well when the interviewer feels like a collaborator.
In almost all of the rounds, behavioral assessments are implicit without explicitly saying so. The interviewers want to ensure that you are someone that would be excited to join the team and vice versa. If they recommend a solution, or poke a hole in your design, how do you handle that? For us, the ideal candidate is confident, able to present and justify the technical choices, but also take feedback, change the design and improve on it, when required.
Our team ultimately wants to see if the candidate can navigate the complexities of working in a fast-paced startup environment, effectively work with people from other job functions, and if they are able to work both independently and as part of a team.
We understand that the technical interview process can be complex and nerve-racking. We strive to make each step as transparent and supportive as possible, helping candidates present their best selves and find a role where they can thrive.
Want to join our innovative team? Check out our open roles!