Java backend developer · B.Tech Computer Science at SRMIST
I build backend systems with Java and Spring Boot: multi-tenant SaaS, event-driven pipelines with Kafka, retrieval-augmented services around LLMs, and distributed systems from first principles (a Raft-based replicated key-value store). I care about the parts that make them hold up: tests against real infrastructure, measured quality, cost control and observability. I also contribute fixes to open-source Java projects such as OpenTelemetry, Apache SkyWalking and Keycloak.
CGPA 9.2 / 10 · 1st Place, NitroStack Hackathon · 5 upstream PRs, 4 merged · 170+ LeetCode
RepoMind: codebase intelligence for Java repositories
Ask a GitHub Java repository questions and get answers that cite the exact lines. RepoMind also reviews pull requests from GitHub webhooks and serves AI coding agents as an MCP server.
- Indexing: Kafka ingestion with idempotent workers; JavaParser splits code into class outlines and per-method chunks
- Hybrid retrieval: pgvector similarity + Postgres full-text search, fused with reciprocal rank fusion
- Cost and resilience: two-tier answer cache (Redis + pgvector semantic), per-client rate limits and token budgets in Redis, Claude → Ollama failover behind circuit breakers
- Measured: a 40-question labelled eval gates CI; hybrid search finds the right code in the top 5 for 90% of questions (keyword-only: 75%)
- Operated: Prometheus metrics, a 30-panel Grafana dashboard, a production Compose stack behind Caddy
Java 25 Spring Boot 4 Spring AI PostgreSQL + pgvector Kafka Redis Resilience4j Testcontainers
RaftKV: a replicated key-value store on Raft, from scratch
Source, design reports and benchmarks
A fault-tolerant key-value store built on the Raft consensus algorithm in plain Java (no framework): the same problems etcd and Kafka's KRaft solve internally. Every phase has a written design report and a test gate.
- Consensus: leader election, log replication with accelerated backtracking, the commit rule from §5.4.2, snapshots and InstallSnapshot
- Own storage engine: append-only write-ahead log with CRC32C records, group-commit fsync and torn-write recovery; atomic snapshot files
- Exactly-once and linearizable: every operation goes through the log; a per-client dedup table (kept in snapshots) makes retries safe
- Tested against failure: a simulated network that drops, delays, reorders and partitions messages and crashes nodes; a linearizability checker; CI kills and partitions a live Docker cluster
- Measured: up to 16K writes/s on 3 nodes with fsync; group commit scales throughput ~40x from 1 to 128 clients
Java 25 gRPC Protocol Buffers Virtual threads Docker Compose JUnit 5 JMH GitHub Actions
ClubHub: multi-tenant SaaS for college clubs
Try the live demo (one click, no sign-up) · Source
Recruitment pipelines, events with signed QR tickets, verifiable PDF certificates and live notifications for college clubs, plus a public directory of the 75 clubs at SRM KTR.
- Tenant isolation in the database: a PostgreSQL schema per club, selected from a signed JWT claim, with membership re-checked on every request
- Auth: 15-minute JWTs and rotating refresh tokens; replaying an old one revokes the whole login
- Correct under concurrency: row locks keep event capacity exact; a unique constraint stops double check-ins
- Event-driven: domain events published to Kafka after commit, idempotent consumers, a dead-letter topic, WebSocket push
- Tested for real: 204 tests on PostgreSQL 18, Kafka and Redis via Testcontainers, on every push
Java 25 Spring Boot 4 PostgreSQL Kafka Redis WebSocket React 19 TypeScript
| Project | What it is | Stack |
|---|---|---|
| E-Commerce Full Stack · live | Store with JWT auth, cart, checkout, payments, orders and an admin dashboard | Spring Boot, React, TypeScript, TiDB Cloud, Docker |
| Expense Tracker | REST API with Redis caching and Kafka event-driven auditing | Spring Boot, MySQL, Redis, Kafka, JWT |
| URL Shortener | Short links with Redis cache-aside redirects and click analytics | Spring Boot, MySQL, Redis, JWT, JUnit |
| Library Management System | Books, users and issue/return workflows behind Spring Security | Spring Boot, Spring Data JPA, MySQL, JWT |
| Project | Contribution | Status |
|---|---|---|
| Apache SkyWalking Java agent | #832: fixed apache/skywalking#14097, where the HttpClient 5.x plugin could stop the caller's active span. Reworked the async exit-span lifecycle, enabled tracing for HttpClient 5.4+ and extended tests to 5.0–5.6. Ships in agent 9.8.0. | ✅ Merged |
| Keycloak | #53517: fixed #53456, where time-based policies saved from the Admin Console made every permission using them fail with HTTP 500. Blank repeat fields now count as unset, with regression tests. | ✅ Merged |
| OpenTelemetry Java Instrumentation | #20442: removes a redundant span-context conversion in the API bridge (#20340) by unwrapping bridged spans and lazily caching the immutable SpanContext. In an independent JMH benchmark, getSpanContext() on a bridged span went from ~135 ns to 1 ns and Context.with(span) became ~3x faster. |
✅ Merged |
| Apache Pulsar Connectors | #145: regression tests proving the Redis sink keeps its socket options in cluster mode (#131). | 🔄 In review |
| Spring Lens | #312: added BeanProxyInfoInspector, surfacing Spring bean proxy details in the Bean Explorer. |
✅ Merged |
Languages
Java Python C C++ TypeScript SQL
Backend
Spring Boot Spring Security Spring AI JPA / Hibernate REST APIs JWT WebSocket (STOMP) Flyway Resilience4j
AI and retrieval
RAG pgvector Hybrid search Embeddings Ollama Claude API MCP
Distributed systems
Raft consensus Write-ahead logging Snapshots gRPC Protocol Buffers Fault injection Linearizability testing
Data and messaging
PostgreSQL MySQL MongoDB Redis Apache Kafka
Testing, DevOps and cloud
JUnit 5 Mockito Testcontainers JMH Docker GitHub Actions Prometheus Grafana AWS S3 / SES Render Vercel
Counts come from the GitHub GraphQL API and are refreshed daily by a workflow.
- 1st Place, NitroStack Hackathon
- Smart India Hackathon 2026 (Smart Automation theme); Samsung PRISM GenAI Hackathon 2026, Agentic Code Intelligence track
- 170+ LeetCode problems in Java: arrays, strings, linked lists, binary search, sorting, recursion
- Member, AWS Student Builder Group (Cloud & DevOps) at SRM KTR
SRM Institute of Science and Technology, Kattankulathur
B.Tech, Computer Science and Engineering · 2025–2029 · CGPA 9.2 / 10
System design · Distributed systems (consensus, storage engines) · Evaluating RAG systems · AWS · Advanced DSA


