# How Heroku Works - Teams and Tools

DevFeed: [How Heroku Works - Teams and Tools](<https://devfeed.tech/articles/how-heroku-works-teams-and-tools-41103.md>)

Original publisher: [Read original article](<https://www.craigkerstiens.com/2011/11/02/how-heroku-works-teams-tools/>)

Author: Map

Published: 2011-11-02T20:55:56Z

Content type: article

Language: en

Sources: [Craig Kerstiens](<https://devfeed.tech/sources/craig-kerstiens.md>)

Topics: [Heroku](<https://devfeed.tech/topics/heroku.md>), [Agile](<https://devfeed.tech/topics/agile.md>), [GitHub Issues](<https://devfeed.tech/topics/github-issues.md>), [pull-requests](<https://devfeed.tech/topics/pull-requests.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [agile](<https://devfeed.tech/tags/agile.md>), [business](<https://devfeed.tech/tags/business.md>), [communication](<https://devfeed.tech/tags/communication.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [github-issues](<https://devfeed.tech/tags/github-issues.md>), [heroku](<https://devfeed.tech/tags/heroku.md>), [process](<https://devfeed.tech/tags/process.md>), [productivity](<https://devfeed.tech/tags/productivity.md>), [pull-requests](<https://devfeed.tech/tags/pull-requests.md>), [teams](<https://devfeed.tech/tags/teams.md>)

## AI overview

This article describes how Heroku organizes engineering work around small, largely autonomous teams. Teams choose their own communication, planning, issue-tracking, and productivity tools, while commonly using weekly planning, retrospectives, Scrum practices, and stand-ups.

## Source excerpt

Heroku is a largely agile company, we work in primarily small teams that talk via api and data contracts. Its also a company comprised primarily of engineers, even product managers often write code. Heroku as a platform drives many of the features not from top down, but from bottom up based on engineers desires or skunkworks projects. There's many valuable insights into how Heroku runs efficiently for engineering. I'll be diving into many various practices that enable Heroku to put quality engineering above all else, but first let me highlight the team structure and tools that enable this. Heroku is comprised of many small teams internally, each team operates much like an individual entity. The team chooses its own tools and best method for communication, though as a whole some form of Scrum is run throughout teams. Think of the unix philosophy of small sharp tools as in The Art of Unix Programming applied to teams and people. For most teams this involves a weekly planning meeting earlier in the week. In such a meeting teams may conduct a retrospective, opportunities to improve the process the coming week, and of course plan tasks for the coming week. Its very important to note that planning tasks for the week doesn't necessarily involve planning the deadline for them, but rather simply laying out what people are working on (more on this in a future post). Each team will record and track this in a tool of their own choosing. Several use pivotal tracker, one uses scrumy, some use email to distribute and track against personal to do lists. The method for tracking issues is again entirely up to the individual team. A one person team may choose to use a simple to do list, larger teams commonly use github issues and pull requests. Given the team is the one responsible for their own productivity the team is the one to choose what tools they use. Meeting loads vary from person to person depending on what is the demands are on their time, though everyone at Heroku participa