// currently: Software Developer @ Amdocs (T-Mobile project)

Buddhaprakash Patil

Backend Engineer — Java · Spring Boot · Distributed Systems

3+ years building payment and data platforms. I design microservices that stay correct under retries, concurrency and partial failure — idempotency, event-driven messaging and resilient integrations are my day job, not buzzwords.

Resume (PDF) GitHub LinkedIn

api: checking…

20%
transaction reliability boost — payment API integrations
35%
token-storage optimization — Redis session modeling
10×
concurrent transfers, zero lost updates — proven in tests
2
production microservices owned end-to-end on AWS

Case studies

Not what I used — why I chose it, and what would change the answer.

PayFlow — correctness under concurrency and retries Java 21 · Spring Boot 3 · two microservices · event-driven

A digital wallet backend built to handle the four failure modes every payments system faces:

Lost updates from concurrent transfers

Optimistic locking (@Version) + bounded retry. Low contention makes optimistic cheaper than row locks — under flash-sale contention I'd flip to SELECT … FOR UPDATE. The retry loop lives in a separate bean: self-invocation bypasses Spring's transaction proxy.

Double spend from client retries

Idempotency keys enforced by a DB unique constraint — an in-memory check loses the race between concurrent duplicates; the constraint is the only arbiter that survives it.

Dual-write between DB and event bus

Transactional outbox committed with the balance change; at-least-once relay + eventId dedupe in the consumer composes into exactly-once processing.

Silent balance corruption

Append-only double-entry ledger — every transfer nets to zero, asserted in the test suite.

Proof: concurrency tests — 10 simultaneous transfers with exact money conservation; duplicate keys produce one debit.

→ github.com/patil2001/payflow
Spring Batch ETL — Snowflake → PostgreSQL at scale Amdocs (T-Mobile) · Spring Batch · SQL tuning · partitioning

Peak run times blowing the batch window

Profiling showed reads dominated. SQL tuning + table partitioning let independent slices run in parallel steps without write contention.

Mid-run failures leaving partial state

Up-front input validation + retry on transient failures turned whole-job aborts into per-record skips with a report.

Outcome: peak runtime cut significantly; per-run metrics tracked to drive iterative reliability work.

Redis-backed auth for client integrations Amdocs · Redis · circuit breaker · token lifecycle

Token generation hammering the identity provider

Generate once per client, cache in Redis with TTLs mirroring token expiry, inject via x-authorization headers. Restructuring the token data model yielded a 35% storage optimization.

Cross-tenant access attempts

Redis session validation + data fencing rejects requests that don't own the resource before business logic runs.

Partial failures in downstream token APIs

POP token generator with configurable retries + circuit breaker — fail fast when the provider is down; custom exceptions split retryable from terminal.

Projects

PayFlow

Wallet & payments backend: optimistic locking, idempotency, transactional outbox, double-entry ledger, concurrency test suite.

Java 21 · Spring Boot 3 · JWT · JPA

This portfolio

This site is itself a Spring Boot API + static frontend: OpenAPI-documented, containerized, CI-deployed, health-monitored. View the live Swagger UI.

Spring Boot · Docker · GitHub Actions · Render

Naukri Job Finder

Job-search automation: scraping, relevance filtering and application staging with human-in-the-loop approval.

Automation · Browser orchestration

Skills — by depth, not a tag cloud

EXPERT — use daily, can teach

Java · Spring Boot · Spring Batch · REST API design · Microservices · PostgreSQL · Redis

PROFICIENT — shipped to production

Kafka · AWS (S3, EC2, SNS, SQS, IAM) · Spring Security · Docker · Hibernate/JPA · JUnit + Mockito · Jenkins & GitHub Actions

FAMILIAR — used, still deepening

Kubernetes · Snowflake · MongoDB · GraphQL · Angular · Python

Contact

Hiring for backend roles, or want to talk distributed systems? Reach out.

email → patilbuddhaprakash@gmail.com

linkedin → in/buddhapp

github → patil2001