What do software engineering teams ship?

[back to all posts]

Feb 2023

What do software engineering teams actually ship? If you answer that they ship an application, an API, a library, a website, or something similar, then you're missing the complete picture. Software teams do ship these things, but they also "ship" the ability to rapidly adapt their software to emergent business needs.

This viewpoint places engineering excellence and technical debt reduction in a broader context. The "hackability" of your codebase, which depends on the amount of tech debt and similar factors, is a deliverable on par with the other features your team owns and must therefore be prioritized alongside them. It also gives us a litmus test to disambiguate shallow cleanups from more profound improvements: e.g., does a refactoring project make adding features quicker and less risky? It's a worthwhile investment if yes; otherwise, probably not.

This viewpoint also dovetails into the social and organizational aspects of software development. To rapidly adapt a codebase, a team needs technical expertise and feel invested in its core design choices. Establishing and sustaining this is a crucial part of your role if you're in a leadership position.