Product Engineer

Jordan Sherer
Jordan Sherer / September 12, 2017

Hi there!

We're looking for a Product Engineer to join the engineering team at Zapier. Want to help engineer a simple product that allows anyone to do complex, incredible things with the world's APIs? Then keep reading!

We know applying for and taking on a new a job at any company requires a leap of faith. We want you to feel comfortable and excited to apply at Zapier. To help share a bit more about life at Zapier, here are a few resources in addition to the job description that can give you an inside look at what life is like at Zapier. Hopefully you'll take the leap of faith and apply.

Even though our job description may seem like we're looking for a specific candidate, the role inevitably ends up tailored to the person who applies and joins. Regardless of how well you feel you fit our description, we encourage you to apply if:

You care deeply about building products that simplify the lives of millions of people through automation.

About You

You love building new things. Most of what you’ll do each day is guiding, building and maintaining Zapier's core workflow engine and platform. This is a full-stack position, so you’ll be working across the entire Zapier codebase. You'll have a primary focus on backend development in Python. You'll also be working with frontend tech, our developer platform and more. Zapier is built on Django, React, node.js and AWS. We use modern tools, which means you’ll have the opportunity to work with software like Memcached, RabbitMQ, Zookeeper, Docker, Redis, Jenkins, Puppet, Ansible and much more.

You have worked with teams before on large Python projects. You’re also familiar with frameworks for several languages like Django/Flask and React/Backbone.js. You understand how to design systems in a distributed manner across hundreds (and even thousands) of servers - we handle 100s of millions of API calls every week and are growing fast.

You love shipping to customers. Your engineering projects will focus on understanding customers' needs and translating those needs from product specifications into functional, production ready code. You'll have the opportunity to ship code daily that will be used by millions of people.

You love doing things efficiently. At Zapier, we believe in “Don't be a Robot, Build the Robot.” We build systems and processes that let us scale our impact to be larger than ourselves.

You love learning. Engineering is an ever-evolving world. You enjoy playing with new tech and exploring areas that you might not have experience with yet.

You love to set your own course. You will have a team meeting and a one-on-one meeting every week where you can help direct the course of your projects. You'll have a direct impact on what we work on next.

About Zapier

For the past five years, Zapier has helped people across the world automate the boring and tedious parts of their jobs. We do that by helping everyone connect the web applications they already use and love.

We believe that there are jobs a computer is best at doing and that there are jobs a human is best at doing. We want to empower businesses to create processes and systems that let computers do what they are best at doing and let humans do what they are best at doing.

We believe that with the right tools, you can have big impact with less hassle.

We believe in small teams. Small teams are fast and nimble. Small teams mean less bureaucracy and less management and more getting things done. Our normal team size is between 4 and 6 people.

We believe that credentials don't say everything. Our CTO has a finance degree. Our CEO has an engineering degree. Our CPO has a mechanical engineering degree. What you love doing is way more important than the credentials you have.

We believe in a safe, welcoming and inclusive environment. All teammates at Zapier agree to a code of conduct.

Things You'll Do

Zapier is a startup, so you'll likely get experience on many different projects across the organization. That said, here are some things you'll probably do:

  • Help scale a fast-growing and unique system - our workflow engine connects with hundreds of APIs across thousands of servers
  • Plan and build product features - directly impact how our customers can be more productive
  • Improve our developer platform - directly impact the way partner devs add their apps to Zapier
  • Ship code to millions of users every week
  • Work with hundreds of different API integrations
  • Give back to the community via open source and blog posts
  • Help customers via support to ensure they have the best experience possible

You’ll also have the opportunity to specialize in a variety of areas of the Zapier codebase, including core product or platform development. Focusing on a specialization will not limit your area for growth at Zapier as each engineer brings a unique perspective and can contribute differently in all areas. We encourage participation and will frequently have engineers contribute across teams to assist in projects.

The Whole Package

Location: Planet Earth

If you want to work remote, that's cool. If you want to work near others, that's cool too. The Zapier Engineering team has members across the United States, Canada, UK, and beyond.

Compensation:

  • Competitive salary (we don't use remote as an excuse to pay less)
  • Great healthcare + dental + vision coverage for U.S. team members
  • 401k retirement plan with 4% company match for U.S. team members
  • We take care of our International team members too, but details differ
  • Profit sharing
  • 14 weeks paid leave for new parents
  • 2-3 annual company retreats to awesome places

Pick your own equipment. We'll set you up with whatever laptop + monitor combo you want plus any software you need.

Unlimited vacation policy (plus we insist you take at least 2 weeks off each year—this isn't a vague policy where unlimited vacation means no vacation).

Work with awesome companies around the world. We partner with the best software makers in the world and you'll constantly get to interact with people from great companies.

Set your own destiny. Grow as an individual and professional.

How to Apply

Applying is fairly straightforward, but a bit unique. Creativity is certainly encouraged. To jump start the process, we ask a few questions we normally would ask at the start of an interview. This helps speed up the process and lets us get to know you a bit better right out the gate. Make sure to answer each question, and include all requested resources in order for your application to be considered. Have fun with them. :-)

Complete this form with answers to the questions below.

  1. Tell us about your qualifications for this role.
  2. Tell us about the most difficult API/library/software bug you've squashed (we love troubleshooting stories).
  3. Tell us about an engineering solution you've built that you're proud of.
  4. Tell us about the largest deployment you've worked on.
  5. Tell us about your favorite technology to work with and why.
  6. Tell us about an industry trend you're excited about.
  7. Share some code (preferably JavaScript) that you’ve written. You can include a link to a GitHub, GitLab, or other public code repository. Or provide us with a 500+ Line of Code (LOC) sample via Dropbox, gist, or other link to help us get a feeling for how you write code.
  8. We are currently hiring for two main areas of Zapier, the core product and the developer platform. Engineers working on the core product focus on end users, building features for the Zap editor, team accounts, and task history. Engineers working on the platform focus on partner developers, building features related to creating and supporting apps on the Zapier developer platform. You probably have lots of questions about each of these teams, and there is always a lot of opportunity to move across teams. Having said that, would you prefer to focus on the core product or developer platform? Please briefly explain why
  9. Zapier operates at scale and does some pretty interesting things, rank the following in order from what you'd do best, the first being the best. Disregard priority or importance considerations and focus on your skillset and excitement:

a. build a distributed service that executes 30k untrusted node.js scripts every minute
b. build a persisted cron-like tool to handle dispatching 100k jobs per minute
c. create a real-time system to alert us of subtle or unexpected API misbehavior
d. write a user facing tool that can categorize & diagnose common API issues across 500+ APIs
e. implement a new feature that spans both frontend/backend code
f. build a custom database to help aggregate and analyze hundreds of millions of events per day

  • Optional:Share anonymously some demographic information about yourself some demographic information about yourself to help us better track trends related to the backgrounds of candidates interested in working at Zapier in order for us to build a team that represents the users at Zapier and the broader world population.

Finally, wait for us to reply. We reply to everyone, even if we're not a good fit.

Apply Here

Zapier is an equal opportunity employer. We're excited to work with talented and empathetic people no matter their race, color, religion, national origin, sex, physical or mental disability, or age. Our code of conduct provides a beacon for the kind of company we strive to be and we celebrate our differences because those differences are what allow us to make a product that serves a global user base.