Dev & Ops Working in Silos: Blame Game -A Workplace Story

Published by

on

How Adopting a DevOps Culture Can Offer a Quick Solution

“Don’t be a hero; software development is about the team’s success.” — DevOps is all about teamwork! Blaming individuals hinders progress. When we focus on shared responsibility, it fosters better communication and more effective problem-solving within the team.


The Story

Conference Room B revealed grim faces among the people who stood in sharp contrast to the ‘My-Stream’ dashboard’s glowing red alerts. The system began losing data accuracy immediately after launching our new real-time analytics platform for enterprise clients at 9 AM on its second day. Clients reported discrepancies as dashboards experienced lag and support lines became overwhelmed.

The Product Manager, Raj, forcefully placed a critical client email printout on the conference table. “This is unacceptable. ‘My-Stream’ should have positioned us ahead of our competition, but instead, it became a public embarrassment. David, what’s going on? Chloe, why aren’t we seeing stable data?”

David, the Development Lead, moved his glasses up his nose while his body language shifted into a defensive mode. “The code passed all integration tests, Raj. We pushed a fully validated pipeline. Our internal QA showed perfect data consistency. According to Chloe, the production setup configuration or resource distribution is the source of the problem.”

Chloe, the Ops Lead, snapped, “The production environment follows your detailed specifications exactly as you requested, David. We created the precise serverless functions and database instances as specified by your request. We executed the deployment script exactly as prescribed.”

The infrastructure is functioning correctly, yet the data entering your new pipeline is what causes the issue. Data corruption occurs as it enters the system or becomes damaged during transmission through the pipeline.”

This predictable blame game unfolded like a well-rehearsed ballet whenever a major release faced issues. The situation seemed more critical than usual, and the quiet around them more intense.

Support handover represented the fundamental issue in this situation. David’s team delivered their sophisticated, cutting-edge, real-time data processing engine along with what they believed to be a complete documentation package.

The documentation package included intricate architectural diagrams and API specifications for each microservice, along with several conceptual whitepapers that outlined the stream processing logic.

We provided over 200 pages of documentation!” David exclaimed, pulling up a shared drive. “This documentation contains detailed records of every system component and API endpoint, together with comprehensive descriptions of each data transformation process. We held a two-hour knowledge transfer session with Mark’s team last week.”

Mark finally spoke to David as a senior support engineer, his voice conveying that he had spent many hours debugging calls throughout the night. “Your documentation reads like a PhD thesis on distributed systems, David. The documentation explains the construction process but lacks instructions for troubleshooting issues. Our team requires practical troubleshooting resources instead of scholarly research documents. A client’s statement about sales numbers being 15% off doesn’t require me to understand your Kafka consumer groups. I need to know: When X symptom occurs, check the Y log for the Z error code before restarting A service.

This highlighted a glaring skill gap. The developers at David’s organisation demonstrated proficiency in real-time data ingestion methods alongside intricate transformation processes and distributed ledger systems. Chloe’s Ops team had expertise in server management and networking as well as traditional database administration but lacked an in-depth understanding of how data pipelines operated.

They observed CPU spikes along with memory leaks but were unable to determine the cause of data divergence. The primary defensive layer of Mark’s Support team operated at a distance with pre-made scripts while feeling increasingly powerless.

And what about the monitoring?” Chloe challenged. “You generate hundreds of metrics from your service, yet half of these metrics are proprietary, with non-existent baselines and alert thresholds. We have access to massive quantities of data yet lack the necessary insight to understand it properly.

David retorted, “We built a cutting-edge system! It’s inherently complex. It is essential to dedicate resources to understanding these new technological frameworks. The underlying technology remains complex because it cannot be simplified to match your current operational model. Our choice of these technologies was driven by their ability to deliver both scale and performance.”

Raj pointed out that performance should not be a concern when incorrect data leads to client dissatisfaction. “We’re losing trust. We need to address a systemic problem that reveals our organisation’s failure to achieve consensus on the definition of ‘done’. The definition of ‘done’ extends beyond code deployment to include reliable product functions alongside proper support in production environments.

The arguments escalated. David believed Operations was holding back from new technology while maintaining outdated processes. Chloe observed that developers delivered intricate systems without documentation to her department. Mark faced angry customers alone because he lacked adequate tools.

David’s lead developers joined Mark’s support team to follow transaction flows manually. At the same time, they decoded hard-to-understand error messages until they discovered a subtle data type mismatch between the legacy system of an older client and the new ‘My-Stream’ ingestion layer. After pushing the hotfix, developers noticed that the data gradually returned to stability.

The head of engineering, Dave, was obviously not happy with the overall situation and requested a blameless post-mortem to prevent such instances in the future. Hence, the post-mortem conducted days later provided a challenging opportunity for self-reflection.


The Arguments Unpacked

  • Dev’s Core Argument: “As long as the input remains consistent, the system operates correctly and shows technical soundness. The real issue stems from Ops and Support’s insufficient operational maturity and their understanding of new and complex technologies. We distributed the necessary information which they required to learn.”
  • Ops’ Core Argument: “You delivered a product that was un-ops-able. Your documentation was verbose and theoretical rather than practical. We require straightforward runbooks for every known failure mode and essential training to help our team diagnose and resolve issues with the new technology stack. Our technical abilities differ from your developers’ skills, and it’s unreasonable to expect us to grasp every new framework instantly. We also have to work on other daily Ops tasks, which limits our capacity to learn and understand the support handover checklist/document.”
  • Support’s Core Argument: “Customers view us as their primary point of support with the company (L1 support). The system needs immediate, clear responses when it fails. Our skill level was insufficient to define the problem correctly and certainly inadequate to find any solutions. The current tools and knowledge we possess proved entirely insufficient for managing the new system. We need well-written service operating procedures (SOPs).”
  • Product’s Core Argument: “This wasn’t a technical failure. It was a delivery failure. The product achieved ‘release’ status only after reaching stability and supportability criteria. The complex nature of the new technology exceeded what our internal processes anticipated, which severely affected our operational teams. We prioritised velocity over holistic readiness.”

Finally

The release process underwent a total transformation. The launch process now includes a mandatory “Operational Readiness Review”, which requires signatures from Ops and Support on documentation and training before production deployment can proceed. Ops/Support readiness is now part of the Definition of Done. Operations and support are now engaged much earlier than the actual release date.

Implementing cross-training programs enabled Developers to learn from Support and Operations through shadowing while those engineers engaged with early-stage design reviews. The ‘My-Stream’ incident taught us that developing an excellent product represents only part of the challenge since the true success metric lies in its smooth operation and robust support.

Leave a Reply

Discover more from Product Management Blog - Pankaj Bisht

Subscribe now to keep reading and get access to the full archive.

Continue reading