
Fahim Fahad
Verified Expert in Engineering
Java Developer
Dhaka, Dhaka Division, Bangladesh
Toptal member since April 1, 2021
Fahim is a back-end engineer with 10 years of experience in Java, Spring Boot, and AWS, specializing in payment infrastructure and high-volume data systems. He built the core financial engine for a licensed digital payments platform from scratch. Fahim's recent work includes a card gateway obtained through vendor certification and the server-side of an LLM search agent using the Anthropic API.
Portfolio
Experience
- Java - 10 years
- RESTful Development - 9 years
- Spring Boot - 9 years
- Microservices - 7 years
- RDBMS - 6 years
- Amazon Web Services (AWS) - 6 years
- NoSQL - 5 years
- Next.js - 1 year
Work Experience
Senior Software Engineer
A Real Estate Software Company
- Designed and built the server side of a conversational property-search assistant on the Anthropic API, using a streaming tool-use agent, and cut LLM cost per conversation by 60% with prompt caching.
- Integrated a card payment gateway covering cardholder- and merchant-initiated transactions with tokenization, took it through vendor certification, and shipped it to a product serving 50,000+ paying users.
- Designed a bulk listing-search API in synchronous and asynchronous modes over a dataset of billions of property records, using SHA-256 request deduplication and atomic job claiming to prevent duplicate processing.
- Delivered a rebuilt direct-mail product on a new print vendor end to end, covering campaign APIs, cost preview, a payment scheduler with backoff retry, and refunds issued as credit reversals.
- Migrated 1.5 billion public Do-Not-Call records onto a new data model, updated every writer and read path, and standardized US phone numbers to ten digits across all contact writes.
- Rewrote the queries behind the three slowest endpoints on the platform and resolved a pattern of concurrent long-running queries that was exhausting the database connection pool.
- Introduced a shared feature-toggle and dynamic-config layer across services, removing the need for a redeploy to change a flag in production.
- Built self-service password reset, replacing a flow that required users to request a temporary password first.
- Shipped a dialer and click-to-dial feature set across the back end, microservices, and the React client, including third-party webhook integration and XLSX campaign exports.
Senior Software Engineer
Cross Digital Ltd
- Conducted an audit of back- and front-end code, and AWS setup during the project transition.
- Analyzed UI interactions and business flow to understand the current system. Identified performance issues and bugs during the audit process.
- Submitted a detailed report with recommendations for code and AWS infrastructure improvements for scalability and performance. Suggested a better handover plan for a smoother project transition.
Front-end Developer
Piano Trax
- Rebuilt show, song, and track navigation on dynamic routing, unifying a fragmented flow and eliminating state loss on page refresh.
- Consolidated blog and blog-content creation from two separate screens into a single form with accordion-based content editing and image handling.
- Built the admin interface for coupon code management, allowing staff to update and toggle promotional codes directly.
Back-end Developer (Java)
GrowthDay
- Owned the notification service after its extraction from the core monolith, designed new notification types, ran Statsig experiments against them, and drove a 5% increase in daily active users through targeted push.
- Scaled notification delivery to 20,000 to 30,000 messages a day in steady state, handling peaks near 150,000 on event days.
- Designed and built the signup service from scratch, replacing a flow with known performance bottlenecks, and instrumented event-level analytics across trial conversions, upgrades, downgrades, and cancellation reasons.
- Owned the goals and reminders features end-to-end and built significant parts of journaling and course delivery in a MongoDB-backed Spring Boot monolith.
- Upgraded the platform from Java 8 to Java 21 and Spring Boot 2 to 3, including the javax to jakarta namespace migration.
- Cut dashboard load time from over 10 seconds to 3 or 4 seconds with an image-resize Lambda, and added automatic S3 thumbnail generation for profile images.
- Automated resolution of recurring customer-support issues, removing roughly 20% of ticket volume and the on-call engineering time attached to it.
- Reduced AWS spend by grouping same-frequency scheduler events into single SQS messages, cutting message volume on the platform's busiest queue.
- Migrated OneSignal data to a format usable across push, SMS, and email, consolidating three delivery channels onto one provider.
Senior Software Engineer
TigerIT ,
- Led API development and designed the back-end architecture for a project and task management platform built for a client's internal use.
- Built the platform's search layer on Elasticsearch to support filtering across free-text fields and internal list values, which relational queries could not serve efficiently.
- Built the API and reporting layers for an internal HR system covering attendance and leave management for 200+ employees.
- Introduced load testing on a project that had none, and tuned API performance against the results.
- Hardened the security of a daily scheduled job running unattended against employee records.
- Mentored junior developers and coordinated with other teams on requirements and feature delivery.
Software Engineer
TigerIT ,
- Coordinated with other teams to clarify feature requirements and understand existing design concepts on an established codebase.
- Coordinated with other teams to clarify feature requirements and map existing design concepts on an established codebase.
- Delivered features and resolved QA-reported defects across a production system in active use.
Software Engineer
D Money Bangladesh
- Built the core financial engine from scratch, covering transaction processing, balance management, end-of-day merchant reconciliation, and financial reporting as the system of record for every movement of money on the platform.
- Built the external payment gateway integrating the settlement bank and third-party providers, enabling cash-in and cash-out, credit card bill payment, mobile recharge, utility bills, and bus, train, and cinema ticketing.
- Joined before the first commit and delivered back-end systems through central-bank PSP licensing and commercial launch, by which point the platform had 50,000 registered users.
- Designed and built the user management service covering registration, credential handling, and login for the platform's entire user base.
- Developed and managed six microservices spanning payment and notification across the platform.
- Built and maintained the notification service delivering real-time transaction alerts triggered by user activity.
- Ran regular load tests to keep performance predictable as transaction volume grew, and migrated the database to optimize the payment flow.
Software Engineer
BJIT
- Built an internal data tool from scratch against client specifications, covering requirements through to delivery.
- Developed a client-facing application consuming internal data sources, in a Java and Spring Boot stack backed by MySQL.
- Delivered features in an outsourced development team, reporting progress daily and working directly against client requirements.
Project History
AI Property Search Assistant
https://login.propstream.com/I designed and built the server-side: a streaming agent on the Anthropic API that uses tool use, where the model calls a search tool and results stream back to the client as they arrive, rather than landing in a single block at the end. The filter taxonomy the model reasons over is sourced from S3 rather than compiled into the application, so search categories and their allowed values can change without a redeploy. That mattered because the taxonomy was still moving while the feature was being built.
Prompt caching brought the cost per conversation down by 60%. I added per-conversation logging of token counts, cache hit rates, and cost, so spend could be attributed and tracked rather than estimated.
Core Financial Engine · Digital Payments Platform
The engine was the system of record for every movement of money on the platform. It handled transaction processing across wallet transfers, bill payments, merchant purchases, and mobile top-ups; balance management with the consistency guarantees that implies; end-of-day merchant reconciliation against settlement; and the financial reporting that the business and the regulator required.
Working on a system where every record is money changes how you build. Correctness is not negotiable; failures must be recoverable rather than merely logged; and reconciliation must prove the ledger agrees with the bank at the end of every day.
I ran regular load tests against the engine to keep performance predictable as volume grew, and later migrated the database to optimize the payment flow. The platform went from the first commit through central bank licensing to commercial launch during my time there, reaching 50,000 registered users.
Bulk Listing Search API
I designed it with both synchronous and asynchronous modes: small queries return inline, large ones become background jobs that the caller polls for. Two problems shaped the design. First, expensive duplicate work: identical requests were hashed with SHA-256, so a repeat query could be recognized and served from the existing result rather than re-run. Second, duplicate processing under concurrency: workers claim jobs atomically, so two workers can never pick up the same job. Reads were routed to a read replica to keep heavy search traffic away from the primary, which was serving the main application.
Notification Service · Consumer Platform
Notifications started inside the core monolith and were extracted into a standalone service after they began causing performance problems there. The extraction was designed by our architect; I became the owning engineer for the service afterward, and all notification work was routed to me from that point.
I designed and built new notification types as the product needed them, and ran Statsig experiments to measure whether they actually changed behavior rather than assuming they did. Targeted push notifications drove a 5% increase in daily active users.
Volume ran at 20,000 to 30,000 notifications per day in steady state and peaked near 150,000 on event days, so the service had to handle bursts of roughly seven times the normal load. I also migrated our OneSignal data into a format that let us use one provider across SMS, push, and email instead of maintaining separate paths, and spent a fair amount of time on delivery reliability, which is where most of the hard problems in notifications actually live.
Card Payment Gateway Integration
I integrated a card gateway across two services, covering cardholder-initiated transactions for one-off purchases and merchant-initiated transactions for recurring subscription billing, with card tokenization so card data was never stored on our side. I took the integration through the vendor's certification process, which tests the implementation against the card scheme's requirements before it is allowed into production.
On the operational side, I added request-trace IDs to every gateway payment log, so that a support question about a specific charge could be answered by following a single identifier through the system instead of reconstructing it from timestamps. I also added alerting for recurring billing job failures, so a failed nightly run surfaces immediately rather than being discovered by customers.
External Payment Gateway · Bank and Biller Integrations
I built the gateway connecting our settlement bank and the third-party providers supporting the platform's services. It enabled cash-in and cash-out, credit card bill payment, mobile recharge, utility bill payment, and ticketing for buses, trains, and cinemas. Every integration was different. Banks and billers each had their own protocols, security requirements, failure modes, and ideas about what a timeout meant. The work was as much about handling partner-side failure gracefully as it was about the happy path, because a payment that fails halfway is worse than one that never starts.
Security mattered throughout: these were live financial transactions moving through third-party systems, at a platform operating under central-bank licensing.
Direct Mail Platform Rebuild
The scope covered campaign management APIs, cost preview so users could see what a campaign would cost before committing, the charging flow itself, and a payment scheduler with backoff retry for failures. Refunds were the interesting part. The obvious implementation would delete or modify the original charge record, but existing database triggers depended on those rows, so I issued refunds as credit reversal entries instead. The ledger stays append-only, and the triggers keep working, at the cost of a slightly more involved query when you want a net balance.
I also built webhook reconciliation with the vendor, so the state of a mail piece in our system stayed in step with theirs rather than drifting silently.
Signup Service
The original flow had performance bottlenecks that were hard to fix incrementally, so I designed and built a replacement service from scratch rather than patching around them. The part with the longest-lasting value was the analytics. I instrumented event-level tracking across the entire flow, so the business could see trial conversions, upgrades, downgrades, and cancellation reasons as they occurred rather than inferring them from database snapshots after the fact. That turned a set of assumptions about why people were leaving into something measurable.
I also worked on the front end, where time-sensitive issues came up, which is often the fastest way to unblock a launch, even when it is not strictly your layer.
DNC Compliance Migration
The DNC registry governs who a user is legally allowed to contact, so this data sits directly in a compliance path. The old model was not serving the product well, and changing it meant touching every writer and every read path that depended on it, at a scale where a careless migration means hours of downtime or a silently corrupted dataset.
Alongside the migration, I standardized US phone numbers to ten digits across all contact writes. Inconsistent formatting meant lookups could miss, and a missed DNC lookup is a compliance problem rather than a cosmetic one.
Action Tracker · Project Management Platform
The defining requirement was search. The client wanted to filter across fields that mixed free text with internal list values, in combinations that relational queries could not serve efficiently, no matter how they were indexed. I built the search layer on Elasticsearch, which fits the problem's shape rather than fighting it.
I also introduced load testing for the APIs, which had not existed on the project before, and tuned performance based on the results.
Core Platform · Goals, Reminders, Journaling, and Courses
I owned goals and reminders end-to-end, and built significant parts of journaling and course delivery. Reminders in particular are harder than they look: users are spread across time zones and expect a 7 am reminder at their 7 am, which makes scheduling a genuinely fiddly problem rather than a cron job.
Some of the work that came out of this: an image-resize Lambda that cut dashboard load time from over 10 seconds to 3 or 4, plus automatic S3 thumbnail generation for profile images; a change to the scheduler that grouped same-frequency events into single SQS messages instead of emitting one per event, reducing both message volume and the AWS bill; and automated resolution of the customer-support issues that came up most often, which removed around 20% of ticket volume and the on-call engineering time attached to it.
User Management Service
Authentication at a licensed payment service provider carries requirements that a general consumer app does not. Credential handling must meet the standards the platform is regulated by, and the service sits on the critical path for every user action, so both availability and latency matter. I designed and built the service, investigated and resolved production issues as they came up, and prepared the technical documentation covering its features and workflows.
Admin Portal · Music Catalog Management
I rebuilt the show, song, and track navigation on dynamic routing. The existing flow was fragmented and lost state on page refresh, which is the kind of bug that is individually small and collectively makes a tool unpleasant to use all day. I consolidated the blog and blog content creation, which had been two separate screens, into a single form with accordion-based content editing and image handling. I also built the admin interface for coupon code management.
TigerHRMS · Attendance and Leave System
I built the API and reporting layers. Reporting was the substantial part: attendance and leave data are only useful when aggregated, and the aggregations management wanted did not map neatly onto how the data was stored. I also hardened the security of the system's daily scheduled job, which ran unattended against employee records.
Medium Blog
Education
Master's Degree in Computer Science and Engineering
Jahangirnagar University - Savar, Dhaka
Bachelor's Degree in Computer Science and Engineering
Jahangirnagar University - Savar, Dhaka
Certifications
Ultimate AWS Certified Developer Associate 2021 – NEW
Udemy
Amazon Simple Storage Service (S3) Primer
Amazon Web Services (AWS)
Migrating from MySQL to Amazon RDS
Amazon Web Services (AWS)
Moving to Managed Databases on AWS
Amazon Web Services (AWS)
AWS Cloud Practitioner Essentials
Amazon Web Services (AWS)
Rest API (Intermediate)
HackerRank
Problem Solving (Intermediate)
HackerRank
Skills
Libraries/APIs
REST APIs, SendGrid API, Java Message Service (JMS), API Development, Stripe, Graph API, React, GraphQL API, Java Servlets, Vue, Node.js
Tools
IntelliJ IDEA, Apache Tomcat, Git, GitHub, GitLab, Apache Maven, Gradle, Amazon Simple Queue Service (SQS), Amazon ElastiCache, Amazon CloudWatch, AWS Parameter Store, Amazon CloudFront CDN, OneSignal, MongoDB Atlas, SendGrid, AWS IAM, WildFly, Jira, Shadcn, Terraform, Apache JMeter, Claude, Amazon OpenSearch, Amazon Simple Notification Service (SNS), Amazon Simple Email Service (SES), Kafka Streams, Keycloak, Docker Compose, Kafka Connect, ActiveMQ, Jenkins, Amazon Elastic Container Registry (ECR)
Languages
SQL, Java, Java 11, Java 8, GraphQL, JavaScript, Go, Kotlin, CSS, TypeScript, HTML, Python
Frameworks
Spring Boot, Spring, JUnit, Spring MVC, JPA, Spring Security, Spring Microservice, JSON Web Tokens (JWT), OAuth 2, Hibernate, Swagger, Next.js, Tailwind CSS, Hadoop, Thymeleaf
Paradigms
Scrum, Microservices, RESTful Development, Object-oriented Programming (OOP), Event-driven Architecture, Microservices Architecture, REST, Event-driven Design (EDD), Java Performance Optimization, Database Design, Unit Testing, Application Architecture, Domain-driven Development, DevOps, CQRS
Platforms
Amazon Web Services (AWS), JVM, Windows, Oracle, Apache Kafka, Amazon EC2, AWS Lambda, Docker, Oracle Database, Kubernetes, Firebase, Java EE (Jakarta EE)
Storage
MySQL, Redis, PostgreSQL, Spring Data JPA, Spring Data Elasticsearch, NoSQL, Amazon S3 (AWS S3), MongoDB, RDBMS, Datadog, Databases, Elasticsearch
Other
Security, Fintech, Amazon EventBridge, Back-end, Amazon API Gateway, Java 17, Statsig, Architecture, APIs, SaaS, API Integration, Back-end Development, API Documentation, Technical Documentation, Optimization, Code Review, Startups, API Design, OAuth, AWS Secrets Manager, RESTful Microservices, Caching, Cloud, Version Control, Domain-driven Design (DDD), RESTFul APIs, API Gateways, Communication, Documentation, Financial Services, Application Performance Optimization, Performance Tuning, Payments, Big Data, Research, MinIO, Amazon RDS, Elastic Load Balancers, CI/CD Pipelines, Identity & Access Management (IAM), Large-scale Projects, Performance, Distributed Systems, Team Leadership, Containerization, Algorithms, WebSockets, Full-stack, Front-end Development, Serverless, Amazon Kinesis, Application Performance Monitoring, Technical Leadership, Leadership, Payment APIs, Payment Gateways, Payment Processing, Prompt Engineering, Full-stack Development, Front-end, ECS, AWS AppConfig
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring