software architecture
Dan Hockenmaier on Substack
substack.com
Org debt is just as dangerous as tech debt but is talked about much less
Org debt builds up every time a company operates without discipline:
- Inconsistent principles for promotions and comp
- Hiring without a clear scope for the new role
- Trying new operating models but not sticking to them
- Allowing meeting creep
In the short term, it's always easier to just let this stuff happen. But in the long term, org debt will destroy a company. Execution will slow down, people will get frustrated, and the best ones will leave.
If you're considering joining a company, assess org discipline in the same way you'd assess their metrics and team.
Paul Clements • Software Architecture in Practice, 4th Edition
Len Bass • Software Architecture in Practice, 4th Edition
Paul Clements • Software Architecture in Practice, 4th Edition
enabling incremental development
- A local change can be accomplished by modifying a single element—for example, adding a new business rule to a pricing logic module.
- A nonlocal change requires multiple element modifications but leaves the underlying archite
Paul Clements • Software Architecture in Practice, 4th Edition
I need more tests, more checks and constraints. This takes more scaffolding, which is now fast to create.
More “how will I know this works?” and less “how will I implement this?”
I need to learn how to influence the AI, and channel frustration into guidance.
More high-level thinking about what the sof... See more
Jessitron • Augmented Coding: an Experience Report
Paul Clements • Software Architecture in Practice, 4th Edition
helps with communiation among stakeholders
Rick Kazman • Software Architecture in Practice, 4th Edition
architecture maniffests early design decisions
- If your system requires high performance, then you need to pay attention to managing the time-based behavior of elements, their use of shared resources, and the frequency and volume of their interelement communication.
- If modifiability is important, then you need to pay attention to assigning responsibilities to elements and limiting the interaction