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.
Check this out : Technical notes
Flink Heartbeat of TaskManager Timed Out: Causes and Fixes
Fix the Flink 'Heartbeat of TaskManager with id ... timed out' error. Real causes — GC pauses, OOMKilled pods, network saturation — and the exact config fixes.
Kafka TimeoutException: Expiring N record(s) — Cause and Fix
Kafka producer failing with TimeoutException: Expiring N record(s): ms has passed since batch creation? What delivery.timeout.ms really does — and the fix.
Kafka InconsistentClusterIdException: Cluster ID Mismatch Fix
Fix kafka.common.InconsistentClusterIdException: Cluster ID doesn't match stored clusterId in meta.properties — the Docker volume cause and the real fix.
Java ConcurrentModificationException: Causes and Fixes
ConcurrentModificationException usually has nothing to do with threads. Here is exactly what modCount does, why it fires, and the four fixes that actually work.
Kafka TransactionalIdAuthorizationException: Fix the ACL
TransactionalIdAuthorizationException: Transactional Id authorization failed. Why your EOS/Spring transactional producer dies on a secured cluster and the exact ACLs that fix it.
Kafka CorruptRecordException: Record Is Corrupt — Fix It
Kafka CorruptRecordException: Record is corrupt (stored crc != computed crc). Why the CRC check fails, how to recover the partition, and how to stop it recurring.
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.