At Heroku, we are quite distributed and typically use the following. Some teams might have a slightly divergent set of tools or workflow, but engineering-wide this is more or less the baseline:
* HipChat (sync and async chat with a variety of ChatOps functionality)
* Video conferencing: Every single meeting has a corresponding Google Hangout. For some meetings we might use Fuze
* DCVS: git. Our repos are hosted on Github and we use all the usual stuff there: Pull Requests, Issues, in-line commenting, etc
* Project/task management: Trello trello trello - If it's not in Trello, it doesn't exist. This works great when you're widely distributed across geography and timezones. With the right workflow, we can at-a-glance know the status of all of our work-in-progress.
* Mailing lists! Every team has its mailing list and nearly every other thing of interest has its own mailing list. Interested in an upcoming project? There's a mailing list for that. Are you remote or based out of the SF bay area? There's a mailing list for that. Are you into Golang, functional programming, or want to chat about Linux? We have those covered too. Are you into biking or photography? Mailing lists!
Can you share any of your Trello workflow? We still have trouble sometimes making everyone happy with our current Trello workflow, I'd be really interested in hearing how you organize your cards!
Sure! The basics are that each team has their own board and chooses a Trello board layout that most closely matches their workflow.
Generally, we'll start with new work on the left side of the board and completed work at the right side of the board; this roughly resembles a kanban board. The standard columns are:
Ready/Next (backlog) -> Doing -> Done
* Ready/Next are the top items from the backlog (usually a separate Trello board just so only active items are on the primary board) that are next in the queue
* Doing is work-in-progress
* Done is completed work (of course :))
Some teams also use additional columns for:
* Blocked - Work that is blocked on something else. In planning meetings and standups these are called out so we can unblock the items as quickly as possible
* Shepherding - Work that is mostly coordinating cross-team efforts. These items generally don't take up alot of active cycles of the "Shepherd" but they are an additional context switch throughout their work
* Interrupts - Usually this is called something else, but the gist is that some teams track operational items separately. For example, if support escalates a support ticket to an engineering team, the trello card referencing the ticket and any troubleshooting info will end up in one of these columns
As for ensuring that the Trello boards are up-to-date, many teams have standups and walk through their Trello board and confirm that it's consistent with reality.
Thanks! I guess we're not too far off, I think it's the last step we've been doing poorly -- team-specific checkins to make sure the board is accurate.
* HipChat (sync and async chat with a variety of ChatOps functionality)
* Documentation: Google Drive for non-technical documentaton that might need feedback and some dynamic spreadsheets backed with dataclips: https://postgres.heroku.com/blog/past/2012/1/31/simple_data_...
* Video conferencing: Every single meeting has a corresponding Google Hangout. For some meetings we might use Fuze
* DCVS: git. Our repos are hosted on Github and we use all the usual stuff there: Pull Requests, Issues, in-line commenting, etc
* Project/task management: Trello trello trello - If it's not in Trello, it doesn't exist. This works great when you're widely distributed across geography and timezones. With the right workflow, we can at-a-glance know the status of all of our work-in-progress.
* Mailing lists! Every team has its mailing list and nearly every other thing of interest has its own mailing list. Interested in an upcoming project? There's a mailing list for that. Are you remote or based out of the SF bay area? There's a mailing list for that. Are you into Golang, functional programming, or want to chat about Linux? We have those covered too. Are you into biking or photography? Mailing lists!
P.S. - If you're interested in remote work, we're hiring! http://jobs.heroku.com/