When we talk about performance engineering in the real world, there’s a huge spectrum.
On one end, you have the MAANG companies (Meta, Apple, Amazon, Netflix, Google) who treat performance engineering as a first-class discipline, tightly integrated into software development and operations. Unlike the traditional “run a load test before go-live” approach, they embed performance considerations at every step of the lifecycle — from requirements, design, coding, deployment, to post-release monitoring.
In fact, their very existence depends on high-performing systems: Google can’t afford a slow search, Netflix can’t buffer during peak hours, and Amazon’s checkout flow can’t lag during Black Friday. These companies are the true performance champions, and many of the practices we now associate with modern engineering actually originated with them.
Practices Born from MAANG
- Google – Site Reliability Engineering (SRE): A discipline combining software engineering with operations to achieve reliability, scalability, and performance at massive scale.
- Netflix – Chaos Monkey & Chaos Engineering: Intentionally breaking parts of the system in production to ensure resilience and recovery under real-world failure conditions.
- Amazon – GameDays: Simulated real-world failure and scaling events, used to practice operational readiness and validate performance under stress.
Advanced Tooling and Ecosystems
These companies didn’t just define practices — they also pioneered tools to make performance measurable and actionable:
Tracing & Observability
- Google: Dapper (the origin of modern distributed tracing) → evolved into OpenTelemetry (now industry standard).
- Amazon: X-Ray for distributed tracing, integrated with CloudWatch.
- Meta: Scuba / ODS for ultra-fast querying and monitoring of live performance data.
Monitoring & Dashboards
- Netflix: Atlas, a real-time dimensional time-series database for metrics at scale.
- Google: Monarch, their hyperscale monitoring system.
- Amazon: Deep CloudWatch integration with performance telemetry across services.
Profiling & Debugging Tools
- Netflix: Vector (real-time monitoring), FlameScope (innovative profiling visualization).
- Google: PerfKit Benchmarker (cloud benchmarking framework).
- Meta: ODS supports massive query workloads to debug performance regressions quickly.
User-Centric Metrics
- Web Platforms (Google/Meta): Core Web Vitals — measuring real user experience (page load, interactivity, visual stability).
- Netflix: QoE (Quality of Experience) indicators — e.g., buffering rate, resolution switching, startup delay.
- Apple: Rigorous device-level performance benchmarks (battery usage, memory footprint, rendering time) that apps must pass before App Store release.
The lesson here is simple: for MAANG, performance is not optional. It is treated with the same seriousness as security or availability. They have codified performance as part of their DNA — with practices, culture, and tools that most other enterprises are only beginning to adopt.
Tech companies outside the MAANG circle, like Salesforce, also take performance engineering seriously. In fact, Salesforce has openly shared how they integrate performance engineering practices into their development lifecycle — covering architecture reviews, workload modeling, resilience validation, and continuous monitoring (read here).
That said, from the blogs, talks, and LinkedIn posts I’ve come across, my takeaway is this:
Performance engineering as a discipline is still slowly evolving — even in tech-first enterprises, and even in the middle of the current AI boom.
To be honest, as someone who has largely worked as a performance tester in IT service companies serving non-tech enterprises, I can say that I have never fully followed true performance engineering practices in any single project.
That doesn’t mean I didn’t try — over the years, I have managed to incorporate certain engineering aspects here and there depending on client requirements. But the reality is, in most of the organizations and projects I’ve worked with, performance engineering was never treated as a core discipline. Instead, it was often reduced to “just do some load testing before go-live.”
This isn’t unique to my experience either. From what I’ve seen, most non-tech enterprises and startups still don’t focus deeply on performance engineering. It’s not that they don’t care about performance — they do, especially when customers complain or production issues arise — but the mindset and structured practices we see in the MAANG companies or even in Salesforce simply haven’t been embedded into their development culture yet.
I think I can almost hear you wondering while reading this:
“Just because you didn’t practice it for your clients, does that really mean performance engineering isn’t followed in the large non-tech enterprises you worked for?”
Of course, my perspective comes from projects I was staffed on; other teams in the same enterprises may have done more structured PE.
Performance Engineering “Under the Hood”
Most enterprises I’ve worked with do touch performance engineering in one way or another, but it’s fragmented and implicit. For example:
- Infrastructure & Capacity Teams
- Handle system sizing, server provisioning, and autoscaling policies. This is essentially capacity planning — a core part of performance engineering — but is treated as an infra activity, not PE.
- Database Administrators (DBAs)
- Optimize queries, tune indexes, partition data, and manage replication to keep applications responsive. That’s performance engineering, but under the “database tuning” label.
- Application Developers
- Sometimes adopt caching, async calls, and resource pooling when solving functional bottlenecks. But since it’s not standardized as a performance practice, it depends heavily on individual skill and awareness.
- Monitoring & Ops Teams
- Deploy APM tools (Dynatrace, AppDynamics, Datadog, CloudWatch) and set up dashboards. They do look at latency, throughput, and error rates, but frame it as “monitoring” or “observability” rather than holistic PE.
- Testing Teams
- Run load/stress/soak tests before release. This is the most explicit performance practice, but since it comes late in the lifecycle, it’s often too late to influence architectural or design-level changes.
In short, the pieces of performance engineering exist — but they are scattered across silos and rarely stitched together into a structured, lifecycle-wide practice like we see in tech-first companies.
Why PE Struggles in Enterprises (Cost, Priority, Ownership, Culture)
- The Cost Aspect : Performance engineering is expensive. It requires upfront investment in people, processes, and tooling. Non-tech enterprises often see it as an overhead rather than a necessity — even if they’ve already faced major performance incidents that justify the spend. The usual response is to stitch the wound (scale up, roll back, emergency fix) and move forward, rather than build practices to avoid falling in the first place.
- Priority Constraints : Product owners and stakeholders almost always prioritize functionality over non-functional requirements. Most service engagements focus on delivering business features on time, securing sign-off, and moving on. Performance activities that don’t immediately show business value often get sidelined or reduced to the usual: “let’s do load testing at the end.”
- Ownership Politics: Performance-related responsibilities are scattered across infra, DBAs, developers, Ops, and QA. Coordinating all these teams is tough, and since no single group “owns” performance end-to-end, the accountability gets diluted. As a result, performance quietly slips into the background until something goes wrong.
- Reactive Culture : Many organizations only pay serious attention to performance when something breaks in production. That’s when performance suddenly jumps to priority number one, often after an expensive, public-facing failure.
- Recently, In March 2025, Barclays, one of the UK’s largest banks, suffered a severe systems slowdown that left thousands of customers unable to complete online payments. Over a three-day period, nearly 56% of payment requests failed due to “severe degradation of mainframe processing performance”. The disruption was so significant—impacting millions of transactions—that lawmakers demanded explanations, and the bank faced potential £5–7.5 million in compensation, with total payouts possibly reaching £12.5 million.
- Lack of Awareness : In many projects, stakeholders (and sometimes even delivery teams) don’t realize that performance engineering is more than just testing. Without the right education or internal advocacy, it remains hidden inside existing roles and toolchains, never emerging as a structured discipline.
- Business vs. Tech Gap : Let’s be real for a moment: business people are usually excellent at the business side of things. But when we throw around metrics like latency, throughput, or GC pause times, it doesn’t automatically translate into business KPIs for them. Among cost, time, and compliance priorities, performance gets pushed further down — unless tech teams translate those metrics into business impact. But here’s the hard truth: who will convince them to spend a million on performance engineering today, or would you rather pay £12.5 million in compensation tomorrow when systems collapse in production?
The Problems with Hidden Performance Engineering
Everything looks perfect… until it doesn’t. At first glance, it might seem fine to let performance responsibilities live across different roles and teams. After all, workarounds happen and the system eventually runs, right? But when performance engineering stays hidden, a few recurring problems show up:
Visibility and Ownership
Performance-related tasks — capacity planning, DB tuning, monitoring, load testing — often sit in separate silos. In a large enterprise application with multiple systems and teams, this fragmentation reduces visibility of where bottlenecks truly are.
When everyone is partially responsible, no one is fully accountable. The result? Finger-pointing during outages and a culture of firefighting rather than prevention. Over time, this erodes into a “no performance culture” — where default container or JVM settings are never tuned, and code is written to “just work” instead of “work well.”
With the rise of “vibe coding” and auto-generated code, this lack of ownership could become an even bigger problem in the future.
Cost Overhead
Enterprises often spend heavily on performance testing tools, APMs, dashboards, and monitoring platforms. But without an engineering mindset behind them, these tools act more like thermometers — they highlight the fever, but don’t provide the cure.
And because ownership is unclear, business leaders rarely see performance engineering as a measurable deliverable. Over time, they start to question the ROI of these tools and may even classify them as wasteful expenses.
Reactive Fixes Over Proactive Design
In highly integrated enterprise systems, different teams mature at different speeds when it comes to performance practices. That inconsistency means hidden PE typically surfaces only after failures occur.
Instead of designing for scale and resilience, organizations fall back on emergency fixes — scaling up infrastructure, rolling back releases, or applying patches in production. It keeps the system alive in the short term, but the root causes remain unresolved.
The irony with hidden Performance Engineering is that everyone assumes someone else is handling performance, when in reality, no one is.
Final Thoughts: A Cultural Shift Needed
The more I’ve reflected on this, the more I realize that performance engineering is less about tools and more about mindset. Tools can measure, scripts can simulate, and infra can scale — but unless performance is treated as a shared discipline across the lifecycle, it will always remain hidden, fragmented, and reactive.
Tech-first companies have shown us what good looks like: embed performance early, connect it to business outcomes, and make it everyone’s responsibility. But for most enterprises, especially outside the tech bubble, there’s still a long way to go.
Maybe the real challenge is cultural: shifting from “we’ll fix it if it breaks” to “we’ll design it so it doesn’t break in the first place.” That, to me, is the essence of performance engineering — and why it deserves to be a first-class citizen in modern software delivery.
What’s your experience? Have you seen true performance engineering in your projects, or just the “hidden” version? Share your story in the comments or drop us a note at consult@qatales.com
Leave a comment