<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator><link href="https://jamesrcounts.com/feed.xml" rel="self" type="application/atom+xml" /><link href="https://jamesrcounts.com/" rel="alternate" type="text/html" hreflang="en" /><updated>2025-10-09T07:07:58-07:00</updated><id>https://jamesrcounts.com/feed.xml</id><title type="html">Cloud as Code</title><subtitle>I&apos;m Jim Counts. DevOps &amp; cloud engineer. Writing about Azure, Terraform, CI/CD, and secure infra. Automating all the things so you can ship faster (and sleep better).
</subtitle><author><name>Jim Counts</name></author><entry><title type="html">Why Your Terraform Platform Isn’t Scaling—and What to Do About It</title><link href="https://jamesrcounts.com/2025/06/22/why-your-terraform-platform-isnt-scaling.html" rel="alternate" type="text/html" title="Why Your Terraform Platform Isn’t Scaling—and What to Do About It" /><published>2025-06-22T00:00:00-07:00</published><updated>2025-06-22T00:00:00-07:00</updated><id>https://jamesrcounts.com/2025/06/22/why-your-terraform-platform-isnt-scaling</id><author><name>James Counts</name></author><category term="terraform" /><category term="infrastructure-as-code" /><category term="terraform-cloud" /><category term="azure" /><category term="devops" /><category term="platform-engineering" /><category term="automation" /><summary type="html"><![CDATA[Learn how to build a scalable Terraform platform that automates workspace creation, service principals, and landing zones. Stop relying on tickets and manual processes for infrastructure automation.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jamesrcounts.com/media/2025/06/22/workspace-request-flow.png" /><media:content medium="image" url="https://jamesrcounts.com/media/2025/06/22/workspace-request-flow.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">How I Use ChatGPT to Interview Myself (and Why You Should Too)</title><link href="https://jamesrcounts.com/2025/05/31/how-i-use-chatgpt-to-interview-myself.html" rel="alternate" type="text/html" title="How I Use ChatGPT to Interview Myself (and Why You Should Too)" /><published>2025-05-31T00:00:00-07:00</published><updated>2025-05-31T00:00:00-07:00</updated><id>https://jamesrcounts.com/2025/05/31/how-i-use-chatgpt-to-interview-myself</id><author><name>James R. Counts</name></author><category term="Productivity" /><category term="chatgpt" /><category term="productivity" /><category term="writing" /><category term="developer-tools" /><category term="ai" /><category term="communication" /><category term="content-creation" /><category term="writing-tips" /><category term="ai-productivity" /><summary type="html"><![CDATA[Stuck on a blank page? I use ChatGPT as a thinking partner—not just a writing tool. Here's how "interviewing myself" with ChatGPT helps me think clearly, structure better, and write with less friction.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jamesrcounts.com/media/2025/05/31/chatgpt-interview-inspiration.png" /><media:content medium="image" url="https://jamesrcounts.com/media/2025/05/31/chatgpt-interview-inspiration.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">HA/DR for Developers: Building Resilient Systems Without Losing Sleep</title><link href="https://jamesrcounts.com/2025/05/25/ha-dr-for-developers.html" rel="alternate" type="text/html" title="HA/DR for Developers: Building Resilient Systems Without Losing Sleep" /><published>2025-05-25T00:00:00-07:00</published><updated>2025-05-25T00:00:00-07:00</updated><id>https://jamesrcounts.com/2025/05/25/ha-dr-for-developers</id><author><name>Jim Counts</name></author><category term="Azure" /><category term="DevOps" /><category term="Architecture" /><category term="Cloud-Native" /><category term="high-availability" /><category term="disaster-recovery" /><category term="azure" /><category term="devops" /><category term="resilience" /><category term="cloud-architecture" /><category term="system-design" /><category term="azure-front-door" /><category term="availability-zones" /><category term="rto-rpo" /><category term="active-active" /><category term="hot-hot" /><category term="infrastructure-as-code" /><category term="platform-engineering" /><category term="burnout-prevention" /><summary type="html"><![CDATA[Comprehensive guide to High Availability and Disaster Recovery for developers. Learn Azure HA/DR patterns, Active/Active vs Active/Passive topologies, and how to build resilient systems that prevent burnout. Includes practical examples and cost-benefit analysis.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jamesrcounts.com/media/2025/05/25/family-laptop-sunset.png" /><media:content medium="image" url="https://jamesrcounts.com/media/2025/05/25/family-laptop-sunset.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Container Releases to Kubernetes with Azure DevOps</title><link href="https://jamesrcounts.com/2021/07/16/container-releases-to-kubernetes-with-azure-devops.html" rel="alternate" type="text/html" title="Container Releases to Kubernetes with Azure DevOps" /><published>2021-07-16T00:00:00-07:00</published><updated>2021-07-16T00:00:00-07:00</updated><id>https://jamesrcounts.com/2021/07/16/container-releases-to-kubernetes-with-azure-devops</id><author><name>James R. Counts</name></author><category term="DevOps" /><category term="Azure" /><category term="Kubernetes" /><category term="CI/CD" /><category term="AzureDevOps" /><category term="DevOps" /><category term="Docker" /><category term="Kubernetes" /><category term="Helm" /><category term="CI/CD" /><category term="Container" /><category term="Pipeline" /><category term="AKS" /><category term="Azure Container Registry" /><summary type="html"><![CDATA[Learn how to build a complete CI/CD pipeline for containerized applications using Azure DevOps, Docker, and Kubernetes. Includes step-by-step guide for multi-environment deployments with Helm charts.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jamesrcounts.com/media/2021/07/11/container-hero.png" /><media:content medium="image" url="https://jamesrcounts.com/media/2021/07/11/container-hero.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Terraform Pipelines with Azure DevOps: Getting Started</title><link href="https://jamesrcounts.com/2021/07/07/terraform-pipelines-with-azure-devops.html" rel="alternate" type="text/html" title="Terraform Pipelines with Azure DevOps: Getting Started" /><published>2021-07-07T00:00:00-07:00</published><updated>2021-07-07T00:00:00-07:00</updated><id>https://jamesrcounts.com/2021/07/07/terraform-pipelines-with-azure-devops</id><author><name>James Counts</name></author><category term="DevOps" /><category term="Infrastructure as Code" /><category term="Azure" /><category term="AzureDevOps" /><category term="DevOps" /><category term="Terraform" /><category term="Infrastructure as Code" /><category term="CI/CD" /><category term="Azure Pipelines" /><category term="HashiCorp" /><category term="Automation" /><summary type="html"><![CDATA[Learn how to build safe, automated Terraform pipelines with Azure DevOps that include plan review and approval workflows. Complete guide with code examples and best practices.]]></summary></entry><entry><title type="html">One Pipeline, One Lifecycle</title><link href="https://jamesrcounts.com/2020/02/08/one-lifecycle.html" rel="alternate" type="text/html" title="One Pipeline, One Lifecycle" /><published>2020-02-08T00:00:00-08:00</published><updated>2020-02-08T00:00:00-08:00</updated><id>https://jamesrcounts.com/2020/02/08/one-lifecycle</id><author><name>James R. Counts</name></author><category term="DevOps" /><category term="Azure DevOps" /><category term="CI/CD" /><category term="AzureDevOps" /><category term="Kubernetes" /><category term="DevOps" /><category term="AKS" /><category term="ACR" /><category term="Docker" /><category term="Helm" /><category term="Pipeline Optimization" /><category term="CI/CD Best Practices" /><summary type="html"><![CDATA[Learn how to optimize Azure DevOps pipelines by separating build and deployment lifecycles. This guide shows you how to refactor monolithic pipelines into focused, efficient workflows for Docker images, Helm charts, and deployments.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jamesrcounts.com/media/2020/02/01/ADO-pipeline-flow.png" /><media:content medium="image" url="https://jamesrcounts.com/media/2020/02/01/ADO-pipeline-flow.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Azure DevOps Pipelines - Container Releases Demystified</title><link href="https://jamesrcounts.com/2019/11/18/azdo-container-pipelines.html" rel="alternate" type="text/html" title="Azure DevOps Pipelines - Container Releases Demystified" /><published>2019-11-18T00:00:00-08:00</published><updated>2019-11-18T00:00:00-08:00</updated><id>https://jamesrcounts.com/2019/11/18/azdo-container-pipelines</id><author><name>James R. Counts</name></author><category term="DevOps" /><category term="Azure" /><category term="Kubernetes" /><category term="CI/CD" /><category term="AzureDevOps" /><category term="Kubernetes" /><category term="DevOps" /><category term="AKS" /><category term="ACR" /><category term="Docker" /><category term="Helm" /><category term=".NET" /><category term="Containerization" /><category term="CI/CD" /><category term="Azure Pipelines" /><category term="Container Registry" /><category term="Deployment Automation" /><summary type="html"><![CDATA[Complete guide to building and deploying containerized .NET applications to Kubernetes using Azure DevOps pipelines, Azure Container Registry (ACR), and Helm charts. Learn CI/CD best practices for container deployments.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jamesrcounts.com/media/2019/11/01/container-hero.png" /><media:content medium="image" url="https://jamesrcounts.com/media/2019/11/01/container-hero.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Safe Terraform Pipelines with Azure DevOps</title><link href="https://jamesrcounts.com/2019/10/14/azdo-safe-terraform-pipelines.html" rel="alternate" type="text/html" title="Safe Terraform Pipelines with Azure DevOps" /><published>2019-10-14T00:00:00-07:00</published><updated>2019-10-14T00:00:00-07:00</updated><id>https://jamesrcounts.com/2019/10/14/azdo-safe-terraform-pipelines</id><author><name>James R Counts</name></author><category term="DevOps" /><category term="Infrastructure as Code" /><category term="Azure" /><category term="Terraform" /><category term="AzureDevOps" /><category term="Terraform" /><category term="DevOps" /><category term="Infrastructure" /><category term="CI/CD" /><category term="Security" /><category term="Automation" /><summary type="html"><![CDATA[Learn how to build secure and safe Terraform automation pipelines in Azure DevOps with proper plan review, approval workflows, and remote state management for production infrastructure.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jamesrcounts.com/assets/azure-devops-terraform-pipeline.png" /><media:content medium="image" url="https://jamesrcounts.com/assets/azure-devops-terraform-pipeline.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Testing and Debugging AWS Lambda Functions: A Complete Guide for Developers</title><link href="https://jamesrcounts.com/2017/05/13/on-testing-and-debugging-lambdas.html" rel="alternate" type="text/html" title="Testing and Debugging AWS Lambda Functions: A Complete Guide for Developers" /><published>2017-05-13T00:00:00-07:00</published><updated>2017-05-13T00:00:00-07:00</updated><id>https://jamesrcounts.com/2017/05/13/on-testing-and-debugging-lambdas</id><author><name>James Counts</name></author><category term="AWS" /><category term="Serverless" /><category term="Development" /><category term="AWS Lambda" /><category term="serverless" /><category term="testing" /><category term="unit testing" /><category term="integration testing" /><category term="debugging" /><category term="C#" /><category term=".NET" /><category term="AWS SDK" /><category term="CloudWatch" /><category term="dependency injection" /><category term="mocking" /><category term="Moq" /><category term="S3" /><category term="Kinesis" /><category term="API Gateway" /><category term="production debugging" /><category term="logging" /><category term="IAM" /><category term="credentials" /><summary type="html"><![CDATA[Learn how to effectively test and debug AWS Lambda functions using unit tests, integration tests, and proper logging strategies. Includes C# examples and best practices for serverless development.]]></summary></entry><entry><title type="html">What to Expect at a LambdaSharp Meetup - Building a Twitter Bot with AWS Lambda</title><link href="https://jamesrcounts.com/2017/03/22/what-to-expect-at-lambdasharp.html" rel="alternate" type="text/html" title="What to Expect at a LambdaSharp Meetup - Building a Twitter Bot with AWS Lambda" /><published>2017-03-22T00:00:00-07:00</published><updated>2017-03-22T00:00:00-07:00</updated><id>https://jamesrcounts.com/2017/03/22/what-to-expect-at-lambdasharp</id><author><name>James Counts</name></author><category term="Serverless Development" /><category term="AWS" /><category term=".NET" /><category term="Meetups" /><category term="serverless" /><category term="lambda" /><category term="AWS" /><category term="S3" /><category term="dotnet" /><category term="rekognition" /><category term="twitter-bot" /><category term="image-recognition" /><category term="meetup" /><category term="san-diego" /><category term="visual-studio-code" /><category term="net-core" /><category term="tweetinvi" /><category term="cloudwatch" /><category term="iam" /><category term="s3-events" /><category term="hands-on-coding" /><category term="team-challenge" /><summary type="html"><![CDATA[Join me for a hands-on experience at the LambdaSharp meetup where we built an automated Twitter bot using AWS Lambda, S3, and Rekognition. Learn about serverless development, .NET Core, and image recognition.]]></summary></entry><entry><title type="html">Getting started with serverless</title><link href="https://jamesrcounts.com/2017/03/16/getting-started-with-serverless.html" rel="alternate" type="text/html" title="Getting started with serverless" /><published>2017-03-16T00:00:00-07:00</published><updated>2017-03-16T00:00:00-07:00</updated><id>https://jamesrcounts.com/2017/03/16/getting-started-with-serverless</id><author><name>James Counts</name></author><category term="serverless" /><category term="cloud-computing" /><category term="development" /><category term="ruby" /><category term="homebrew" /><category term="jekyll" /><category term="serverless" /><category term="guides" /><category term="aws" /><category term="cloud" /><category term="deployment" /><category term="infrastructure" /><summary type="html"><![CDATA[A comprehensive guide to serverless computing for developers. Learn how to set up tools, cloud services, and deployment pipelines for your first serverless project.]]></summary></entry></feed>