When asked, “When are you guys going to grow up and get an office?” Zapier co-founder Bryan Helmig, might respond, “We are not really into the the whole desk sort of thing.” That’s because Zapier makes the world their office. Team members might be working out of a coffee shop, a park, their kitchen, or an Airbnb at the base of the Santa Cruz Mountains.
Zapier is a popular automation tool that can coordinate push notifications, and seamlessly transfer data and files between different apps. It helps streamline workflows and can cut down on hours of mundane data entry tasks — our team loves it!
Having steadily built up a distributed team since its founding in 2011, Zapier is now considered a thought leader in managing remote teams and engineers. Zapier is not alone in moving away from the traditional office space. Between 2008 and 2012, the number of people telecommuting for work increased by 79%.
According to a recent Gallup survey, those who spent more than 60 percent of their time out of office demonstrated the highest engagement rates. What's more, studies suggest that remote working can increase employee productivity and happiness, while reducing stress, decrease turnover, and save millions on real estate. However, Helmig cautions that distributed teams aren’t for everyone:
Doing remote properly requires thoughtfulness and care.
So how does Zapier coordinate a distributed team of 80 employees scattered across 13 countries? After sitting down with Zapier Co-founder, Bryan Helmig, we have compiled 8 best practices you can use in managing your remote team, with a focus on remote developers.
Finding an engineer who is genuinely interested and enthusiastic about your project and use case is essential. If you can attract candidates who are already users, or members of the community your product lives in, even better.
For Helmig and the Zapier team, the first thing they look for in a prospective employee is passion and knowledge. Ideal candidates should be passionate about coding, and knowledgeable about your business model and tech stack. Any existing relationship between the hire and the product should be considered a plus, as this will serve as natural motivation for a new team member.
If you are hiring a remote engineer you want to screen not only for grade-A technical talent, but also compatible personalities. Clashing conducts can spell disaster for a development project, so you will want to head this off right from the start.
In an initial interview, you should take note of the candidate’s demeanor, and make sure it matches up with your style and team. As Helmig puts it, check to make sure they are not “a really rude and awful person.” This is so important that an entire book has been written on the concept, aptly titled The No Assholes Rule. If you are hoping to avoid assholes, it will be well worth your while to pay extra attention to those little details when hiring for your distributed team. To this end, video interviews are an essential part of the recruiting process.
During the interviews, you should also be mindful of communication skills. Clear communication is important for all professions, but a developer without communication skill is like mechanic without a wrench. You will need your developer to be able to explain what they are working on, why they are working on it, and the anticipated result.
For technical professions, communication skills encompass the ability to speak with clarity and simplicity, with strong documentation habits so new code can be referenced and digested. If you are remotely managing a team without the possibility of face-to-face exchanges, you will instead need to rely on superior communication skills. Due to separation of space and time, it is likely that written communication will be especially important to the functioning of the team. To ensure ease of communication, you will want to work with good listeners, and people who can convey an idea clearly.
Helmig tells us he is also keenly aware of engagement and response time. Working on a distributed team, this can be very telling of how available and tuned-in your new team member might be. It is recommended that you test out the efficiency of all communication skills you actually use on your team including voice, email, message, text, and video chat.
Lastly, what you are really looking for are autonomous doers who don’t need a social workplace. Again, this is why passion and knowledge are so important. Managers will not be on-site for back-patting and hand-holding— remote workers will need to be self-motivated, understand what their team’s goals are, and be ready to get things done unprompted.
Beginning work on a freelance project or remote job can be a lonely and confusing process — but it doesn’t have to be. In welcoming a new team member, you will want to make yourself easily available to them to ask questions, or just chat.
At Zapier they go the extra mile, or in some cases several thousand, for in-person onboarding. Zapier expenses travel for new hires to join the founders and a small team to work together out of an Airbnb for the first week on the job.
Of course, this may not be suitable for every team or project. If that’s the case, Helmig recommends assigning “reach out people” for every new hire. The designated “reach out person” would be like a mentor for that particular recruit, helping them get familiar with the tools and processes to make for a faster transition.
During the first several weeks, feedback should be frequent and frank. Especially when minute usability and performance details are at stake, you need to have systematic sync ups to let your developer know how they are doing, and where they stand. Only then can adjustments be made.
Since you will not be physically present to assist your developer when questions come up or things go awry, your documentation should be.
Over their years of growing a distributed team, Zapier has found relentless documentation to be key not only to smooth onboarding, but healthy workflows throughout the course of a project. Proper documentation is extremely important for software engineers, whether it’s related to the codebase or not. You don’t want your remote developers to get stuck on a small issue, and have to stop work entirely until they can get in touch with your team lead or another developer.
Helmig emphasized that to successfully run a distributed team, “all communication should be effective asynchronous.” This means EVERYTHING should be documented. Maintain SOP files, contact databases, user guides for commonly used tools, tutorials, etc. Documentation can go as far as recording all video chats, and following up conference calls with written notes. Not only will this help to overcome the obstacle of time zones, it is also good practice to build archives for reference.
In our talk with Helmig, he explained that Zapier had gone to pains to ensure that when info or help is needed, it “disseminates naturally, by design.” To do so, they have undoubtedly deployed some of their own automation technology, created new in-house tools, and continue to use a wide range of commercially available tools to build their virtual office.
Helmig reveals one of the biggest challenges of remotely managing a team will be “getting information in front of people when it's relevant.” For this, they turn to tools to “hand-deliver” info digitally.To help you get your distributed team off the ground, here are the tools pertinent to communication, documentation, and project management:
Despite being distributed all across the globe, the Zapier team still manages to find overlapping hours for conference calls, team meetings, one-on-one’s and more. With a little planning and flexibility, you should be able to arrange all of your necessary team functions.
If you do have a globally distributed team, you will want to be mindful of not disturbing people during periphery hours, unless otherwise agreed upon. Collaboration tools like Slack and Google Calendar have you covered here with time zone features such as warning functions and time zone syncing. While working across time zones does require a little extra flexibility, Bryan indicates its well worth it:
If you only hire people in your own time zone, you are missing out on the good stuff.
There are number of benefits of building a remote team that spans time zones. Here are some of the items on Helmig’s Good Stuff list:
In terms of cooperating both as a team and individually, you should set up mutually agreeable expectations for messaging and response time. Most likely, immediate, or even 5-10 minute response times will not be necessary. This can become tedious and distracting, and upset workflows. On the other hand, when someone pings you on Skype or Slack, you should be reasonably available, especially as the manager.
In governing allocation of talent resources, Helmig explained that Zapier has “home teams” and “away games.” Home teams are skill based functional teams, i.e., the product engineering team or the infrastructure engineering team. Sometimes the home team will loan talent out to participate in away games. Away games are project based teams. Away games may require a designer or an engineer for the duration of a project.
After the game is won (project completed), talent returns to their home (functional) teams. To successfully use a flexible talent management strategy of allocation of resources on an as needed basis, you will need to have strong foresight of what projects are coming up, and what talent will be required to execute them. This strategy will also be useful if you are bringing on third party engineering talent to complete a project.
Just like code, communication is an expression of ideas that facilitates collaboration. Well written code makes everyone’s job easier, from UI designers, to product managers, customer support, and marketers. Good communication is the code that will help you smoothly execute projects with your remote developers and the rest of your team.
Without the benefit of being able to tap someone on the shoulder, you will have to fine-tune your communication style to successfully oversee your distributed team. In giving instruction, managers should provide a broad goal with a specific outline. In addition, explicit milestone needs to work towards achieving that goal should be detailed for developers.
Helmig notes that managers should “be very clear on the core of things engineers need to work on, but provide a lot of tasks to complete.” If for some reason your careful planning and documentation fail, having a wide-range of tasks in the pipeline will ensure that your remote engineers can work through roadblocks. According to Helmig, such flexibility is built into the Zapier culture:
No one is stressing out if you are not able to continue a task for the rest of the day because of some particular thing. Everyone knows, hey, that’s just kind of how it
works. You’re jumping onto something else and being productive in another way.
In addition to providing clear instruction and numerous tasks to work on, as a manager, you should also do the following:
When your engineers talk, listen. To make sure this happens, the Zapier team schedules regular one-on-one meetings. The structure of the meeting is simple, and involves the management team listening to their remote workers. In his e-book, The Ultimate Guide to Remote Work, Zapier co-founder Wade Foster breaks down the process for us. One of the founders, Bryan, Mike, or Wade, has a sit down with a team member to listen to four one’s:
These basic questions make for easy preparation and straightforward feedback.
If your developers are not talking, make them write. Zapier does this with Friday updates. This is a self-made blog in which each team member reports what features they shipped in the past week, and what’s on the agenda for the coming week. The four one’s and Friday updates are painless ways to keep a healthy flow of two-way communication, and can easily be implemented with your remote team.
When working with a team of distributed developers, you may wonder, “How do meetings work in a remote environment? Do I still have to have meetings?” Maybe, like Zapier Co-founder Wade Foster, you’re not a huge fan of meetings and would be happy to see them go:
Most meetings in the modern workplace are pointless. Meetings are an awful place to share information….That said, if done right, meetings can be an efficient way to work through potential problems and solutions.
Wade Foster - The Ultimate Guide to Remote Work.
Yes, you should probably still have meetings. This is where the suggested video conferencing and document sharing tools will come in handy. Precisely because of the difficulty of getting a distributed team all together online at the same time, you will want to more carefully prepare your meetings, and narrow the focus of discussion. Unstructured video-chat meetings will be a big help to no one.
Of course, Zapier has a streamlined process for this too that you can take a page of. Before meetings, each team member records the following in a shared Google Doc: planned tasks and results, unforeseen issues, and what’s in the pipeline for next week. Instead of previewing all notes ahead of time, (inevitably, someone will not have written the notes, and someone will not have read the notes), the first few minutes of the meeting are used for reading. Written ideas tend to be better thought out, and more carefully expressed. Therefore, questions and confusion should be minimized, and discussion can be used just to tie up loose ends and problem solve.
Zapier also provides a few other meeting guidelines:
Another type of meeting Zapier holds each week they refer to as Pair Buddies. This is a random pairing of two teammates who are matched for a 10-15 minute chat. This is less for operational purposes and more for building familiarity and team spirit.
When operating in a remote environment you can avoid repetitive, ceremonial office meetings. However, to cease all meetings entirely may not be an effective strategy. Mathew Guay, content marketer for Zapier, reminds us, “Remote workers are not islands- you’ll still need some time to gather as a team.”
Just like any long-distance relationship, trust will be extremely important when working with a distributed team of developers. You cannot stroll the cubicles or effectively keep track of reply times since you may all be in different time zones. How then, do you trust that your remote engineers are working, and evaluate that work?
Trust starts with the hiring process, grows with onboarding, and is solidified with strong communication and feedback practices. If you followed our advice in the first section to hire people passionate about their work and enthusiastic about your use case, it is more likely they will do their best work. If you can show your remote workers they are supported with processes and documentation, this will go a long way in gaining their trust. Furthermore, if you can be a manager who listens to feedback, and is a flexible member of the remote team, you have a recipe for strong mutual trust.
Since you are not on-site, you will not be evaluating employee contribution based on time spent, but rather tasks completed and results achieved. In order to measure the progress of remote projects, you will want your developers to work in public. That is, shared online spaces. New code or changes to the codebase should be recorded on platforms like GitHub, where everyone will have access to see what has been changed, and what pull requests have been made. Non-coding tasks should be completed on tools like Google Sheets, Quip, or Draft. Status updates can be made on platforms like Asana, Trello, or your internal blog on O2.
Operating distributed teams is still a relatively new phenomenon, so if you are hesitant to embrace the remote model it would be understandable. However, as Zapier’s CTO Bryan Helmig says, “The proof is in the pudding.” Today Zapier’s team includes more than 25 remote engineers working to build their ever expanding platform. Zapier now supports more than 750 apps, has surpassed 1 millions users, and triggers more than 1 million automated tasks on a daily basis. For Zapier a big part of this winning formula includes hiring the best talent, no matter where in the world they are.
If you want to increase efficiency, improve employee engagement, and reduce stress, consider diversifying your team with remote developers. With pioneers like Zapier opening up their playbook, best practices, tools, and tactics are much more accessible for companies and entrepreneurs ready to scale operations with remote talent.