Finding A Development Process For a Small Startup Team.

October 16, 2012

Several months ago we started a whole new project (that's not Discovr related) and also had our third full time developer start. So it was time to get more serious about our process and communications.

Tools We Have Tried Before

Pivotal Tracker - I found this is a great tool for developers, but I think for trying to plan and manage projects it is lacking. I'm also not a fan of their fonts and colours.

Kickoff - We tried using this for a number of months with some success. It's native, fast, clean and has inbuilt chat. A few show stoppers for us were their notifications, the lack of iPhone access and the lack of workflow/status with todos. They are currently in beta for version 2 so I'm looking forward to checking that out.

Skype - a great communication tool, syncing across devices and notifications could use some work. Also no ability to communicate just with your own team during work hours makes it distracting. However, we continue to use it as a voice conferencing tool.

Other Tools We Checked Out

Sprint.ly - this does look like it will be a great tool. It's still in beta and a little rough around the edges. Looking forward to trying this again in 12 months.

Flow App - nice online tool, felt a little like Things but on the web. Didn't feel like it quite had the process and visualization I was looking for.

Jira - used a lot by larger startups. Seems too feature cluttered for us.

HipChat - This was a great tool, but just found it redundant, more details later.

What we based ours on

The team over at UserVoice published a great article on their process. We have used a lot of their process in ours, but simplified it to suit ourselves.

What We Are Doing

Communication

We used Hipchat for quite a long time, with some people using Messages.app with their Jabber support. Hipchat provides desktop support via their Adobe Air app (it's not as bad as it sounds) as well as an iPhone app. When you are idle or offline you can receive emails, push notifications or SMSs.

With the improved syncing in Mountain Lion we have found Messages.app / iMessage to be a simpler solution and something we were all using anyway. But I would still recommend Hipchat for multi platform.

We keep group chats to a minimum, product discussions should appear on the relevant cards.

Process

We are using Trello which provides a nice web interface (which I am using with Fluid to keep out of Chrome tab hell), as well as a quite nice iPhone app (we'd love a native iPad app if anyone is listening). It provides a really nice and flexible way to create boards for planning and development.

We have 3 boards setup:

Board 1 - Planning / Roadmap

Here we map out high level dates where we map out releases / milestones.

Each lane / list is just a date with cards with very high level functionality.

Board 2 - Inbox

This is where cards any of the team or a customer come up with, as well bugs and developer chores live. Once added they are reviewed by the product team and then labelled as accepted or rejected.

Before each sprint / iteration the product team meet, review the inbox and create a list for the next sprint.

Inbox

Board 3 - Development

This board has a list of cards that are to be completed in each sprint. The developer takes the card from high on the 'Up Next' list they feel most comfortable completing, assign themselves and drag it to the current list. A developer should have no more than two current cards at any one time.

Once the card is complete and in staging via CI they drag the card to QA.

A list exists for each release, the card is moved onto that list once it goes live.

Development

Meeeeettttiiinnngggs

We all love meetings (not). But unfortunately they are sometimes required.

First thing Monday before the rest of the team get in, the management team meets to go through the Inbox and plan the next iteration.

At 9am Monday the development team meet to go through the cards for the week and adjust / break out / combine / prioritise cards as necessary.

Source Control

Like everyone else we use Github. We are using feature branches and pull requests, similar to Github Flow.

How Is It All Going?

We are several months in and so far it has gone quite well, it is easy to slip off track and we've had to reset several times. The key is getting buy in from everyone involved, which is tricky.

Get Monthly Updates On Mobile Dev

Join over 2,000 other mobile devs.

No spam, promise!

Get Monthly Updates On Mobile Dev

Join over 2,000 other mobile devs.

No spam, promise!