How we hire engineers
by Parima Shah
Interviewing is hard. As an interviewee, it’s difficult when you go into an interview cold, not understanding what exactly you will be evaluated on. Here, at Outschool, we want to be transparent about what we are looking for; we want to set candidates up for success so they can put their best foot forward. We try to have a balanced, pragmatic, and inclusive interview process.
Outschool’s engineering team is a collaborative group of engineers that is focused on getting work done. We are growing our team as the product continues to scale. We are looking to add engineers to our team that:
- Code well: We’re looking for engineers who can problem solve using readable, simple logic..
- How long does it take someone to find their own bugs?
- Is the individual open to learning new concepts and new tools?
- Do they have the ability to refactor and scale up existing code?
- Are Pragmatic: When designing a system, there are trade-offs to consider. We are looking for an individual who can understand requirements, break down a problem into pieces based on priority, and plan to pragmatically deliver the solution. There is a delicate balance between perfection and getting things done. An experienced engineer can walk this thin line and reasonably discuss trade-offs.
- Have High Standards: We, at Outschool, are all very passionate about our craft and hold ourselves to the highest of standards. We hope that whoever joins our team feels a sense of shared accountability towards the code base and towards themselves. As a fast-paced, growing start up, we’re looking for engineers that can take ownership of a problem and find the best solution.
- Are Kind: When working as a team, it is fundamental to be able to compassionately give feedback and well as receive constructive feedback. Strong candidates use their self and emotional awareness to raise themselves and others up.
We want to make sure that we are hiring engineers for the work that we do at Outschool. We won’t ask you to code on a white-board or solve a riddle. Our interview questions will mimic what a typical full-stack engineer works on day-to-day. In fact, the questions developed by our technical team are extremely practical and based on actual features, problems or bugs that they have faced during development. Each question has been vetted and gone through numerous iterations. We are continuously adjusting technical discussions and exercises based on feedback from candidates.
Our technical phone screens are completely open-book. In fact, you are encouraged to look up documentation, ask questions, and work with your interviewer as a teammate. We want to get an idea of what it would be like to work with you, not just test your knowledge of random things. We value pair programming so the more interactive you can be with your interviewer, the better. With that in mind, be upfront where your knowledge might be lacking or if you have never done something before. As long as you are open to learning new things and put in the effort to give it a try, that’s all we’re looking for.
Interviews are expensive - for both the interviewee and the interviewer. The interviewee takes a day off work for the on site interviews and the interviewer spends hours preparing, interviewing, summarizing, and making a decision. We want to make sure that we set each candidate up for success. That’s why at Outschool, we aim to reduce stress and friction while making sure everyone gets the most out of the interview.
- First Steps
The first step for candidates who apply directly through our site is the resume review. Recruiting and the hiring managers will go through each application to review details about the candidate. They look at their years of experience, overlap with our tech stack, any specializations (frontend/backend/full stack experience), work type experience (mostly contract/consulting vs team centric work), any indicators of being a mission-driven individual, and, finally, work authorization information. From there we will decide whether or not to move forward to the technical phone screen with an engineer.
- The Technical Screen:
If there’s a mutual fit, we’ll ask you to meet with one of our engineers for a technical phone screen.
We will ask you to join an engineer on a live pairing session, where the two of you will work together towards solving a problem that is pertinent to Outschool (no brain teasers!). The goal of the pairing session is to help the interviewer understand your thought process. The primary things the interviewer will be evaluating are your:
- Ability to follow instructions
- Ability to fill in gaps when requirements are ambiguous - don’t be afraid to ask clarifying questions!
- Ability to solve the problem completely
- Attention to detail and to make good decisions
- Consideration of performance and testing
- The Onsite:
The next step is to schedule four to five 45-minute interviews (three of which are technical). You’ll have the opportunity to speak about your previous work experiences - your accomplishments that you are proud of as well as learnings through your career. You’ll be able to share your thoughts on what you are passionate about, challenges that you would like to sink your teeth into next. You will have discussions on system design with our engineers, discussing trade-offs and design choices. You will have the opportunity to show off your expertise through a variety of technical questions that gain understanding of your front-end, back-end, and problem solving skills.
The technical questions are broken down into the following broad categories:
- Problem Solving: This set of questions assesses how you approach an ambiguous problem.
- System Design / Relational Databases: These questions help us gain a better understanding of your full-stack experience and work with full stack technologies, like databases.
Tips for Interviewing with us:
- Talk through the problem - we want to see how you work with others. Talk through possible trade-offs.
- Working solution that’s readable and concise doesn’t need to be perfectly clean/elegant.
- Keep the problem statement in mind, look at it holistically, and avoid going down rabbit holes.
- Be mindful of the time, and plan your solution.
A candidate can excel at every technical question, and still not be the right person for our team. At Outschool, we’ve put a lot of thought into what’s important in our culture and what makes us different.
We want to add people to our team that embody and add to our cultural values:
- Stand for learners:
We put learners first ahead of societal or institutional expectations. We listen to kids, respect them and stand up for them. We trust the next generation’s new perspective. As Outschool engineers, we are passionate about building delightful (dare I say magical) tools for kids to fall in love with learning.
- Bring others in:
We believe communal effort towards shared goals drives the best results. We look for ways to creatively amplify each others’ work. We involve each other, help each other contribute, and share our strengths with others. We believe our community benefits when people with different backgrounds and perspectives are seen. We develop authentic human connections so we can move further and faster together.
- Remix our work:
We start small and intentionally iterate so we can test our assumptions and learn quickly. We pay attention to the impact of our work and continuously seek opportunities to adapt and improve. We build on success but aren’t afraid of deconstructing and reassembling if needed.
- Embrace Challenge:
We speak up, try new things, drive change and sometimes fail. We are lifelong learners who strive to improve our skills, expand our knowledge and give and receive feedback. We see the challenges in our work as an adventure with opportunities to learn, succeed and have fun. We both celebrate progress and acknowledge imperfection.
We’ll have an interview during the onsite where we’ll talk about your work experiences and philosophies. You will also get a chance to dive into Outschool’s culture. Ask any questions you have about working at Outschool; we want to make sure you feel the fit is right!
We all know that hiring is hard. Here at Outschool, we want to be transparent about our process and set you up for success. If you want to be a part of our team, you now know what to expect!