Communication in engineering is transferring a model so someone else can act — merge, wait, page, or kill a project. Volume is not the skill. Precision and timing are.
Channels
- PR description: why, risk, how you checked. The diff is not the story.
- Incident: current impact, what you tried, what you need. Short. Timestamped. One place.
- Design doc: context, options, recommendation, what would change your mind. Length is not rigor.
- Chat: for coordination, not for the only copy of a decision. Decisions go to the doc or the ticket.
Audience
Staff engineer, product, and support need different sentences. A status for executives that still contains the actual risk is a skill; a status that hides the risk is a career incident later.
Example
What breaks it: a pull request body that says “fixes bug,” and the decision lives only in chat.
Better: the body says why, what the risk is, and how you checked. The decision is also on the ticket.
Pitfalls
- Hiding bad news until the demo.
- Absolute language (“impossible,” “trivial”) when you mean “I haven’t seen it” or “I did it once.”
- Async-only culture with no written decisions, or meeting-only culture with no artifact.
Teaching: mentoring.