Introduction

The Latitude.sh engineering team work in six week cycles, meaning that roughly every six weeks we start a new cycle of product work followed by two weeks off of scheduled work.

Projects

During each cycle we usually have one or two projects that can be considered Larger projects and a few Smaller projects.

Project names come from Culture ships. Learn about The Culture here.

Two weeks off of scheduled projects

After every six-week cycle, we take two weeks off of scheduled projects so everyone can focus on other things, such as fixing bugs, polishing existing features, help plan for the next six-week cycle, and generally wind down. This is called the Cooldown period.

If something takes longer than six weeks

We firmly believe we can get a version of any project out in six weeks. Nearly everything important can be done in six weeks or less without having to do things as fast as we can. We optimize every feature to fit into the best six-week version possible.

We focus on what needs to be done rather than what can be done. Before any project is included in a cycle, we've already figured out what we think the six-week version is. Almost always, all of the planning and consideration happens in the two weeks prior to the cycle.

That way, the six weeks are all implementation and execution. We try to make sure all the big stuff is known and understood before we get started.

Who does the work

Each Large project is assigned a team. So if we take on two Large projects during a cycle, we’d have one team working on one project and another working on the other. Small projects are all done by one team. Teams stay together for the full cycle.

A team is two or three people, depending on the type of work. The biggest team we'll have working on a feature is three at any given time. That’s it. No teams of four, five, or six. Everything we take on has to be done by a team of three, max.

Teams are assembled ad hoc. Before a cycle begins, we ask each person what kind of work they’d like to do over the next six weeks. Teams either coalesce around areas of interest, or we assign people to a team based on their preferences. Teams often change up after the cycle, so everyone gets to work with different people, but sometimes they stick together for a few cycles. There are no hard and fast rules about this.

Communication