Welcome—and thanks for being here. I'm a Staff Software Lead, with 15+ years in Java. For the last few years, I've lived in event-driven, distributed systems.
I build real-time platforms for financial infrastructure—streaming on Apache Kafka and Apache Flink, handling strict ordering, exactly-once processing, watermarking, and schema evolution with Avro.
I've built reconciliation pipelines for core banking, where a lost event isn't a bug—it's a financial discrepancy. I also led one platform's shift to a SaaS-ready, multi-tenant product, deployed globally.
I own the full lifecycle: Kafka topology, consumer lag, Flink state tuning, CI/CD for streaming jobs, plus the surrounding architecture—Cassandra, Oracle, Spring Boot.
Low-level design matters to me: clean class structures, solid interfaces. Systems fail at the seams, so I weigh trade-offs constantly—consistency vs. availability, throughput vs. latency.
I stay hands-on, shipping code and solving hard consistency problems, while also leading teams and mentoring engineers.
Educative.io Review in 2026: Is It Worth It for Developers?
Thinking about Educative.io? Here's the honest verdict: outstanding for interview prep and system design, not ideal for beginners. Full review with pricing, comparisons, and FAQ.
How To Prevent cannot read property map of undefined
The "cannot read property map of undefined" error occurs when we try to call the map method on a variable that stores an undefined or null value.
How can I remove a specific item from an array in JavaScript?
Removing a specific item from an array is the most use case a developer runs into. You will learn more than 7 ways to achieve this.
A Complete Guide To JavaScript LocalStorage
localStorage is a property of the window object in JavaScript that allows you to store key/value pairs in a web browser. The data stored in localStorage persist even after the browser is closed, making it a useful tool for saving user data on the client side.
How to Prevent cannot read property split of undefined
The "cannot read property split of undefined" error occurs when we try to call the split() method on a variable that stores an undefined value.
Kafka SerializationException: Fixing Poison Pill Records
Kafka SerializationException: "Error deserializing key/value" crashes your consumer in a loop. Fix it with ErrorHandlingDeserializer and a dead letter topic.
Kafka's UNKNOWN_PRODUCER_ID and OutOfOrderSequenceException: Why Your Idempotent Producer Fails After a Restart
A deep dive into why idempotent Kafka producers throw UNKNOWN_PRODUCER_ID and OutOfOrderSequenceException in production, how broker-side producer state expiry causes it, and how to fix it with KIP-360 semantics and proper client configuration.
HikariPool-1 - Connection is not available, request timed out after 30000ms: Diagnosing and Fixing Connection Pool Exhaustion in Spring Boot
A production-grade breakdown of the HikariCP Connection is not available timeout in Spring Boot — why it happens under load, how to reproduce it locally, and how to fix and prevent pool exhaustion for good.
Gopi Gorantala Newsletter
Join the newsletter to receive the latest updates in your inbox.