Technical Deep Dives

Engineering Articles

Deep-dives, post-mortems, and architectural blueprints. Everything I've learned about building and operating production systems.

13 min read

Designing Systems That Outlive Frameworks

Frameworks change faster than systems. Sustainable architecture protects business behavior, data, and operational knowledge without abstracting everything.

software-architectureframework-designevolutionary-architecture
13 min read

Why Business Rules Age Faster Than Code

Software rarely becomes legacy because of its language. It becomes legacy when changing business rules outgrow the architecture built to contain them.

software-architecturebusiness-rulesdomain-modeling
12 min read

Observability Before Deployment

A production-focused argument for designing observability before rollout so releases can be detected, understood, and recovered under pressure.

observabilityrelease-engineeringdeployment-automation
12 min read

Why Rollbacks Fail in Production

A production-focused analysis of why rollbacks fail when code, data, configuration, side effects, and ownership are not designed for recovery.

release-engineeringrollbackincident-response
13 min read

Deployment Is an Engineering Problem

A production-focused argument for treating deployment as system design: artifact identity, automation, rollback, data safety, and operational ownership.

release-engineeringdeployment-automationcontinuous-delivery
14 min read

Designing Safe Release Pipelines

A production-focused guide to release pipelines that reduce deployment risk through automation, evidence, rollout control, and rollback discipline.

release-engineeringci-cdcontinuous-delivery
14 min read

Feature Flags Are More Important Than Branches

A production-focused argument for treating feature flags as runtime release control, not decoration around branch strategy.

release-engineeringfeature-flagstrunk-based-development
16 min read

The Hidden Cost of Long-Lived Branches

A production-focused look at how long-lived branches create integration debt, delayed feedback, release risk, and operational drag.

release-engineeringgit-flowtrunk-based-development
18 min read

Trunk-Based Development vs Git Flow

A production-focused comparison of trunk-based development and Git Flow through release risk, team maturity, CI discipline, and rollback ownership.

release-engineeringgit-flowtrunk-based-development
9 min read

Building Production Systems with Git Flow, Releases and AI

A deep technical guide about release engineering, Git Flow, semantic versioning, CI/CD, operational governance and AI-assisted software development.

software engineeringgit flowrelease engineering
2 min read
Editorial

Welcome to João Camilo's Blog

Why I started this blog and what you can expect from these technical deep-dives into real-world software engineering.

EngineeringProductCulture