Skip to content

37signals

Consent tier: self-published · Kind: org · Sources: 10 · Updated: 2026-07-16

Install:

Prebuilt skill: SKILL.md

Makers of Basecamp and HEY, ~70 people, fully distributed across 5 continents, remote since founding how we work. Their planning method — Shape Up — is published as a free book and is also the process they run their own product teams on Shape Up. Engineering culture leans hard into “boring”, server-first Rails and skepticism of unnecessary tooling.

Fixed appetite, variable scope — decide how much time a problem is worth before you decide what to build, then build to that budget instead of estimating a spec Shape Up ch.1. Work happens in six-week cycles with a two-week cooldown between them, and all teams share the same cadence how we work.

Before the cycle, shape the problem, state the appetite, and sketch the rough solution. During cooldown, place bets at a betting table; do not pull them from a backlog — “no backlogs” is explicit doctrine Shape Up ch.8. When you take a bet, own the whole project, not a list of tasks, and define done as deployed Shape Up ch.10. Track progress with hill charts (uphill = unsolved, downhill = just execution), not percent-complete or burndown Shape Up. Use a circuit breaker: cancel projects that don’t ship within their cycle by default rather than auto-extending them Shape Up ch.8. During cooldown, fix bugs, plan cycles, and make the next bets how we work. As a two-person QA team, run manual, guided exploratory testing against ~100-item per-product checklists (not exhaustive test-case matrices), then run accessibility passes with screen readers and the home-grown BackstopJS visual-regression suite all about QA.

Vanilla, server-first Rails: fight hard before adding gems or JS dependencies; Hotwire (Turbo/Stimulus) for the front end with #nobuild import maps instead of a JS bundler; Propshaft for assets; solid_cache/solid_queue/solid_cable running on the existing relational database instead of adding Redis; Minitest with fixtures; deploy with Kamal directly to VMs/bare metal, no Kubernetes vanilla Rails stack. Kamal 2 replaced Traefik with a purpose-built kamal-proxy for gapless, imperative deployments Kamal 2.

  1. Fixed appetite, variable scope — decide the time budget before the solution Shape Up ch.1
  2. Six-week cycles with a two-week cooldown, no exceptions across teams how we work
  3. No backlogs — shape and bet, don’t queue Shape Up ch.8
  4. Hand over whole projects, not task lists; done means deployed Shape Up ch.10
  5. Circuit breaker — cancel by default rather than extend a project past its cycle Shape Up ch.8
  6. Show progress on a hill (uphill/downhill), not with estimates or percentages Shape Up
  7. Vanilla Rails, server-rendered, minimal dependencies — fight hard before adding a gem or a JS package vanilla Rails stack
  8. Manual, guided exploratory QA over exhaustive test-case matrices all about QA
  9. Coding is craft, not overhead to delegate away — pair with AI, don’t hand it the keyboard coding should be a vibe
  • Manual QA is a deliberate, celebrated practice — two people running guided exploratory passes and checklists, not automated end-to-end suites all about QA. That’s a real bet against TDD/heavy-automation dogma; it works because their QA staff are experienced generalists embedded in the Shape Up cycle, not because automated testing doesn’t matter — Minitest and fixtures are still standard practice in the stack vanilla Rails stack. Don’t read “manual QA works for them” as “skip your test suite.”
  • AI posture is genuinely split by voice and by time. DHH is on record wanting to keep his hands on the keyboard and treating full vibe-coding handoff with suspicion coding should be a vibe, while a year later the company shipped a fully agent-accessible Basecamp — revamped API, CLI, and a bundled skill for agent harnesses agent-accessible. Mimic the trajectory (cautious about full autonomy in the editor, enthusiastic about making the product agent-operable), not a single fixed stance.
  • Shape Up’s six-week/two-week cadence assumes a company that can hold “all teams operate on the same 6-week cadence” how we work — a ~70-person, cross-functional, deeply synced org. It doesn’t obviously survive contact with much larger or less disciplined organizations without adaptation, which the book itself acknowledges (Appendix: “Adjust to Your Size”) Shape Up.