{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreichaqgkfckdiecrca5lyv3mniflfqwg7lq2mdqas6yvvs6mqc6wky",
    "uri": "at://did:plc:3peywwdnn4jkfvqowpviodbf/app.bsky.feed.post/3mlrv2mt342m2"
  },
  "coverImage": {
    "$type": "blob",
    "ref": {
      "$link": "bafkreicyfffvxinooeq74ehoek5rn6dvqzp4ywd5oyg5ud2b66skb527ry"
    },
    "mimeType": "image/png",
    "size": 198656
  },
  "path": "/blog/2026/05/13/how-do-i-diagnose-software-delivery-friction/",
  "publishedAt": "2026-05-13T00:00:00.000Z",
  "site": "https://jeffbailey.us",
  "tags": [
    "Software Engineering",
    "Organization Design",
    "What Is Conway’s Law?"
  ],
  "textContent": "## Prerequisites\n\nThis guide assumes:\n\n  * **Familiarity with Conway’s Law.** Read What Is Conway’s Law? first if “communication structure shapes system structure” sounds new.\n  * **A local clone of the repository you want to analyze.** The diagnosis below is a git query.\n  * **A POSIX shell with`awk`, `sort`, `uniq`, and `cut`.** Standard on macOS and Linux.\n  * **Visibility into the org chart.** You need to map author emails to teams.\n\n\n\n## Rank the congestion candidates\n\nStart by looking at the slowest, most contentious modules. Files with commits from many different authors over the last quarter signal congestion.",
  "title": "How Do I Diagnose Software Delivery Friction?"
}