<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Platform Engineering on Nick Perkins</title>
		<link>https://nickperkins.au/categories/platform-engineering/</link>
		<description>Recent content in Platform Engineering on Nick Perkins</description>
		<generator>Hugo</generator>
		<language>en</language>
		
		
		
		
			<lastBuildDate>Fri, 25 Jul 2025 14:30:00 +1000</lastBuildDate>
		
			<atom:link href="https://nickperkins.au/categories/platform-engineering/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>GitHub Enterprise Reality Check: A DevOps Engineer&#39;s Perspective</title>
				<link>https://nickperkins.au/article/github-enterprise-reality-check/</link>
				<pubDate>Fri, 25 Jul 2025 14:30:00 +1000</pubDate>
				<guid>https://nickperkins.au/article/github-enterprise-reality-check/</guid>
				<description>&lt;p&gt;Over the past couple of years, I&amp;rsquo;ve been working extensively with GitHub Enterprise in large organisational settings. While GitHub has built an exceptional developer experience and continues to ship features at an impressive pace, the reality is that GitHub Enterprise still has significant gaps when it comes to enterprise-scale operations. Let me share what I&amp;rsquo;ve discovered about the current state of GitHub Enterprise from a platform engineering perspective.&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure class=&#34;figure&#34;&gt;&#xA;  &lt;img class=&#34;figure__img&#34; alt=&#34;A laptop computer displaying a code editor with syntax-highlighted programming code on a dark background, showing colorful text in green, yellow, and purple. The laptop sits on a clean desk surface next to a small potted succulent plant in a decorative white pot, creating a modern, minimalist workspace aesthetic.&#34; src=&#34;https://nickperkins.au/article/github-enterprise-reality-check/james-harrison-vpOeXr5wmR4-unsplash_hu_a08ccfe7886a9dc5.jpg&#34; width=&#34;711&#34; height=&#34;400&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;  &lt;figcaption class=&#34;figure__caption&#34;&gt;Photo by &lt;a href=&#34;https://unsplash.com/@jstrippa?utm_content=creditCopyText&amp;utm_medium=referral&amp;utm_source=unsplash&#34;&gt;James Harrison&lt;/a&gt; on &lt;a href=&#34;https://unsplash.com/photos/black-laptop-computer-turned-on-on-table-vpOeXr5wmR4?utm_content=creditCopyText&amp;utm_medium=referral&amp;utm_source=unsplash&#34;&gt;Unsplash&lt;/a&gt;&#xA;      &lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;h2 id=&#34;the-repository-centric-challenge&#34;&gt;The Repository-Centric Challenge&lt;/h2&gt;&#xA;&lt;p&gt;GitHub&amp;rsquo;s architecture is fundamentally repository-focused, which works brilliantly for individual projects and small teams. However, this design becomes a significant limitation when you&amp;rsquo;re managing hundreds or thousands of repositories across an enterprise. Features that should operate at an organisational level often require manual configuration per repository, or worse, custom tooling to manage at scale.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Failure MUST be an option for innovation</title>
				<link>https://nickperkins.au/article/failure-must-be-an-option/</link>
				<pubDate>Fri, 17 Jan 2025 17:48:50 +1000</pubDate>
				<guid>https://nickperkins.au/article/failure-must-be-an-option/</guid>
				<description>&lt;p&gt;This week I hosted a brown bag session at work where I explored the idea that failure isn’t something to be avoided at all costs but must be a safe option for software engineering teams. The concept of failure often carries a negative connotation. However, embracing failure as an option can foster an environment of learning, innovation, and psychological safety. Let’s explore this by looking at the benefits this shift in mindset can bring, and the elements required to create a culture where failure is seen as a stepping stone to success.&lt;/p&gt;</description>
			</item>
			<item>
				<title>ORAS for Configuration Management</title>
				<link>https://nickperkins.au/code/oras-for-configuration-management/</link>
				<pubDate>Sat, 29 Jun 2024 18:00:00 +1000</pubDate>
				<guid>https://nickperkins.au/code/oras-for-configuration-management/</guid>
				<description>&lt;p&gt;A challenge for any engineering team is handling configuration management in a secure and efficient way. Recently, I&amp;rsquo;ve explored using ORAS (OCI Registry As Storage), a tool which enhances OCI (Ope Container Initiative) registries by enabling them to store various artifacts, not just container images.&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-is-oras&#34;&gt;What is ORAS?&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://oras.land&#34;&gt;ORAS&lt;/a&gt; is an open source project which builds tools and libraries to enable using OCI registries to store any type of artifact, not just container images. The ability to leverage container registries in this way comes from how container images are constructed.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Infrastructure as code with Terraform</title>
				<link>https://nickperkins.au/code/infrastructure-as-code/</link>
				<pubDate>Sun, 18 Apr 2021 12:53:08 +1000</pubDate>
				<guid>https://nickperkins.au/code/infrastructure-as-code/</guid>
				<description>&lt;p&gt;Over the last couple of months I&amp;rsquo;ve been working on a project for a containerised orchestration platform using Infrastructure as Code. This has meant I&amp;rsquo;ve spent most of my time working with &lt;a href=&#34;https://www.terraform.io/&#34;&gt;Terraform&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-is-terraform&#34;&gt;What is Terraform?&lt;/h2&gt;&#xA;&lt;p&gt;I could write a couple of paragraphs about what Terraform is and what it does, but I think they put it best:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Terraform is an open-source infrastructure as code software tool that provides a consistent CLI workflow to manage hundreds of cloud services. Terraform codifies cloud APIs into declarative configuration files.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
