Abdul Rauf
Verified Expert in Engineering
Software Developer
Abdul is a software engineer with over six years of professional experience in Java, Spring Boot, Go, Node.js, DevOps, and related stacks. While his expertise lies in the back end, he has also worked on many front-end projects involving React. Experienced in working with startups and large enterprises, he has led the development of multiple products from scratch with 100% remote teams. Abdul is adept at developing microservices as well as monolithic applications.
Portfolio
Experience
Availability
Preferred Environment
IntelliJ IDEA, Visual Studio Code (VS Code), Git, MacOS, WebStorm
The most amazing...
...module I created was an SMS gateway auto-switchover. It monitors the gateways' delivery times and failure rate and switches between them automatically.
Work Experience
Lead Software Engineer
Razorpay
- Acted as the main contributor in the notification service, handling different channels (webhooks, SMS, email, etc.). Enabled the service to handle 10,000 TPS compared to 2,500 TPS earlier.
- Led a team of two developers to create an MVP for the webhook replay dashboard. The technical support team can now use the dashboard to list and replay selected webhooks in case of failures on the merchants' end.
- Solved scaling and resiliency challenges of the notification service by leading several projects, such as traffic flow control, throttling, async database writes, and QoS (Quality of Service) for the merchants.
- Created SMS Gateway Switchover. This module monitors the health of all the SMS vendor gateways and switches between them accordingly on the basis of delivery times and failures.
- Analyzed all possible failure scenarios in the notifications service and reviewed all current alerts. Added missing alerts to achieve an MTTD of five minutes.
- Led the initiative to reduce the Postgres DB CPU usage. The CPU decreased from 60% to approximately 28% using several techniques.
- Mentored and guided many junior developers during the projects.
Senior Software Engineer
C2FO
- Planned, developed, and led a two-engineer team to migrate core components from the monolith to microservice architecture, e.g., the data manager for handling all recurring logic rules. Built using NestJS, GraphQL, and TypeORM.
- Designed, developed, and led a three-engineer team to create engineering components for new business opportunities, e.g., a DPO (days paid outstanding) and DSF (dynamic supplier finance) dashboard. Built using React, Scala, and the Play Framework.
- Planned, designed, and led a three-engineer team to create an internal dashboard for support teams. This allowed them to change all configurations related to Cashpool, which had a very complex validation logic. Used React and the Play framework.
- Debugged several severe production issues related to concurrency. These issues were causing us huge GMV losses.
Senior Software Engineer
Paytm
- Designed and developed an API gateway for bank middleware for authenticating, authorizing, and whitelisting merchants. It enabled the bank to onboard 50+ third-party partners. Built using Java, Spring Boot, and MySQL. The average TPS served was 250.
- Designed and developed Challenge Service, a service to track, log, and maintain the state of other microservices. This microservice was used as a state machine in the forgot password flow. The average TPS served was 100.
- Created a library to convert POJOs into the ISO 8583 format and vice versa for the Aadhaar Enabled Payment System (AEPS) message types.
- Contributed to other core microservices in the bank infrastructure, such as External Integration Service (EIS) and maker checker service.
DevOps Engineer
Paytm
- Planned and developed the in-house Kubernetes cluster management dashboard allowing other teams to check pods and container information, helping increase the observability of our infrastructure. Developed it with React and Express.js.
- Collaborated with the team that provisioned and maintained six environments and the entire bank infrastructure deployed on AWS and the in-house data center.
- Developed automation scripts to stop and start the whole environment or specific infrastructure components at specific times, which helped cut 50% of non-production environment costs.
- Followed the Infrastructure as Code (IaC) philosophy. We modified the infrastructure only via code using Terraform and SaltStack.
- Worked actively on AWS, Kubernetes, Docker, Terraform, SaltStack, ELK, React, Redux, and Express.js.
Software Development Intern
Google Summer of Code
- Worked with my mentors for four months to build several new features and enhancements to the GPAC codebase. GPAC is an open-source software dedicated to rich media and broadcast technologies.
- Created a module to take advantage of hardware-accelerated media decoding using MediaCodec C++ APIs on Android, resulting in better battery life and less CPU usage.
- Redesigned the entire UI of the Osmo4 media player app on Android to follow material design guidelines.
- Implemented a configuration file editor by parsing an XML options file. The users could use this UI to tweak configurations instead of manually editing XML files.
Experience
API Gateway
I developed and designed the whole system single-handedly from scratch using Java 8, Spring Boot, and MySQL. This microservice was handling an average of 250 TPS traffic and enabled the onboarding of 50+ third-party partners for integration with the bank for various workflows.
Technologies: Java, Hibernate, Spring Boot, MySQL, JSON Web Tokens(JWT)
Webhook Replay Dashboard
I prepared the technical spec and led a 3-person engineering team to design the dashboard. This was developed using Go and React.
After the dashboard, the on-call load on our team for such issues was reduced to zero. Earlier there used to be 3-5 tickets per week.
Technologies: Go, React, Gorm
Kubernetes Cluster Management Dashboard
I planned and developed the whole project with React and Express.js. This project helped us increase the observability of our infrastructure. Other teams didn't have to connect with the DevOps team to check the status of their deployments.
Technologies: Express.js, React, React Router, MUI (Material UI), Kubernetes
Recurring Dates Manager
I was in charge of planning and designing this microservice. After the change, the same system handled all the recurring rules logic, leading to better system maintainability. It also became a lot easier to create and edit recurring rules.
Technologies: TypeScript, TypeORM, NestJS, React, React Router, MUI (Material UI)
Hardware-accelerated Media Decoding on Android
https://summerofcode.withgoogle.com/archive/2016/projects/4785383036420096I created a video decoding module on Android using the MediaCodec C++ APIs, resulting in better battery life and less CPU usage of the mobile device. Other tasks included overhauling the user interface of the Osmo4 media player app on Android to follow material design guidelines. I also implemented a configuration file editor by parsing an XML options file. The users could use this UI to tweak configurations instead of manually editing XML files.
Technologies: C++, Java, Android
Cashpool Configuration Dashboard
I mostly worked on the front end of this project in React. The dependency of the support team on the development teams was reduced to zero. Earlier support teams had to raise tickets, and the development team used to change these configurations manually.
Technologies: React, NestJS, Node.js, TypeScript, Play Framework, and Formik.
Education
Bachelor's Degree in Computer Engineering
Jamia Millia Islamia - New Delhi, India
Certifications
Google Summer of Code Developer
Skills
Libraries/APIs
Node.js, REST APIs, API Development, React, React Router, Formik, Protobuf
Tools
Amazon Simple Queue Service (SQS), GitHub, Git, Apache Maven, RabbitMQ, Jira, IntelliJ IDEA, Terraform, SaltStack, Jenkins, WebStorm, Amazon Simple Email Service (SES), Apache, Grafana, Helm
Frameworks
Spring Boot, JSON Web Tokens (JWT), Hibernate, Material UI, Spring, Redux, Next.js, JUnit, Mockito, Express.js, Play Framework, NestJS, Gorm, Bootstrap, Tailwind CSS, Spring JDBC, Akka
Languages
Java, JavaScript, HTML, CSS, Go, Java 11, TypeScript, Scala, SQL, HTML5, Java 8, C++, GraphQL, C, XML, Kotlin
Paradigms
Microservices, REST, Microservices Architecture, Object-oriented Programming (OOP), Agile, Testing, Unit Testing, Continuous Integration (CI), Compiler Design, DevOps, OLAP, Test-driven Development (TDD)
Storage
RDBMS, MySQL, JSON, Relational Databases, Databases, PostgreSQL, Amazon S3 (AWS S3), Redis, Datadog, SQL Performance, Cache
Platforms
Docker, Kubernetes, Amazon Web Services (AWS), Apache Kafka, Linux, Web, Android, MacOS, Amazon EC2, Visual Studio Code (VS Code)
Other
Computer Engineering, OOP Designs, Web Development, Distributed Systems, Back-end, APIs, Full-stack Development, API Integration, Code Review, Large Scale Distributed Systems, HTTP, Back-end Development, Full-stack, DevOps Engineer, User Interface (UI), Cloud, Integration Testing, Third-party APIs, Team Leadership, GitOps, Amazon RDS, Transmission Control Protocol (TCP), Algorithms, CI/CD Pipelines, API Design, Front-end, Containerization, Containers, TypeORM, Prometheus, Performance Testing, Performance Tuning, API Gateways, Distributed Tracing, Hypertrace, CSS Grid, Apache Pinot, RPC
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