In remote and async teams, written documentation replaces synchronous conversation. Learn the vocabulary and principles for writing documentation that communicates effectively across time zones.
0 / 10 completed
1 / 10
What does 'writing is thinking' mean in a remote engineering context?
'Writing is thinking' means that formulating your thoughts into clear written language forces you to confront gaps, ambiguities, and assumptions. In remote teams, this is valuable because a well-written RFC or design doc replaces a one-hour meeting and creates a lasting record.
2 / 10
What is an 'ADR' (Architectural Decision Record)?
An ADR captures a decision with its context, the decision itself, and the consequences. It is discoverable by future engineers who ask 'why did we do it this way?' — preventing the same debate from happening repeatedly. Stored alongside code in a /decisions or /adr directory.
3 / 10
What is the purpose of an 'RFC' (Request for Comments) document in an engineering team?
An RFC is a proposal document — usually a design or significant change — shared for async review. Team members leave comments over a set window. This replaces or prepares for synchronous review meetings, and leaves a written record of the discussion.
4 / 10
In async documentation culture, what does 'default to writing' mean?
'Default to writing' (or 'write it down') means that decisions, reasoning, and context should be documented by default, not left in Slack threads or spoken only in meetings. This is a core principle at companies like GitLab, Basecamp, and Automattic.
5 / 10
What is a 'runbook' and how does it serve as async communication?
A runbook is documentation as communication: it captures operational knowledge in a way that can be acted on by anyone on the team — especially during an incident at 3am when the original author is offline. Good runbooks make the team async-ready for operations.
6 / 10
What does 'single source of truth' (SSOT) mean for documentation?
SSOT means that for any given topic, there is one authoritative document or location. When there are multiple documents that could conflict, people lose trust in documentation. Maintaining SSOT requires discipline: update the canonical document, don't duplicate it.
7 / 10
What does 'evergreen documentation' mean?
Evergreen documentation remains accurate over time — it is updated whenever the underlying system changes, rather than being written once and forgotten. Achieving this requires documentation to be treated as part of the Definition of Done, not as an afterthought.
8 / 10
What is 'docs-as-code'?
Docs-as-code means documentation lives alongside code in version control (Git), goes through code review (PRs), is built by CI pipelines, and is tested for broken links and accuracy. This creates tighter integration between code changes and documentation updates.
9 / 10
What is a 'DACI' or 'RACI' and how does it reduce async ambiguity?
DACI (Driver, Approver, Contributor, Informed) or RACI (Responsible, Accountable, Consulted, Informed) clarifies decision-making roles in writing. In async teams, unclear ownership causes decisions to stall for days. Documenting who decides what prevents this.
10 / 10
What does 'context-free communication' mean in async writing?
Context-free (or self-contained) async communication anticipates the reader's questions. Instead of 'we need to fix the caching issue' (requires prior context), write 'the Redis cache on the payments service is returning stale cart data after 30 minutes, causing incorrect order totals — we need to reduce TTL from 1 hour to 5 minutes.' The reader can act without a follow-up call.