Maintaining software is counter-intuitive to a lot of...

February 10th, 2025

Maintaining software is counter-intuitive to a lot of...

Maintaining software is counter-intuitive to a lot of people. Without wading too deep into the "Is software engineering a real engineering discipline" debate, all forms of engineering come with maintenance requirements. Civil engineers think about road repairs; mechanical engineers think about the wear and tear of materials that degrade with use. " "" "In software, while there isn't a physical substrate that needs maintenance (yes, there's hardware, but let's bucket that under electrical engineering), maintenance is still required in most cases. Given a specific set of requirements, though, a highly skilled software engineer can build a system that requires almost no maintenance, which is one of the beautiful things about software engineering. " "" "That said, though, such sets of requirements are rare, and in my experience, the set of requirements never stays static. This continued iteration means that there is almost always a maintenance cost to software, and the bigger the project, the more maintenance there is." "" "While it's not a fun topic to discuss because most software engineers would prefer just to build new stuff, maintaining what's been built is critical to enabling the building of new stuff. Working to minimize maintenance costs is, therefore, critical work that often gets overlooked but has such high leverage!


Original post on LinkedIn