Heading image for post: Hashrocket Stands Up

Hashrocket Stands Up

Profile picture of Jake Worth

At Hashrocket, a vital part of our process is standing up together every day.

In 2006, Jason Yip wrote a thorough overview of the Agile/Scrum meeting style known as the 'standup'. It's available here.

Yip concludes the article with the accurate observation that "[i]t’s really just standing up together every day". While true, his arguments reveal the subtlety behind this simple idea.

It would be hard to improve on this article; I'd rather talk about an example of this technique in the real world, here at Hashrocket.

In this blog post, I will share the details of the two (and usually only two) meetings our team members participate in each day— a standup with the Hashrocket team, and a standup with our clients.

Why We Stand Up

Yip lists outcomes a standup can achieve; they are, to paraphrase:

  1. Shared understanding of goals
  2. Coordinated efforts
  3. Sharing problems and improvements
  4. Identify as a team

At this point, I'd like to separate our standup procedures into the Hashrocket internal standup, and the client standup, because they are a little bit different.

Hashrocket Internal Standup

Our internal standup happens via Skype each day at 9 AM CST/10 AM EST, to accommodate employees in multiple time zones. We meet where work happens; right in our development spaces.

It's an all-hands event; the only people who don't participate are those on client sites or already engaged in client standups. We strive to get everybody on the call, even those working remotely. This includes visiting client developers, candidates participating in our week-long hiring audition, and even our CEO.

The order is round-robin with no set starting position. Speaking control is passed off by social cues, or, when the entire team is in Jacksonville Beach, via a deflated and surprisingly heavy miniature basketball. This is the 'Pass the Token' technique Yip describes.

Since almost nobody is working on the same project or application, we avoid the 'Yesterday Today Obstacles' pattern and focus instead on our general work, excitement, frustrations, office announcements, and personal news. Weather reports, puns, and long-running jokes are common. 'Identify as a team' is the focus of this meeting, and it works.

We keep the energy level high by standing up, and keeping it brief. The entire meeting, with often fifteen people talking, lasts a few minutes.

Hashrocket Client Standups

Every day, each of our clients has their own standup with their dedicated team of developers, designers, and a product manager. It's also an all-hands event for each team.

We connect with clients on their terms— Skype, Google Hangout, GoToMeeting; whatever provides a sustained connection. We meet at the same time every day, as close to the start of business as possible.

Often our developers speak first, sticking to the 'Yesterday Today Obstacles' pattern. Here's how I would deliver a report in this style, using the Agile term story to represent a unit of work:

"Yesterday we delivered the admin inventory deletion stories and started work on the admin inventory create stories. Today we plan to finish those stories and deploy to production. In order to deploy, we're going to need access to your Heroku application and AWS."

Pending questions from the client, that's it. This is followed by reports from other developer teams and designers, and a wrap-up by the product manager.

Energy level is harder to control on a client standup, because almost nobody is in the same room as one another, so it's easier to lose track of time. We employ skilled product managers who do a great job at keeping everyone on task and pushing side conversations offline.

These calls are all about the stakeholder— delivering an update, explaining obstacles, and asking the rare question that must be addressed in real-time. It's a level playing field, but the client drives the meeting and has the final say about when it is complete.

Client standups also ensure that they always know what we are working on. It gives the client the opportunity to course-correct and allows us the chance to quickly eliminate any confusion we might have about work for that day.

Conclusion

Our standup practice is one of my favorite things about Hashrocket. It helps us understand goals, coordinate effort on problem areas, share problems and improvements, and coalesce as a team.

Within the tools described in Jason Yip's article, there lies an effective standup strategy for any group. Experiment and find something that works.

Cited: Yip, Jason. "It's Not Just Standing Up: Patterns for Daily Standup Meetings", martinfowler.com, 21 February, 2016, http://www.martinfowler.com/articles/itsNotJustStandingUp.html. Accessed 6 December 2016.

Photo Credit: Margarida CSilva, unsplash.com, https://unsplash.com/photos/cQCqoTjr0B4. Accessed 7 December 2016.

More posts about Process