After experimenting with many collaboration environments, our company decided to centralize all workflows into a single tool, GitHub, supplemented by an internal product we built from scratch, ZenHub. ZenHub is now released publicly and already in use by teams at Facebook, Microsoft, and Sony (to name a few).

Centralizing onto one platform has given us much better focus; we’re sharing our journey to help others achieve similar efficiency.

It feels incredibly rewarding to have awesome evangelists!!

Here are some things we’ve learned along the way.

1. Define axioms for difficult decisions

In the earliest days of our company, we spent quite some time trying out different products and processes. During our search for the perfect workflow we looked at Asana, Pivotal Tracker, Trello, even Basecamp, Google Docs, the dreaded JIRA, and plain old email.

To focus our search, we employed the same decision-making framework as we do when building products. We defined a series of axioms (cf. Axioms and Anchors) to focus and guide us in the midst of making difficult decisions.

Three initial axioms to guide our search for the perfect workflow

Working asynchronously is essential for a global team: Most of our team is based in Vancouver, Canada, but we have had folks working remotely from Italy, France, Chile, China, and Brazil as well as throughout the rest of the U.S. and Canada (often before moving to Vancouver). This means the tools we use have to be used by everyone, all the time, or else people start feeling — and being — left out.

Most of our team is based in Vancouver, Canada, but we have had folks working remotely from Italy, France, Chile, China, and Brazil as well as throughout the rest of the U.S. and Canada (often before moving to Vancouver). This means the tools we use have to be used by everyone, all the time, or else people start feeling — and being — left out. Empowering leaders, minimizing meetings, and minimizing management leads to higher-quality results: It was always surprising to us that companies hunted for the best talent and immediately began stifling them with rules and regulations. We wanted a project management tool that let us cut down on unnecessary busywork while at the same time increasing transparency and collaboration.

It was always surprising to us that companies hunted for the best talent and immediately began stifling them with rules and regulations. We wanted a project management tool that let us cut down on unnecessary busywork while at the same time increasing transparency and collaboration. Using good products makes us build them better: We hold the tools we use to a high standard, believing that a high-quality product starts with high-quality building blocks. For product management, we wanted something dynamic and agile. We build certain values into the products we create: it would be counter-productive and hypocritical not to demand them from the products we use in the process.

2. Don’t give into babysitting tools

Technology is truly at its best when it simply disappears. We think the same is true of process. We struggled with the tools we evaluated because at each turn they seemed to be adding to our workload, not reducing it. Every tool created new queues for us to check, tasks to be assigned and priorities to be colorfully sprinkled throughout.

It was a full-time job being a nanny for every system. Our product team spent more time curating how the tasks looked on screen, making sure meta information was complete and assignments were made correctly, and then following up with devs to sync up than actually Building Things, which is what we’re all here to do.

From one of our heroes:

Our trust is in people rather than process.

- Warren Buffet

Our fourth axiom: reduce complexity

We decided to adopt a fourth axiom, one that runs counter to the app-happy culture we’ve grown accustomed to in our personal lives:

Minimizing the absolute number of products we use is a Good Thing: Additional accounts increase complexity, process, and overhead in many unpleasant ways ⇒ BAD FOR STARTUP.

3. Simplicity is the ultimate sophistication

During this process we realized something surprising. As product-people and early-adopters, every member of our team is naturally very aggressive: trying new tools, experimenting constantly, and hacking every problem they face. However, as a team we are quite conservative: we prize simplicity, reliability, and an elusive quality we’ve termed “getting-out-of-the-way-ability” in the tools we use.

One tool to rule them all

So we did what we should have done in the first place, and looked with fresh eyes at the place where a majority of our team lives, day in and day out: GitHub.

GitHub is the most popular version control system for software developers, beloved by 7M+ people around the world. That said, it’s not perfect as a generalized team collaboration platform and many team members (especially non-coding ones) were doubtful GitHub could work as a strategic tool. We were willing to give it a try because everyone agreed we needed a solution that worked for the entire team: no more silos!

Scratching our own itch

ZenHub is the only project and workflow tool natively integrated into GitHub’s UI, adding features built specifically for fast-moving, software-driven teams: real-time task boards, integrated file sharing within GitHub, instant feedback on Issues, and a host of other features enabling teams to complete their projects on-time and more efficiently. To read more about ZenHub’s features, check out our post Supercharge GitHub Workflows: Introducing ZenHub or visit ZenHub.io.

4. Get things done

Today we use GitHub with ZenHub for every single company workflow: Hiring/HR, Sales/CRM, Support, and internal communications, as well as actual software development. Here are some of our biggest wins.

Transparency

ZenHub for GitHub makes radical company-wide transparency manageable.

The biggest win from this for us has been in our recruiting/hiring workflow. In a distributed hierarchy that assigns high responsibility to all individuals, the single most important process is finding, attracting, and vetting new team members. ZenHub allows us to bring our hiring process into GitHub, such that the whole team can be involved in all aspects of the hiring process without being distracted and interrupted.

This is a snapshot of a hypothetical hiring repo: