<?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 Patrick Contes blog</title><link>https://pconte.tech/categories/architecture/</link><description>Recent content in Architecture on Patrick Contes blog</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Tue, 08 Jul 2025 22:00:32 +1000</lastBuildDate><atom:link href="https://pconte.tech/categories/architecture/index.xml" rel="self" type="application/rss+xml"/><item><title>Designing Egress in AWS</title><link>https://pconte.tech/p/designing-egress-in-aws/</link><pubDate>Tue, 08 Jul 2025 22:00:32 +1000</pubDate><guid>https://pconte.tech/p/designing-egress-in-aws/</guid><description>
&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;AWS networking is fairly straightforward in a small setup. As a singular environment, you will generally have a single VPC that consists of:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Subnets&lt;/li&gt;
&lt;li&gt;Route tables&lt;/li&gt;
&lt;li&gt;Network ACLs (NACLs)&lt;/li&gt;
&lt;li&gt;Security groups&lt;/li&gt;
&lt;li&gt;An Internet Gateway (IGW)&lt;/li&gt;
&lt;li&gt;NAT Gateway(s)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;There are other components, and even some of the ones mentioned here may not be required. You might have a single subnet for all of your resources. Likewise, a NAT Gateway may not even be necessary (this is rare — and anyone exposing private workloads to the internet unnecessarily is not following best practice).&lt;/p&gt;</description></item><item><title>Perfect vs Practical: How to know when an IT Solution is ready</title><link>https://pconte.tech/p/perfect-vs-practical-how-to-know-when-an-it-solution-is-ready/</link><pubDate>Thu, 12 Jun 2025 22:20:32 +1000</pubDate><guid>https://pconte.tech/p/perfect-vs-practical-how-to-know-when-an-it-solution-is-ready/</guid><description>
&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Designing IT solutions is a challenging task. Not only do you need to take several factors into consideration, but you also need to understand the lifecycle of what you’re designing. Questions will inevitably pop into your head, like:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;How long does this solution need to last?&lt;/li&gt;
&lt;li&gt;Is it going to be perpetual?&lt;/li&gt;
&lt;li&gt;How do we handle high availability and disaster recovery?&lt;/li&gt;
&lt;li&gt;When will I know it&amp;rsquo;s complete?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That last point—&lt;em&gt;when will I know it&amp;rsquo;s complete?&lt;/em&gt;—can be ambiguous. Does it mean the solution is fully fleshed out and working at the desired end state? Or does it mean it&amp;rsquo;s ready once a Minimum Viable Product (MVP) has been constructed?&lt;/p&gt;</description></item></channel></rss>