Y Combinator

Not your average fixed point combinator.

Product Engineer, Startup School

$130k - $280k
Remote (US)
Job Type
3+ years
Apply to Y Combinator and hundreds of other fast-growing YC startups with a single profile.
Apply to role ›

About the role

Startup School is Y Combinator’s free, online platform for early-stage founders. 

In the last year, we've moved the whole startup course online, started a new track for aspiring founders, and launched a co-founder matching platform

We have a lot more exciting stuff to deliver, so we're looking to hire a full-stack product engineer to join our team. This is a great role for someone who loves helping startups and wants to own and build projects from 0 to 1.

We work primarily in Ruby on Rails and React (learning on the job is fine), and we spend a lot of our time coding. That said, we encourage everyone to participate in all of YC -- join our batch talks and events, help out with Demo Day, and speak up on the projects you'd want to work on.

The YC software team you'd be joining has 10 people with lots of collective years of start-up and big company experience, so you'll get the best of both worlds: moving fast and shipping and strong teammates/mentors to help you learn. Startup School is currently a team of 3. We're open to folks 2+ years out of school or even those with 10+ years of experience. Lastly, the work-life balance is great, and you get to work with people across the company.

If this sounds like an interesting opportunity, we welcome you to apply!

Location and benefits

  • Our team is 100% remote for the time being, however, we have offices in Mountain View.

  • Full benefits package including medical, vision, and dental benefits, STD/LTD, life insurance, commuter benefits, flexible spending account, 401(k) + 4% matching, generous parental leave, and flexible sick and vacation policy.

Notice for Colorado applicants as required by sb19-085 (8-5-20)

Pursuant to the San Francisco Fair Chance Ordinance, we will consider for employment qualified applicants with criminal history in a manner consistent with the requirements of this law.

About the interview

We’re looking for a product engineer who enjoys talking to customers, has experience iterating and shipping quickly, and exhibits a strong sense of ownership and autonomy. Our engineers largely define and drive their own roadmap, and use their product sense to define and ship an MVP. (Much like how we tell our founders to build their own startups.)

Our interview process is designed to find these kinds of engineers. Moreover, we try to ask questions that are relevant to the types of products we build -- mostly full stack work, with a bit of database, analysis and customer interaction. In most cases, the interview process we have is language agnostic, as we offer the opportunity to learn our stack (Ruby on Rails and React).

Below is what to expect in our interview process. If you have any questions, email me (Cat) at catheryn@ycombinator.com.

Technical Screen

Our initial screen is intended as a first pass to assess basic programming skills.

String manipulation. (Cat or Tommy) This exercise involves some string manipulation and comparison. You'll be given a text file to read in, the signature of a function, and example input/outputs.

You'll be using your own computer, and using whatever language/environment you are most comfortable with. You’re also free to google for syntax. We believe this helps developers feel more comfortable during the process, and avoids any learning curve or limitations of 3rd party platforms (Coderpen, etc.).

Interview Process

The interview process is a deeper dive into technical abilities, product thinking and overall fit. For the “fit” portion, we are again looking for ownership and autonomy, but we also dig deeper into communication. This is evaluated throughout the process -- in how you communicate your approach, solutions and overall thinking.

Each interview is 1 hour long, with 45 minutes allocated for the technical portion, and 15 minutes for Q&A. In general, it helps to have read a bit about YC, PG’s essays on startups and have tried the products we build. (Though that might not be possible in all circumstances.) The process is the same for most of our technical roles, and gives you the opportunity to ask questions throughout.

Each interview in more detail:

  • Whiteboard. (Zach) Similar to the technical screen, we will ask one or more short language-agnostic coding questions, and you are welcome to use whatever development environment you prefer. We are interested in hearing how you approach the problem; seeing how you write, test, and debug the solution; and then discussing the tradeoffs of your solution, and how they turned out.
  • System design. (Katherine) We’re looking for familiarity with building systems, and in particular ones that are based on relational databases. It’s something like "how would you build Reddit", walking through objects and relationships, and going into more complexity as needed. We also talk through users and metrics a bit.
  • Debugging / API design. (Coco) Working with existing code is required for most engineers, so we’ve built an interview to test for it. You’ll be given code to debug and fix, and communicate your process of doing so. Please let us know your programming language of choice beforehand (we have Python, Javascript, and Ruby). If the debugging problem has issues (getting it to run on your local), we have a backup API design question.
  • Product design. (Jared) Engineers operate fairly independently at YC, and we’re looking for the ability to translate an idea or spec into a real product. You’ll be asked to design a web application that solves a given problem and draw up a mock UI (using e.g. Zoom Whiteboard). We’re interested in hearing how you think about the use cases and view tradeoffs of your solution.

We try to schedule two portions of the interview at a time. We have found that going through the entire process gives us enough to make a go/no-go decision. We offer feedback to candidates who request it, and relate the feedback to the skills, qualification and interview process above.

Lastly, all candidates end up talking to two more people after the technical rounds: our HR team (to talk about compensation expectations, benefits and other general YC matters) and YC’s President Geoff Ralston, who makes sure to meet every prospective employee of YC.


The typical interview process takes a month from start to finish. This tends to be mostly based on our eng team’s availability. That said, we have moved more quickly and look to accommodate candidates who might have a short timeline or competing offers. The more information you can share about your situation and where you are in the process, the more we can either attempt to expedite/match, or save you time if we cannot.

Why you should join Y Combinator

Y Combinator has a small ~12 person team that makes the software that runs YC. Hardly any investors write software, but YC was started by programmers so it's natural for us to solve our problems that way. We believe our software is a key competitive advantage and we are investing aggressively in new software products.

YC has ambitious plans to create more innovation in the world, and the only way to reach that level of impact is to scale through software. What we’ve built so far is probably only 10% of what we will eventually need.

As a member of the software team, you'll get full access to the YC program, just like founders do. You'll learn the ins and outs of how YC works, and you'll get to follow and learn from hundreds of companies. You'll meet some of the most successful people in the startup world and get exposed to the best startup ideas. And of course, if you ever want to start your own company, you’ll learn a lot about that from working at YC.

Y Combinator
Team Size:100
Location:Mountain View