Gilt’s Special Operations Team recently spent five weeks creating a legacy Play app that’s responsive to the mobile device for both portrait and landscape orientations. After our team finished our work, we got together to recap what we’d done. We also decided to share with you what we learned while converting Gilt’s desktop experience into a beautiful responsive mobile experience that seemed natively designed. In this post–the first in a series of five–I’d like to share how we organized a successful retrospective meeting.
As a small team, the three of us who belong to Special Ops (which handles end-to-end projects that don’t fit under the umbrella of other product-driven teams) are always very aware of what our teammates are working on, so we didn’t need to sit in a room to talk about that. Instead, we wanted to talk about some of the higher-level topics that surfaced while we were working in the weeds. To prepare, each of us spent half an hour writing on individual sticky notes the reasoning behind our choices. We then brought our personalized notes to the meeting, which had three goals:
List all the things that we thought we did awesomely.
List all the things that we want to do and don’t want to do in our next project, so we can heighten awesomeness levels even more.
- Give high-fives.
We rated our achievements and shortcomings in eight buckets:
general feeling about code quality
- evangelism (getting people outside our team involved and including them in our work)
We arranged these buckets as points along a Y axis (aka “the category axis”), and used the X axis (aka “the awesomeness axis”) to measure our feelings of how well we did. For each of the eight buckets, each team member placed a sticky note with their initials somewhere on the X axis between a :( (at the far left end of the spectrum) and a :) (at the far right).
Then each of us explained why we placed our initials along the awesome-ness axis with concrete examples and explanations. At the end of the hour, our whiteboard was filled with sticky notes that neatly plotted out our satisfaction and dissatisfaction with various aspects of our work.
Our team retrospective was very important for us because, even though we work closely together, each of us gained valuable insights into the primary motivators, goals and concerns–be it better tooling, better development workflow, better testing processes, or better communication. In software engineering, the work never ends. But by holding a retrospective, we were able to look back at what we did in order to try to continuously improve as engineers.
Tune in tomorrow for “Inline vs Block Media Queries”!