Skip to content
KODE Product OS

Communication

Keep the current plan easy to find, and give people room to focus between conversations.

Linear is the record

The Linear project and its linked requirements are the reference for scope, milestones, target dates and significant decisions. Issues hold work-specific questions, acceptance details, blockers and implementation notes. When a discussion changes what we intend to deliver, update the plan.

Slack is for working things out

Slack is useful for questions and quick coordination. When a Slack conversation changes scope, timing, ownership or release behavior, record the outcome in the relevant Linear project or issue. A link to the thread can add context, but the decision should make sense without it.

Share useful progress

Project leads post a short written update every week, and whenever something significant changes, reusing the project record rather than writing a separate status report. A useful update answers:

  • What moved forward, and what's the next usable milestone?
  • Has the target date or an important assumption changed?
  • What risks or dependencies need attention, and what's the proposed mitigation?
  • What decision or help is needed, and from whom?

An important risk shouldn't wait for the next update. Product communicates business-facing changes to dates and scope.

When something is urgent

Customer or production issues go through triage. A Triage issue is created in Linear and assigned to an engineer at random, and a notification goes straight to our triage channel in Slack. The engineer usually picks it up within minutes, works with support in real time and gets it resolved. If the assigned engineer isn't online yet, another engineer picks it up without being asked.

Other urgent requests get worked out in Slack, between product or support and engineering. Engineers usually volunteer and help the same day. Nobody has to beg or push them to take on the work, which is why our culture matters as much as our process.

Shared hours

Everyone overlaps from 1:00 to 5:00 PM US Eastern time. Those hours give us plenty of time to talk live, and the rest of the day is for focused work with few interruptions.

Use meetings deliberately

Start with enough written context that people can respond when they have a break. Talk live when ambiguity, urgency or lots of back-and-forth make that more effective, then write down the decision so people who weren't there can follow it. See Meetings for the few meetings we hold on a schedule. A routine message shouldn't create an expectation of an immediate reply or after-hours work.

Give feedback people can use

Explain the concern, its likely impact and a practical alternative. Ask questions when the intent is unclear. Receive feedback with curiosity, make disagreements explicit and constructive, and involve the right owner when a decision is needed.