{
"$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?"
}