Decoding the Interviewing Process for Engineering

Raluca Groues
Outreach Prague
Published in
10 min readJan 9, 2024

Stepping into the world of Outreach is like setting off on a new adventure. But like any exciting journey, it’s best to be prepared, especially when it comes to the interviewing process.

We fully recognize that our recruitment process is an investment of time and effort on both sides. We want this blogpost to serve as your personal roadmap to success through it. We’ll walk you through the whole process — the technical aspects, what to expect, conversations about your experience, and more.

Step 1: Before the Interview — Setting the Stage for Success

Shape Your Interest

Demonstrating your genuine motivation and interest in the role and company is a crucial first step. It’s expected that, before the first call, you’ve reviewed the job description, checked our company’s website, and familiarized yourself with our product. Before your interview with us, you can take some time to research your interviewer and your potential future colleagues on LinkedIn, as this can provide valuable insights into their background and the company’s culture.

Remember, the interview process is a two-way street. We will be assessing your fit for Outreach, just as you will be evaluating whether we align with your career aspirations.

Image from makeameme.org

Company Values: What do we all have in common?

During your preparation, dedicate some time to go through our company values. Outreach values are integral to how we operate and create innovations together, and we’re keen on understanding how your experience aligns with them:

  • Play full out: We are hungry craftspeople who play full out. We operate at the edge of our abilities with high energy, grit, curiosity, and enthusiasm. We celebrate our wins and learn from our losses, constantly elevating our craft and inspiring others to do the same.
  • Operate from a mindset of abundance: Our mindset of abundance empowers us to see infinite possibilities in the hardest of challenges. Like a CEO, we own our destiny and focus on the parts we can control. We believe in our purpose and execute on our mission with perpetual optimism, passion, and rigor.
  • Win impeccably: We like to win but not at all costs. We know when to say no. We are courageously candid and value truth over looking good, keeping the peace, or short-term gain. We have each others’ back by delivering on promises, not by covering up failures. When we lose, we do so quickly and with grace.
  • Elevate the customer: We elevate our customers by improving the lives of sales professionals and helping their companies solve their biggest business challenges. Every decision, project, investment, and action is viewed through the lens of adding mutual value to our business and to our collective customer experience.
  • Rally the culture: Our high-performance culture thrives on culture adds, not culture fits. We show up as our authentic selves and use our unique superpowers to rally the culture in service of our mission. We know that our collective strength — and the strength of the sales profession we serve — lies in including, celebrating, and leveraging diverse experiences and perspectives.

When speaking with us, you’ll encounter situational questions that prompt you to recall your experiences. Through your answers, we can evaluate your problem solving skills and how your “work-style” aligns with our principles.

The situational questions are asked throughout all the interviewing stages: the recruiter “screening” interview, the conversations with our managers, and they are also asked during the technical interviewing stage.

Crafting Your CV

Think of your resume as your introduction to us! Make sure it’s well-structured and representative of your experience. While we don’t place great emphasis on cover letters, a well-crafted CV speaks volumes. Avoid overloading it with irrelevant information, and steer clear of unconventional fonts or colors. Keep it “clean”, concise, and professional. We expect some bullet points that will describe the projects and technologies that you worked with.

Screenshot of GIF from Tenor

Tailor your CV to the job description, showcasing the relevant experiences that make you a strong match for the role. When it comes to technologies, be honest and precise. Highlight only those technologies that you’ve genuinely worked with, but don’t hesitate to mention those you would like to have experience working with.

Step 2: Pre-screens with Recruiter & Engineering Manager

Our recruiters are reviewing all the incoming cv-s and they will be eager to connect with the most relevant applicants. But before you get to plan a conversation with our recruiter, we want to give you time to prepare. Our recruiter will send you an email inviting you to schedule a chat. This will allow you to choose a time that suits your schedule, ensuring you have an opportunity to learn more about us.

Once the initial screen with the recruiter was passed successfully, you will typically be invited for an interview with an engineering manager or director. Both of our first conversations aren’t just traditional interviews. Think of them as an opportunity for us to get acquainted.

By going through your experiences together, we’re focused on determining that there’s a natural “fit” between you and Outreach, and we always enjoy having a dialogue with our candidates. We’re curious to learn more about the person behind the CV and we are always happy to tell you more about our company. Our recruitment team has a clear sense of what our teams need and how we work. Therefore, don’t miss the chance to ask more questions about the potential team you may be working for, the product itself, the technologies we use, etc.

Step 3: Technical Interviews: More than Just Code

All our technical interviews are done using Code Signal. We assess: Coding, Computer Science Fundamentals, Software Architecture & Systems Design, Creative Problem Solving, Algorithms and Data Structures — all wrapped up in our interviewing process cycle which contains typically 3 specific technical interviews:

Job Exercise — Live Coding Session

In this interview, you’ll work on a coding task. It’s not about rushing through it; instead, focus on creating a clean and functional code in the language of your choice. Ask questions, ensure you understand the problem to be solved. Don’t forget to handle different scenarios and run tests to show your solution works well.

Algorithms and Data Structures — Problem Solving

Here, you’ll tackle relatively general (sometimes ambiguous) problems. You’ll need to break down the problem, refine its scope, outline some amount of design/architecture, then deep dive into a technical discussion on some of the topics related. The problem may require some coding or pseudo-code solution.

Design — System Design/ Design Patterns/ Distributed Systems

Expect questions about how you balance different options or choices. Chances are you will be asked about some specific tech stack you used so we learn about your experience designing similar systems and the decisions made based on considerations (scale, throttling, etc.). Think pseudo-code (white boarding / architectural design).

Extra Interviews (for Specific Roles)

