<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Architecture on rjrowland</title><link>https://rjrowland.com/tags/architecture/</link><description>Recent content in Architecture on rjrowland</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 25 Jul 2026 09:00:00 -0500</lastBuildDate><atom:link href="https://rjrowland.com/tags/architecture/index.xml" rel="self" type="application/rss+xml"/><item><title>Design for the System You Have, Not the One You Imagine</title><link>https://rjrowland.com/posts/engineering-practices-architecture/</link><pubDate>Sat, 25 Jul 2026 09:00:00 -0500</pubDate><guid>https://rjrowland.com/posts/engineering-practices-architecture/</guid><description>&lt;h2 id="strangler-fig-not-the-big-bang-rewrite"&gt;Strangler fig, not the big bang rewrite&lt;/h2&gt;
&lt;p&gt;The big bang rewrite has a seductive pitch: the existing system is a mess, the new one will be clean, we&amp;rsquo;ll migrate users when it&amp;rsquo;s ready. What actually happens: the rewrite starts with &amp;ldquo;just the core functionality&amp;rdquo; and spends years discovering that the old system&amp;rsquo;s quirks were load-bearing. Edge cases nobody documented, accumulated over years. Integrations with external systems nobody wrote down. Data migration complexity nobody scoped. Behavioral requirements nobody stated because everyone assumed they were obvious.&lt;/p&gt;</description></item></channel></rss>