MLOps: model lifecycle for infra engineers

Sixth post in the series. In the previous one, we automated GPU cluster provisioning. Next comes what happens after the hardware is ready: how a model goes from “works on my notebook” to “running in production with an SLA.” tl;dr Models need the same artifact, promotion, and rollback discipline as application builds. Use a real registry with metadata and controlled deployments. Prefer MLflow aliases over deprecated stages when describing promotions. The model with no birth certificate A data scientist drops a message in the team channel with a link to a shared drive: “Here’s the model. It’s a 15 GB PyTorch checkpoint. We need it in production by Friday.” ...

May 30, 2026 · 7 min · Ricardo Martins

Infrastructure as Code for AI: automating GPU clusters

Fifth post in the series. In the previous one, we went inside the GPU. This time we automate everything around it. Understanding GPUs is useful. Provisioning them consistently and at scale is where infrastructure engineering actually meets AI. tl;dr IaC is the only sane way to provision expensive GPU infrastructure repeatedly. Validate SKU choices, remote state, and deployment guardrails before apply. If the pipeline uses OIDC, Terraform and GitHub Actions both need explicit OIDC settings. The $4,000 typo I started the week with a win. I manually provisioned a GPU cluster in East US 2 for an ML experiment: AKS with a Standard_NC6s_v3 node pool, accelerated networking, GPU drivers, correct taints. It took most of a day, but it worked. ...

May 26, 2026 · 8 min · Ricardo Martins

GPU deep dive: what happens inside the silicon

Fourth post in the series. In the previous one, you learned which GPU VMs to provision and how to connect them. This time we look inside the GPU so you can troubleshoot better and talk to the ML team without guessing. tl;dr GPU memory is consumed by more than model weights. Gradients, optimizer states, and activations usually dominate training memory. Understanding memory hierarchy and topology makes troubleshooting much faster. The 2 AM ticket Slack fires at 2 AM. The ML team’s training job crashed again. The error is a single line: ...

May 22, 2026 · 11 min · Ricardo Martins

Compute for AI: choosing the right hardware (and connecting it properly)

Third post in the series where I translate AI into the language of people who live and breathe infrastructure. In the previous post, we talked about the storage bottleneck nobody notices until it hurts. This one is about compute. Spoiler: it is not enough to buy the most expensive GPU. You need the right GPU, connected the right way. tl;dr Pick hardware based on training vs inference, not on sticker price. GPU family, memory size, and interconnect matter more than vCPU count. For distributed jobs, quota, availability, and network fabric decide whether the cluster performs or stalls. The story you don’t want to live The ML team asks for “a GPU cluster for training.” You do what any infra engineer would do under time pressure: provision eight Standard_D64s_v5 VMs. Sixty-four vCPUs each, 256 GiB of RAM, Premium SSD. On paper, it looks respectable. ...

May 18, 2026 · 12 min · Ricardo Martins

Data and storage for AI workloads: the bottleneck nobody sees

This is the second post in the series where I translate AI into the language of infrastructure engineers. In the first post, I showed that AI is just another workload and that your infra skills already prepare you more than you think. Now for the bottleneck everyone ignores: storage. It is the hidden villain behind performance problems in almost every AI project I’ve seen. tl;dr Storage is usually the first bottleneck in AI training. Keep durable data in Blob or Data Lake, but cache the active working set on local NVMe. Check GPU, disk, and network metrics together before blaming the model or the GPUs. The midnight call You did everything right. The ML team asked for a GPU cluster and you delivered: eight NVIDIA A100s across two nodes, high-bandwidth networking, CUDA drivers up to date. Clean deployment. The team kicked off their first training job Friday at 6 PM and you went home feeling good. ...

May 14, 2026 · 9 min · Ricardo Martins

AI for infrastructure engineers: why AI needs you

This is the first post in a series where I’ll translate the world of AI into the language that infrastructure engineers already speak. If you’re the kind of professional who configures VMs, builds CI/CD pipelines, and gets woken up at 2 AM when Nagios fires, this content is for you. The series is based on my open-source book AI for Infrastructure Professionals, adapted and expanded here on the blog. tl;dr AI is another workload with different performance, cost, and data patterns. Infrastructure engineers already own the hard parts: compute, networking, security, observability, and cost control. If you can run production infrastructure well, you already have the foundation to support AI systems. The Monday morning message It’s 8:47 AM on a Monday. You’re halfway through your coffee, reviewing a Terraform plan for a network redesign, when a Slack message lights up your screen. It’s from the data science team lead: ...

May 10, 2026 · 7 min · Ricardo Martins

Something My Manager Said Today That Stayed With Me

Had a 1:1 last week. Nothing unusual, just a regular conversation, catching up on things. But there was one moment that stayed with me after the call ended. At some point he said he usually thinks about people in four different ways. Not as an official framework or anything like that, just how he personally sees it. And I don’t know, the way he explained it felt simple, but it kind of stuck. ...

March 24, 2026 · 4 min · Ricardo Martins

Responsibility, Trade-Offs, and Learning at AI Scale

Over the past year, I’ve been working closely with some of the bigger and more visible AI customers in Microsoft’s ecosystem. Large platforms. Fast-moving teams. High expectations. High stakes. On paper, that kind of visibility sounds exciting. In reality, it comes with a weight that’s hard to explain unless you’ve been there. Because being close to impact also means being close to consequence. Visibility changes everything When you work with smaller teams or early-stage projects, mistakes are usually contained. You can recover. You can explain. You can iterate. ...

February 9, 2026 · 4 min · Ricardo Martins

Why Azure Feels Harder Than AWS

…and why that’s not an accident. If you have worked with both Azure and AWS long enough, you have probably felt it. AWS feels straightforward. Azure feels… heavier. Not worse. Not broken. Just harder to reason about. The console feels denser. The mental model feels less obvious. The number of “extra” concepts feels higher. This is not a beginner problem. Senior engineers feel it too. And the most interesting part is this: that friction is not accidental. ...

February 3, 2026 · 5 min · Ricardo Martins

Cloud Maturity Is Not About Being 100% Cloud

For years, “cloud-first” has been treated as a badge of honor. Companies proudly announce that everything is in the cloud, architects optimize for migrations instead of outcomes, and teams equate progress with how little infrastructure they still own. But after working with dozens of real systems, across different industries and at different scales, one thing becomes clear. Cloud maturity is not about being 100% cloud. It is about knowing why each workload is where it is. ...

January 23, 2026 · 5 min · Ricardo Martins