For some particular roles, we may include “a deep dive on past experience” interview discussion, which is mainly focused on behavioral questions. Such roles make decisions for the company, so we are looking to gain knowledge from your experience to confirm you are the right person to do so for the team.

In rare cases, we may get back to the candidate and ask for another round of one of the tech interviews. And that is because we believe the candidate definitely has great potential, but perhaps one of those previous interviews lacked the mindframe to perform at their best. This “extra round” is always based on the conversation with the candidate and the feedback gathered from the interviews already taken.

Understanding Our Philosophy behind the Interview process

You don’t need to produce some groundbreaking lines of code during an interview, but it’s essential to showcase your ability to write clean code, refine your solutions, and troubleshoot effectively. But it’s not just about providing some solution; it’s about demonstrating your problem-solving strategy.

Sure, we want to see that you can write solid code, but equally important is how you approach the problems and how you communicate during the process. Can you validate your assumptions? How do you tackle the corner cases? Are you capable of discussing the pros and cons of different approaches, especially when it comes to architectural choices in complex systems?

Language of Choice

During the coding interviews, we encourage you to choose a programming language in which you’re most comfortable. The language itself isn’t the primary focus; rather, we want you to feel at ease and showcase your skills in the best possible way. Your choice of language should be a tool to express your technical capabilities — whether it’s C, C++, C#, Python, JavaScript, Go, TypeScript, Ruby on Rails, or any other.

Backing Up Your Choices

One crucial aspect we’re interested in is your ability to back up your decisions with sound reasoning. Whether it’s choosing a particular algorithm or opting for a certain architectural pattern, we’re looking for your explanation. Your reasoning depth and breadth gives us insights into your experience, current tech knowledge, and decision-making abilities. We want to understand not just the final result, but the thought process that led you there.

Facing the Unknown

Technical interviews aren’t just about solving familiar problems. They also reveal how you tackle the unfamiliar. When confronted with a problem you’ve never encountered, your approach tells us a lot about your problem-solving style. Are you methodical or more spontaneous? This can vary based on your experience, and it’s perfectly fine — we’re just assessing how you handle new challenges.

And What About Collaboration?

There should always be a dialogue between you and our engineers. They might redirect the conversation to explore certain aspects or offer hints if you seem to be diverging. The interviewers are closely tracking your responses while also providing feedback and guidance. This is a two-way street; be open to a productive exchange of ideas and insights.

Tips for Preparation

We made a short list of suggested places from where your technical preparation can start, but don’t limit yourself with them:

Performance Expectations

It’s natural to wonder if every interview needs to be a pinnacle of achievement. To clarify this, let’s delve into our perspective on your performance across the interviews.

In the majority of cases, excelling in at least two out of the three technical interviews is essential. The minimum criterion is that two interviews should be strongly executed, while the third could be considered good or even satisfactory.

Diverse Levels of Technical Interviews

You might also question if all three technical interviews hold equal importance. There’s indeed a distinction, primarily based on your role as a frontend or backend engineer:

If you are a Frontend Engineer: A significant emphasis is placed on the coding exercise, encompassing 1.5 hours (while the other two interviews last 1 hour each). The coding exercise is the cornerstone for frontend engineers. Excelling in this area is pivotal, even if your performance in the other two interviews is commendable. As a frontend engineer, you might not be expected to excel in backend areas, but our distributed systems interview still holds value. It reveals your understanding of the broader system, highlighting how your frontend work intersects with backend functionality.

If you are a Backend Engineer: For backend roles, interviews are shaped differently. We dedicate 1.5 hours to the distributed systems (system design) discussion, while the other two interviews each span 1 hour. The content and focus vary considerably. Backend interviews delve into the intricacies of distributed systems, architecture, design patterns, databases and data centers. This interview holds paramount importance for a backend engineer, offering a deep exploration of their expertise.

Algorithmic Thought Process: Regardless of your specialization, be it frontend or backend, the algorithms interview centers on your thought process. While providing coded solutions is ideal, the primary focus is on comprehending your systematic approach to problems. We are keenly interested in understanding your reasoning, decision-making, and strategic thinking.

We Offer Feedback!

Once you’ve completed the technical interviews, we are able to share some feedback with you, regardless of the outcome. You have two options for the feedback process: to receive a brief email as an overall response or a dedicated call with us.

Our interview process often brings out some “blind spots” the candidates were unaware of and it provides clarity regarding the technical level of the candidates to us. For instance, some candidates aiming for promotions might assume their current company is hindering their progress, when, in reality, some specific skill gaps might be the cause.

In return, we also seek input from the candidates about their experience, preparedness, and suggestions for the process improvement. In essence, our feedback is a chance to grow, learn, and enhance our process together.

STEP 4: Interview with a Manager

With positive feedback from technical interviews, we gain a solid grasp of your technical prowess. But our journey doesn’t conclude here. Next comes an interview with a manager, mostly focusing on our company’s values. It’s also a “last chance” for you to address any lingering questions from the previous stages.

The final interview is a vital part of your exploration. Throughout the process, you meet various team members from different teams, fostering a rich interaction. Our interviewers represent a mix, making your experience diverse. This final round is your opportunity to clarify queries and delve deeper into the role’s nuances.

Final Feedback and Offer

After this manager-level interview, we offer our final feedback. Until the entire process concludes, it’s a balanced evaluation. If the final interview reflects positively and we understand your level well, we provide conclusive feedback and initiate the discussions about an offer.

In essence, Outreach’s interviewing process is a rewarding journey of mutual discovery. Open feedback, transparency, and collaboration form the foundation, contributing to a comprehensive evaluation that resonates with our inclusive culture.

Learn More about Us and Check Our Open Positions here.

--

--