Developers face unprecedented operational challenges that weren't part of the job description just a decade ago. Cory O'Daniel, CEO and co-founder of MassDriver, brings over 20 years of experience in DevTools, SRE, and Platform Engineering. He joined Dev Interrupted to shed light on why traditional DevOps approaches are failing and how platform engineering might offer a path forward.
How Rapidly-Evolving Technology Widens Skills Gap
The fundamental problem with DevOps today stems from a widening skills gap. "The amount of operations experts or expertise that we have as a community is going down year over year because we're getting so many developers out of bootcamps, out of colleges, and we're not teaching them the cloud and operations," explains O'Daniel.
This disconnect creates a significant challenge as deployment responsibilities have simultaneously grown more complex. Cloud services have proliferated, infrastructure requirements have expanded, and compliance needs have intensified. Meanwhile, many organizations have simply rebranded their operations teams without making substantive changes to how they work.
"Many organizations don't have the resources to cultivate it right. And so this whole idea of like, 'Hey, everybody should do DevOps. We're doing DevOps. You're doing it wrong… I think it just undermines all of us doing the right work," O'Daniel observes.
The reality is that the operational landscape has transformed dramatically while our approach to DevOps hasn't kept pace. Twenty years ago, applications ran on physical servers. Then came virtual machines, Platform-as-a-Service offerings, containerization, Kubernetes, and now serverless architectures. Each evolution adds complexity that developers are expected to understand, even as their primary job remains delivering business value through code.
How Platform Engineering Abstracts Complexity
As organizations search for solutions to these challenges, platform engineering has emerged as a potential answer. But what exactly does effective platform engineering look like?
O'Daniel defines it as creating a streamlined experience for developers: "What we need to be doing as teams that have the resources to do DevOps or platform engineering effectively... is starting to [solve] more of this toil and tasks that devs are kind of getting caught up in their platforms."
The goal is to remove the operational complexity that distracts developers from their core work. Rather than forcing developers to become experts in everything from cloud configuration to security compliance, platform engineering teams build products that solve developers' biggest productivity challenges.
"I think that's what platform engineering is. We're mature enough. We have the resources, we have the buy-in, and now we're building a product to solve the biggest problems of our developers' cadence and delivery," says O'Daniel.
This approach recognizes that modern cloud-based applications have evolved beyond what the original DevOps paradigm was designed to handle. The very concerns of platform engineering—such as self-service cloud resource provisioning—involve a vocabulary and set of challenges that were not prevalent in the early days of DevOps roughly 15 years ago.
Practical platform engineering offers tools and an experience akin to using a Platform-as-a-Service (PaaS) offering. It makes infrastructure self-service while handling the operational complexity behind the scenes, allowing developers to focus on creating business value.
Measure DevEx Metrics for Engineering Impact
When evaluating the success of platform engineering initiatives, O'Daniel emphasizes two critical metrics: "Two things matter: Dev happiness and how unblocked people are... Are developers happy with the way things work? Is it solving a real problem for them?"
Elite engineering organizations allow new hires to deploy code on their first day. They measure how quickly developers can move from writing code to seeing it in production, ideally within 24 hours. They focus on removing wait times and reducing cycle time, which O’Daniel explains is a critical measurement of developer friction.
The focus shifts from merely having operational capabilities to ensuring those capabilities actively enhance the developer experience. Self-service infrastructure provisioning becomes essential, allowing developers to get the resources they need without waiting for approvals or manual configuration by operations teams.
For many organizations, the benchmark of elite performance is the ability to deploy code to production in less than 24 hours. Teams that require multiple days or weeks to deploy changes will struggle to deliver business value quickly enough to remain competitive.
Integrating Technical Debt into Everyday Development
An often-overlooked aspect of both DevOps and platform engineering is the approach to managing technical debt. Rather than treating technical debt as a separate initiative requiring dedicated sprints or projects, elite teams address it incrementally alongside regular feature work.
"I just do it. You want me to build this feature. There's something in my way of doing it faster. I'm going to refactor and fix that so I can deliver this feature," says O'Daniel, describing his pragmatic approach to technical debt.
This incremental improvement model creates momentum for larger platform investments. Small wins demonstrate value, making it easier to advocate for more significant changes later. By tying technical debt reduction to business outcomes - like faster feature delivery or reduced production incidents - teams can more effectively secure buy-in for platform capability investments.
O'Daniel recommends starting small and using KPIs like increasing delivery speed, shipping features faster, and unblocking more high-impact work. By building credibility through minor improvements, platform engineering teams can gradually gain the organizational support needed to implement more comprehensive solutions.
Use Platform Engineering to Empower Developers to Deliver Value
As organizations continue to navigate the challenges of modern software delivery, the distinction between DevOps and platform engineering may matter less than the outcomes they achieve. What's most important is creating an environment where developers can focus on delivering value without being bogged down by operational complexity.
Whether you call it DevOps, platform engineering, or something else entirely, the ultimate goal is to enable developers to build and ship software that meets business needs efficiently and reliably. Organizations can achieve this goal regardless of the terminology they use by focusing on developer experience, addressing technical debt incrementally, and abstracting away unnecessary complexity.
Listen to Cory’s full Dev Interrupted episode here: