<rss version="2.0">
  <channel>
    <title>Software Engineering on Lance Newman</title>
    <link>https://www.lancenewman.com/categories/software-engineering/</link>
    <description></description>
    
    <language>en</language>
    
    <lastBuildDate>Tue, 07 Jul 2026 15:27:17 -0400</lastBuildDate>
    
    <item>
      <title>Ownership is not a modularization problem</title>
      <link>https://www.lancenewman.com/2026/07/07/ownership-is-not-a-modularization.html</link>
      <pubDate>Tue, 07 Jul 2026 15:27:17 -0400</pubDate>
      
      <guid>http://lancenewman.micro.blog/2026/07/07/ownership-is-not-a-modularization.html</guid>
      <description>&lt;p&gt;Ownership is an organizational question, not a problem to be solved with modular implementation.&lt;/p&gt;
&lt;p&gt;A lack of clear ownership shouldn&amp;rsquo;t be a motivator to seek out the &lt;a href=&#34;https://www.youtube.com/watch?v=olxoNDBp6Rg&#34;&gt;mythical modular monolith&lt;/a&gt;, but in my experience it seems to be a primary driver for modularization in growing enterprises. Well-defined modules can help make codifying ownership easier, but you don&amp;rsquo;t need them to decide who is responsible for something.&lt;/p&gt;
&lt;p&gt;Modularizing a monolith is difficult. Working with stakeholders to choose appropriate context boundaries for an application&amp;rsquo;s domains can take years for monoliths that have exploded in complexity over a decade. Unfortunately, a 3:00 AM alert for an exception thrown by a shared bit of code doesn&amp;rsquo;t wait until refactoring can be prioritized. Someone still has to own it and respond, so these problems are usually offloaded onto a tired staff engineer or left to languish until your bug backlog has hundreds of unhandled exceptions that need to be addressed.&lt;/p&gt;
&lt;p&gt;Make an ownership decision even when the path towards true context separation is unclear or in progress. You&amp;rsquo;ll probably pick the wrong owner more than once, but documenting who owns a file or directory doesn&amp;rsquo;t change any code so the decision is inexpensive. Define who owns code before modularizing it and you&amp;rsquo;ll find that you have teams with the agency and responsibility to improve it.&lt;/p&gt;
</description>
    </item>
    
  </channel>
</rss>