Interviews have traditionally been thought of as an unpleasant but necessary experience. However, interviews are the clearest opportunity for companies to articulate and demonstrate their company values, culture, and approach. Interviews should allow candidates to demonstrate their own way of solving real-world problems as well as learn more about what is it like to actually work for Pinterest
Real solutions, no gotchas
Our questions are made specifically to avoid “gotcha” moments
- We want to challenge candidates to show diligent critical thinking skills
- Give candidates the opportunity to show us their best work
- Look for problem solving skills that show candidates can tackle real-world technical challenges
What’s next?
You’ll hear from your recruiter in the days following to discuss the outcome.
- If there was a match for the role (congrats!) they’ll let you know the next steps, including compensation and specifics, and you should feel free to ask them anything.
There’s not just one type of engineer
Different people have different interview styles
- As long as you solve the technical challenges and clearly explain your solution, you should feel free to talk as much or as little as you’d like
- If you’re coming from a non-traditional background, going through a full software interview loop isn’t the only option – we also provide programs like our apprenticeship program which still does rigorous vetting but is better able to identify passionate, motivated people
Domain-Specific
Assess the interviewee’s skills and expertise on a given domain
- Broadly, this may be broad (like backend programming) or specific (like data processing systems)
- It may also require you to use the programming language of that domain when applicable
The details
There are three main steps to conducting an interview: recruiting, phone screen, onsite interview
- Recruiter call
- Phone screen
- You’ll speak with a Pinterest engineer for about 45 to 60 minutes
- Onsite interview: you’ll come to the Pinterest office to participate in (usually) five interviews spread across the following types:
Lunch Interview / Hiring Manager / Values
The main goal is to see how your values align with our company values.
Data Structures / Algorithms
You’ll be asked to solve a general programming question involving real-world data structures and algorithms you may use to solve problems in your day-to-day work.
- Practice
- Brush up on your CS fundamentals, data structures, and algorithms, and make sure you’ve practiced in your preferred programming language(s).
- Resources
- Use these to build intuitive pattern recognition as you see more samples of the underlying subproblems and the algorithms and approaches commonly used to solve them. The goal is to use those building blocks to compose solutions to more complex, unique problems you may see in your interview.
Architecture / Systems Design
Requirements: Be sure you fully understand the problem, its final high level goal, and technical and non-technical constraints
- Success: What does success mean for your solution, and what are you optimizing for? How would you measure success?
- Brainstorming: There are many approaches to solving these questions. First, brainstorm many possible ways to solve the problem from the most simple to the most optimal
- Trade-offs: Clearly explain the pros and cons between different possible solutions
- Considerations: Make sure you have thought through and explained the different aspects of your solution