Back to Posts

Why I Stopped Writing Perfect Code and Started Writing Reliable Pipelines

Posted on June 26, 2026

I spent a long time believing that being a good developer meant writing perfect code. I wanted every variable name to be flawless and every function to follow strict single-responsibility principles. But that mindset changed after a 3 AM phone call. My perfect pipeline had completely collapsed under the weight of real-world data.

At the time, I was working on a PySpark pipeline for advertising data, processing around 2 terabytes every day. I had spent weeks building what I thought was an elegant system with clean abstractions and thorough validation. When the actual production data arrived, it was a mess. There were nested JSON fields with inconsistent schemas, late records, and null values where I expected strings. My code just was not built to handle that kind of reality.

That experience forced me to stop worrying about whether my code was perfect and start asking if it would actually survive production. It was a massive shift in how I approached my work. Instead of letting one malformed record kill an entire batch, I started building systems that could log the error and keep moving. I prioritized retry logic over trying to prevent every possible transient failure. Most importantly, I chose observability over being clever. A simple pipeline I can actually debug in the middle of the night is much better than a complex one I cannot understand.

When I was at Elastacloud, I applied this by building serverless, event-driven pipelines with AWS Lambda, SQS, and SNS. The code itself was not particularly fancy, but it was resilient. It handled failures gracefully and provided enough logging to make debugging straightforward. We saw failure rates drop by 20 percent because the system was designed to keep running even when things went sideways. Later, at Enable Data, we transitioned from daily batches to near real-time streaming using Databricks Delta Live Tables. Using DLT is not really about writing the most elegant Spark code possible. It is about setting up reliable data flows that can handle things like schema evolution and data quality checks automatically.

The reality is that perfect code is a luxury we often cannot afford. Reliable pipelines are what actually matter. Most stakeholders do not care how elegant a transformation looks in the editor. They just want to know the data is accurate and shows up on time. It is usually better to ship something reliable first and worry about optimization later.

Amit Channagiri

© 2026 Amit Channagiri

LinkedIn X GitHub Email