Frontend Engineer

Bryan Helmig
Bryan Helmig / November 5, 2015

Thanks for taking a look here, but this role has been filled. You can check our other openings and keep an eye out there for future openings too!

Hi there!

We're looking for someone to join the engineering team at Zapier. Interested in creating a simple product that allows anyone to do complex, incredible things with the world's APIs? Then read on…

About You

You love building and learning new things.

Most of what you'll do day-to-day will involve working with our frontend, design and UX teams to create amazing and intuitive experiences that make it effortless to connect different apps together. We use some pretty cool tech - we're transitioning our Backbone.js frontend to a modern React + Redux architecture and having a lot of fun with it. We love ES6 and are embracing a functional approach to problem solving.

You've worked with teams before on large single-page apps - the frontend framework or language doesn't matter much to us - instead, you understand how to manage complexity and balance technical limitations with product requirements. Simple and sustainable code, performance and correctness are all top of mind for you.

You love working with customers to help understand their needs and translate a product spec into functional, production ready code.

You love doing things efficiently. At Zapier, the work you do will have a disproportionate impact on the business. We believe in 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. We're always there to support you, but we only have one fixed team meeting each week and one-on-one meetings every month and then we go make things happen.

Things You Might Do

Zapier is a startup, so you'll likely get experience on many different projects across the organization. Here are some things you'll get a taste of:

  • Build and maintain new user facing features or overhaul existing ones.
  • Research, guide and execute broad frontend architecture changes.
  • Work with complex and varied data structures (APIs be crazy!).
  • Ship to hundreds of thousands of users every day.
  • Work and ship product independently.
  • Share what you know and learn either one-on-one or with lightning talks to the group.
  • Give back to the community via open source and blog posts.
  • Help customers via support to ensure they have the best experience possible.

About Zapier

For the past four years, Zapier has been helping people across the world automate the boring and tedious parts of their job. 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.

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.

The Whole Package

Location: Planet Earth.

If you want to work remote, that's great. If you want to work near others, that's cool too. Our team is distributed across California, Colorado, Illinois, Michigan, Minnesota, Missouri, Pennsylvania and the UK because it lets us work with the best people. You don't have to be located in the USA either. Some of the team live in the United Kingdom, Thailand, New Zealand and Australia. You just have to be talented!


  • Competitive salary (we don't use remote as an excuse to pay less)
  • Great healthcare + dental + vision coverage
  • Retirement plan with 4% company match
  • Profit sharing
  • 2-3 annual company retreats to awesome places
  • 14 weeks paid leave for new parents

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-life balance is really important to everyone at Zapier - we believe it and practice it!

Work with awesome companies around the world. We partner with great software companies all over the world and you'll constantly get to interact with people from these great companies.

How to Apply

Applying is fairly straightforward, but a bit unique. These questions help us dig right into the good stuff rather than wasting time on informational followup interviews.

  1. Send an email to (please no agencies - thanks!)
  2. Tell us about yourself (include how you heard about Zapier and the position).
  3. Tell us about the most difficult JS/library/software bug you've squashed (we love troubleshooting stories).
  4. Tell us about the most technically challenging thing you've ever built.
  5. Tell us about the largest application you've worked on.
  6. Include links to your portfolio/Github profile or provide us with 500+ LOC to help us get a feel for how you write code. (We prefer a shareable link, such as to Dropbox, over an attachment.)
  7. Rank at least five of the following in order of what you do best, the first being the best. (For example, "e, b, j, k, h". Please don't rank on how you think we would prioritize!)

a. Refactor to drastically improve load times of a complex single-page app.
b. Refactor to provide smooth rendering performance of a page with hundreds (or thousands) of interactive elements.
c. Implement a rendering system that works across client and server so that we can render blog pages and single-page apps with the same code.
d. Implement an intelligent caching system that leverages local storage and/or IndexedDB.
e. Implement smarter data APIs across client and server that minimize over-fetching.
f. Radically improve CSS while balancing the needs of designers and developers.
g. Implement real-time syncing so that multiple browsers/devices keep changes in sync.
h. Implement and maintain build tools for JS/CSS/image/fonts/etc.
i. Implement awesome animations that improve UX.
j. Implement cool new product features.
k. Refactor the codebase to better take advantage of functional concepts.
?. If you think we missed something really important, add your own choice! (Just be sure to tell us what the ? stands for!)

Finally, wait for us to reply. It can take some time to read through all the applications, but we do and we reply to everyone, even if it doesn't seem like a great fit.