╔══════════════════════════════════════════════════════════════╗
║ ASHISH BABU Z · BACKEND ENGINEER ║
║ Distributed Systems · RAG · AI Integration ║
╚══════════════════════════════════════════════════════════════╝
data class Engineer(
val name: String = "Ashish Babu Z",
val role: String = "Backend Engineer",
val location: String = "Chennai, India 🇮🇳",
val status: String = "Immediate Joiner · Open to Remote",
val experience: String = "Nearly 3 years · Series C SaaS · 1,000+ Enterprise Clients",
val superpower: String = "Zero post-release bugs on security-critical, money-critical systems"
)
Things I've shipped that actually mattered
a4f9c2e [BILLING] Owned billing/overage engine → 500-1,000+ MSP clients platform-wide
8b3d1f7 [SSO] Solo multi-tenant SAML 2.0 SSO → 1,000+ clients, zero post-release bugs
c91e3a2 [PERF] Eliminated N+1 patterns via APM → 90%+ latency reduction
2f7b8d4 [BUG] Traced customer-reported billing bug through 20mo of prod logs → root-caused a race condition, corrected all 12 affected assets
e5a1c9f [ASYNC] Fixed silent timezone bug via payload metadata → zero missed alerts
7d4e2b1 [PRODUCT] 3-strike dismissal logic on ISL prompt → shipped as designed
🗳️ Quorum
Self-implemented Raft consensus engine & distributed lock manager
Leader Election → Log Replication → Majority Commit
→ Distributed Lock Manager (HTTP acquire/release/renew)
→ Verified: 50-client concurrent load, exactly 1 success
Stack: Kotlin gRPC Docker
- 🗳️ Leader election with randomized timeouts, majority voting
- 📝 Log replication with majority-based commit
- 🔒 Conflict-safe distributed lock manager — lease expiry, disk persistence, leader-only writes
- ✅ Verified live: automatic failover on leader kill, 50-client concurrent load test (1 success, 49 correctly rejected)
⌥ GitHub · ↗ Read the write-up
🔍 ProximaHire · Live ↗
RAG-powered semantic job matching platform
PDF Resume → HuggingFace Embeddings → pgvector Storage
→ Cosine Similarity Search → Color-coded Match Scores
→ LLM Gap Analysis via OpenRouter
Stack: Kotlin Spring Boot 3.3.5 PostgreSQL pgvector HuggingFace OpenRouter Docker
- 🧠 End-to-end RAG pipeline — PDF parsing, vector embeddings, semantic search
- 🎯 GREEN/ORANGE/RED match scoring against 60+ real job listings
- 🤖 AI gap analysis — what you have, what you're missing, in plain English
- ⚙️ Dual provider — Ollama locally, HuggingFace + OpenRouter in production
- 🐛 Found and fixed a scoring-integrity bug — the LLM independently guessed a match % that could disagree with the already-computed cosine similarity score; fixed by injecting the real score into the prompt as ground truth. Later, a reader flagged a second risk (same-dimension embeddings from different models silently producing meaningless comparisons) — added model identity tracking so mismatched or missing model IDs are now rejected outright.
⌥ GitHub · ↗ Read the write-up
🎬 Reverix 2.0 · Live ↗
AI-powered cinema booking platform · Hexagonal Architecture
Mood Input → Llama 3.3 70B → Ranked Recommendations
→ Redis Seat Lock (TTL) → Idempotent Booking
→ Rev-Coins Reward → Confirmed Ticket
Stack: Kotlin Spring Boot 3.2 PostgreSQL Redis WebSocket/STOMP Llama 3.3 70B Resilience4j
- 🏗️ Hexagonal architecture — domain layer has zero Spring/JPA dependencies
- 🔒 Atomic Redis seat locking — 10-min TTL, NX command, race condition found and fixed under real concurrent load
- 🤖 Rev-Bot AI concierge — mood-based recommendations via WebSocket
- 💰 Rev-Coins reward engine — earn on booking, review, ad watch
- ⚡ Resilience4j circuit breaker — fallback ensures zero downtime
⌥ GitHub · ↗ Read the write-up
🚦 Ratchet
Concurrent rate limiter, built to validate hands-on Go proficiency
Token Bucket → Goroutine-safe Map Access (mutex)
→ Idle-client Eviction → Context Cancellation
Stack: Go Docker
- 🪣 Per-client token bucket rate limiter
- 🔐 Goroutine-safe map access via mutex
- 🧹 Idle-client eviction via background goroutine + context-based cancellation
- ✅ Verified with a custom test: 75 concurrent requests across 5 clients, zero data corruption
Technical write-ups on real bugs and system design decisions — not tutorials, post-mortems
- 📝 I Broke My Own Cluster With a Node That Could Never Win — a real production-style failure mode in Quorum's leader election, found and fixed
- 📝 Locking a Seat Without Losing the Sale — a TOCTOU race hiding behind an atomic Redis primitive, reproduced with a concurrency test and fixed
- 📝 I Let My LLM Guess a Number My Own Code Already Knew — an LLM and a cosine-similarity score disagreed on the same match, and why only one of them should ever get to answer
languages:
primary: [ Kotlin, Java, Go, SQL ]
frameworks:
backend: [ Spring Boot, Spring Security, Spring WebFlux ]
orm: [ JPA, JOOQ, Hibernate ]
api: [ RESTful, GraphQL, WebSocket/STOMP ]
databases:
relational: [ MySQL, PostgreSQL, pgvector ]
cache: [ Redis ]
security:
protocols: [ SAML 2.0, OAuth 2.0, JWT, TOTP ]
encryption: [ AES-256 ]
patterns: [ RBAC, Audit Logging, Idempotency ]
messaging:
brokers: [ Apache Pulsar, Kafka ]
patterns: [ Event-Driven, Avro, Async Processing ]
ai_and_llm:
patterns: [ RAG, Vector Embeddings, Cosine Similarity ]
providers: [ OpenRouter, HuggingFace, Ollama ]
models: [ Llama 3.3 70B ]
tools: [ pgvector, Apache PDFBox, Prompt Engineering ]
observability:
tools: [ Coralogix, APM Profiling, Slack Alerting ]
patterns: [ Spring Events, Circuit Breaker, Health Checks ]
devops:
cloud: [ AWS S3, Lambda, RDS ]
containers: [ Docker, Docker Compose ]
ci_cd: [ Jenkins, Git, Gradle ]
migrations: [ Liquibase ]
testing:
frameworks: [ JUnit, Mockito, MockK ]
approach: [ TDD, concurrency testing ]
architecture:
patterns: [ Hexagonal, Ports & Adapters, Resilience4j ]
principles: [ Zero post-release bugs, Idempotency-first, Domain isolation ]$ echo $ENGINEERING_PHILOSOPHY
→ Money can never be wrong.
→ If it's not idempotent, it's not done.
→ Own it end-to-end or don't touch it.
→ Zero post-release bugs is a choice, not luck.
→ The domain should never know the infrastructure exists.
→ Trust, but verify — test the thing, don't just reason about it.
Chennai, India · Immediate Joiner · Open to Remote
ashish.babu.sde@gmail.com · linkedin.com/in/ashish-babu-z
Building things that work. Every time.