The Zapier Engineering Blog

A blog about hacking, development workflow automation, and how to get things done with less work.

How We Onboard New Engineers at Zapier

Brian Cooksey / Published October 19, 2017

It's your first day at a new company. You walk up to the doors of the office building, anxious about what today is going to be like. You’ve only been here once before, when you interviewed, and you’d rather forget the sweaty nervous mess of a person you were that...


Open Source at Zapier

Matthew Guay / Published October 5, 2017

Software—like so many other things—is built on those that come before. Instead of reinventing the wheel every time you build something, software developers at Zapier and thousands of other companies start with open source software. You can quickly spin up a new server running Linux and other open source software,...


The 3 Best Cloud IDEs for Backend Developers

Adam DuVander / Published September 21, 2017

Developer environments are personal things, and often include various settings files, specific language and framework versions, and other individual accoutrements. When you start a new project or test something out, you may feel compelled to make some changes to your delicate personal settings. Alternatively, you could take those preferences to...


Dogfooding Your API: How to Build New Features Faster 
by Consuming Your Code

Jared Cheney / Published September 7, 2017

Editor’s note: We publish occasional guest posts on the Zapier Engineering Blog, like this one from Jared Cheney, a senior software engineer at TSheets.

I believe that to build a great product, you’ve got to eat your own dog food—or, in other words, you have to use all the...


3 Reasons Why Your Integrations Might Be Worthless

Wade Foster / Published August 24, 2017

Every SaaS company I talk to wants to build integrations, and for good reason, too. When done right, integrations extend the possibilities of your app, keep customers happy, and offer great opportunities for partnerships with other SaaS companies. Yet, there’s more to successful integrations than slapping some APIs together.


How to Handle Planned Downtime for Your API

Adam DuVander / Published August 3, 2017

When you turn the handle on your bathroom faucet, you feel confident that water will stream from the spigot. There is a lot of infrastructure–either at the municipal or property level–to keep the supply flowing. The same is true of APIs. When you request data from an API, you expect...


Introduction to Graph APIs

Brian Cooksey / Published July 27, 2017

If you’ve consumed a web API in the last decade, there is a good chance it was a REST API. The data was likely organized around resources, responses included ids to related objects, and HTTP verbs were used to communicate reading, writing, and updating (yes, we know this is a...


You Need These Three People to Care About Your API

Adam DuVander / Published July 20, 2017

You’re about to go on stage and your mouth is dry in nervous anticipation. After repetitive practice, you know your most important talking points better than your name, but still the moment weighs on you. It’s worse than speaking in front of a filled auditorium. Instead, your audience is made...


Introducing Zapier Issues: Your Product Development Partner

Adam DuVander / Published July 12, 2017
Zapier Issues is now live to all public apps

Inspiration springs from customers who use your product to its fullest. These power-users thrive on Zapier, where they can define precise workflows and bring your app along. They have a knack for finding bugs and pushing the boundaries of what’s possible—resulting in feature requests and a better experience for all...


How We Test Our Ansible Roles with Molecule

James Carr / Published July 6, 2017

Since the early days of Zapier, way back in 2012, we have provisioned resources on our servers using configuration management—first with Puppet and then with Ansible since we found it easier to extend in a Python heavy environment. Today, we have over 98 Ansible roles of which 40 are "common"...