Trying to manage large projects with your team can sometimes feel like juggling while defusing a bomb. It's tough to keep everyone on the same page while getting actual work done. So when Dustin Moskovitz and Justin Rosenstein were helping to build Facebook and needed a tool that fostered effective collaboration, they decided to build their own. That tool became Asana. We caught up with Dustin and Justin to learn about their process, challenges and advice for aspiring developers.
Where did the idea for the app come from? Were you trying to solve a problem you'd experienced, or did the inspiration come from somewhere else?
Justin: Today, we're proud that Asana is providing core communication infrastructure for thousands of teams, finally enabling teamwork without email. But it started nearly ten years ago with a belief that there had to be a better way for teams to work together than the status quo of email overload and unproductive status meetings.
In our combined experience at both Google and Facebook, we became frustrated with seeing teams of tremendously smart people get stuck not doing the work that mattered, but spending a majority of their time doing "work about work" — tracking down information, exchanging lengthy and redundant email threads about the latest status of a given project, and making sure the left hand knew what the right hand was doing.
Dustin: While we were at Facebook, we collaborated on a way to solve this problem for the company by building an internal task management tool, called "Tasks." In many ways, this was the prototype for Asana, though we didn't realise it at the time.
After you came up with the idea, what was the next step?
Dustin: The internal Tasks tool quickly took off within Facebook. Though we built it originally to solve a few use cases within engineering, it was adopted by teams all across the company and started being used for things we never anticipated, like meeting notes and agendas (which could then easily be turned into action items). Every time you walked through the office, you would see people interacting with this system on three out of four monitors; this reminded me a lot of the early days of the Facebook product, when walking through a campus computer lab meant seeing it up on all the displays.
Soon after releasing the internal tool, it became clear that developing it (and thus facilitating better communication within the company) was the best way I could contribute value, so I actually handed off my management responsibilities and started focusing on its development full time. Even with this focus, however, I was unable to keep pace with all the new ways Facebook teams wanted to use it. We eventually concluded that we were leaving too much potential on the table by continuing to treat the tool as a side project instead of as a product in its own right, deserving of a real team of people passionate about building it.
How did you choose which platforms to target and which to ignore or wait on?
Justin: Most knowledge workers spend most of their time at their desk, or at least with a laptop. So we started by making the asana.com web experience a first-class experience, even developing a whole new web development stack that enables Asana be as powerful and fast as sophisticated desktop applications. We have apps for both iOS and Android as well, but we're currently doubling down on mobile — redesigning and rewriting those apps from scratch to be faster, more efficient, and more beautiful — in recognition that mobile is primary for some knowledge workers and very important to all of us. Look for these new apps in 2014.
What was your biggest roadblock and how did you overcome it?
Dustin: The biggest impediment is the inertia people have with their existing tools and processes. It's hard enough to create a real behaviour change with a single person, so catalyzing that for a whole group at the same time requires that team to be highly motivated. We've done this over time by working hard to make our initial teams become super successful. Our future customers become motivated by hearing stories from the existing ones about how much Asana has improved their ability to pursue their own missions. We've also prioritised creating and sharing content about all of the best ways teams and individuals can get up and running, and have published many of them together in the Asana Guide.
What was launch like for you?
Justin: Ecstatic. It was the first big milestone in our journey to realise our mission — to help humanity thrive by enabling all teams to work together effortlessly. Watching the response was heart-warming — doing a Twitter search for [asana love] is still a great way of peeking into how much people appreciate the benefits of improved teamwork communication. We also get letters all the time from customers saying that they're doing great things — from launching startups, to synthesizing DNA, to bringing healthcare to developing nations — that they wouldn't have been able to do without the extra capacity that Asana created for their teams.
It's been two years, and each new launch feels more fun than the last. When we released Calendars last month, some users literally danced with joy. This is especially fun because when we started Asana, people said they didn't understand how teamwork tools could be sexy.
How do you handle user requests and criticisms effectively?
Dustin: Since our customers really live in the Asana product every day, they are naturally very passionate about the nature of the experience and we get feedback through a ton of channels. Much of it comes via direct conversations, and Justin and I personally interact with many of the teams that rely on Asana to hear about their needs. This also accounts for most of the time spent by anyone on our sales, customer success, or user support teams.
Additionally, we get a lot of feedback via more asynchronous channels, like blog comments, Twitter, or various places in the application that solicit opinions. When the feedback is sufficiently high volume, we rely on scripts to classify and rank sentiment so that we know what to focus on. This ensures that every prioritization vote is counted, and then we often also reach out to individual people to collect more detailed information.
Now, how do you split time between developing new features and managing existing ones?
Dustin: To some extent, we are always doing both at all times. We rely on the feedback channels mentioned above to help us seek the right balance point in any given moment. We also have a tradition we do three times a year called Polish Week, where we explicitly focus on a larger number of small improvements to the app that individually wouldn't be compelling enough to become a top priority, but together do a lot to advance the product.
What advice would you give to others that want to take on a similar project?
Dustin: If you are literally interested in taking on the project of helping humanity thrive through enabling better teamwork, we'd love to hear from you.
Justin: Ultimately, we hope that whatever you work on is something that matters to you deeply. Life is short, youth is finite, and opportunities endless. So we hope you find something that compels you to throw yourself at it completely, and that has a positive impact on the world in the process.
Dustin: In many cases, that will actually mean joining an effort already underway rather than trying to start your own project. There are a many awesome teams out there that are already doing great things and could really use your help.
Lifehacker's Behind the App series gives an inside look at how some of our favourite apps came to be — from idea to launch (and beyond).