Anmol Vijaywargiya, Developer in Bengaluru, Karnataka, India
Anmol is available for hire
Hire Anmol

Anmol Vijaywargiya

Verified Expert  in Engineering

Back-end Developer

Location
Bengaluru, Karnataka, India
Toptal Member Since
May 20, 2021

Anmol is a software engineer with around eight years of experience in the tech industry. He was the founding engineer of Perpule, an early-stage retail tech startup. Along with the CTO, Anmol co-led the back-end development for all verticals served by the company, and his notable achievements led to the Amazon acquisition. Before the acquisition, he played a key role in scaling the back-end team from 1-20 developers. Anmol is exceptionally proactive, and he expects the same from his teammates.

Portfolio

Container Exchange Services
Java, Spring Boot, React, Kubernetes, Unit Testing, Next.js, Docker Swarm...
Meraai
Spring Boot, Java, Hibernate, PostgreSQL, Google Cloud SQL, React, Figma...
Gojek
Ruby, Clojure, Apache Kafka, PostgreSQL, REST APIs, Ruby on Rails 5...

Experience

Availability

Full-time

Preferred Environment

MacOS, IntelliJ IDEA, Slack, Linux, Ubuntu, Google Cloud Platform (GCP)

The most amazing...

...thing I've developed is the algorithm for a promotions engine that's used by major retailers in India. It reduced the time complexity from O(n^m) to O(n^3).

Work Experience

Senior Full-stack Developer

2023 - 2023
Container Exchange Services
  • Developed a new product for the organization, a crucial portal for the stakeholders and government entities in the ecosystem. Accessibility (ARIA) was especially taken into consideration while developing the product.
  • Built an event-driven microservice connected to the web app and other internal microservices. Contributed to the architecture database design and took care of the deployment pipelines.
  • Created a React application with Next.js 13 server-side rendering and multi-page architecture.
  • Developed accessible, headless UI React components with React Aria and built additional styled-components with Tailwind CSS, later shared with other teams via a mono repo setup.
  • Tested all Jest component behaviors and styling with automated visual regression using a Storybook add-on for capturing snapshots.
  • Maintained the existing apps written in Angular and contributed to the monolith back-end app.
  • Implemented Strapi as the headless CMS to manage resources for the application.
  • Worked on a Go-based auth microservice that handles both authentication using Auth0 and authorization using Open Policy Agent (OPA).
Technologies: Java, Spring Boot, React, Kubernetes, Unit Testing, Next.js, Docker Swarm, Angular, JavaScript, Accessible Rich Internet Applications (ARIA), Node.js, Vault, GitHub Actions, CI/CD Pipelines, Grafana, Argo CD, Rego, Open Policy Language, Strapi, Go, UI Development, User Interface (UI), Amazon Web Services (AWS), GitHub, Object-oriented Programming (OOP), Spring, Databases, Cloud Platforms, SQL, Terraform, HTML, Full-stack, AWS Lambda, Amazon S3 (AWS S3), Amazon CloudFront CDN, Web Usability, Amazon DynamoDB, Design Principles, Front-end Development, Jest, Front-end

Chief Technology Officer

2022 - 2023
Meraai
  • Collaborated in creating a B2B packaged food marketplace platform, intending to be the premier destination for retailers' cross-state packaged food demands. Through this platform, manufacturers can expand their reach, increasing their sales volume.
  • Developed an event-driven backend on Spring Boot, leveraging Postgres database and Cloud Run hosting in GCP. Established observability using Google Cloud Monitoring and logging with Stackdriver.
  • Developed a React and Typescript-based dashboard with a Figma-designed UI for administrative and operational tasks. The dashboard was hosted on Google Cloud Run and utilized Nginx as a load balancer.
  • Assembled a 5-member tech team and facilitated communication between customers and Operations.
  • Gathered requirements and supervised product development with a data-driven approach. Leveraged Pub/Sub to handle all event-driven processing.
Technologies: Spring Boot, Java, Hibernate, PostgreSQL, Google Cloud SQL, React, Figma, Google Pub/Sub, Event-driven Architecture, Design Principles, REST APIs, Monitoring, Google Cloud, CSS, Architecture, Software Design, Integration, API Integration, APIs, JavaScript, TypeScript, Microservices, Docker, Technical Leadership, Software Architecture, Estimations, Product Development, Unit Testing, GitHub, DevOps, Object-oriented Programming (OOP), Spring, Databases, Cloud Platforms, SQL, Terraform, HTML, Full-stack, Amazon S3 (AWS S3), Web Usability, MongoDB, Front-end Development, Jest, PWA, Payment Processing, Payment APIs, Front-end

Senior Software Engineer

2020 - 2022
Gojek
  • Revamped team Ziggurat's open-source event processing framework, now utilized by 200+ actors at Gojek, resulting in a 99.92% reduction in time-to-production for Kafka-based applications - from 40 hours to 30 minutes.
  • Implemented a Ruby on Rails-based solution that enabled upgrading of actor VMs with zero downtime. Successfully leveraged this solution to migrate the VMs from Ubuntu 16.04 to Ubuntu 20.04.
  • Focused on stabilizing the central RabbitMQ, which supports 250 applications across Gojek for delayed processing. Implemented classic mirrored queues, and possess expertise in RabbitMQ management.
  • Figured out and solved a crucial production outage in Kafka that had a huge business impact and wrote a blog on the same (https://www.gojek.io/blog/when-kafka-went-offshore).
Technologies: Ruby, Clojure, Apache Kafka, PostgreSQL, REST APIs, Ruby on Rails 5, Ruby on Rails (RoR), RSpec, Git, Software Development, RabbitMQ, Architecture, Software Design, Integration, API Integration, APIs, Legacy Code, Legacy Software, Microservices, Docker, Technical Leadership, Software Architecture, Product Development, Unit Testing, GitHub, DevOps, Object-oriented Programming (OOP), Databases, Cloud Platforms, SQL, Terraform, Amazon Web Services (AWS), HTML, Full-stack, JavaScript, Python, Design Principles, Front-end Development, Jest, Front-end

Consultant

2021 - 2021
Kizen Technologies
  • Built a Ruby-based connector that helps users build workflows via recipes. I developed this from scratch after learning how to write Workato connectors.
  • Helped Kizen's customers build efficient data pipelines with the connector that I developed, which was one of many connectors provided by service providers.
  • Understood how Kizen's platform and APIs work quickly and independently.
Technologies: Ruby

Tech Lead

2019 - 2020
Perpule (Acquired by Amazon)
  • Integrated the company’s systems with five of the country’s largest retail clients that generated 30% of the company's ARR. Played a key role in the end-to-end process, including pre-sales, planning, development, and rollout.
  • Architected and built the inventory management system that handles the stock for nearly a million SKUs across large retailers and small and medium-sized enterprises (SMEs). It was built such that any new client integration could be done in minutes.
  • Led the back-end team working on the desktop-based POS system, a crucial product for the company, which led to its acquisition by Amazon.
Technologies: Java, Spring Boot, Jersey, Django, Google Cloud Datastore, MySQL, Relational Databases, REST APIs, JUnit, Git, Software Development, Google BigQuery, Architecture, Software Design, Integration, API Integration, APIs, Microservices, Technical Leadership, Software Architecture, Estimations, Product Development, Unit Testing, GitHub, DevOps, Object-oriented Programming (OOP), Spring, Databases, Cloud Platforms, SQL, HTML, Full-stack, JavaScript, Python, Design Principles, Front-end Development, Payment Processing, Payment APIs, Front-end

Senior Software Engineer

2017 - 2019
Perpule (Acquired by Amazon)
  • Served as the founding engineer and led the back-end development for all the verticals served by the company.
  • Designed and optimized the promotions engine algorithm, decreasing the time complexity from O(n^m) to O(n^3). The engine, which was once a bottleneck for signing deals with large retail clients, is now one of the best in the domain.
  • Worked on the architecture and design of the cataloging system for the cafeteria vertical, which scaled to 60,000 daily recurring orders and handled peak loads of 200+ input/output operations per second (IOPS).
  • Designed and built the back end for UltraPOS Mobile, an offline-first, handheld POS system that was a critical enabler for serving customers in areas with poor networks.
Technologies: Java, Jersey, Django, MySQL, Google App Engine, Google Cloud Datastore, Google Compute Engine (GCE), Google Task Queue, Spring Boot, REST APIs, Spring, Back-end, JUnit, Git, Software Development, Google BigQuery, Software Design, Integration, API Integration, APIs, Microservices, Technical Leadership, Software Architecture, Product Development, GitHub, DevOps, Object-oriented Programming (OOP), Databases, Cloud Platforms, SQL, HTML, Full-stack, JavaScript, Flask, Python, Design Principles, Front-end Development, Payment Processing, Payment APIs, Front-end

Software Development Engineer

2015 - 2017
Snapdeal
  • Created an intuitive algorithm that focused on various parameters to compute the quality score for the reviews received by the system daily. I did this as a member of the user-generated content team.
  • Worked on attribute-level ratings, which mainly aimed to capture a user's perspective about a product via their ratings of product attributes and use that data to further enhance the user experience.
  • Played a key role in formulating normalized ratings for products, a unique parameter to enhance the search (listing) experience.
Technologies: Java, Apache Tomcat, Apache Cassandra, Elasticsearch, REST APIs, JUnit, Git, Software Development, APIs, Legacy Code, Legacy Software, Spring Boot, GitHub, Object-oriented Programming (OOP), Databases, SQL, Design Principles

Promotions Engine

A multidimensional, knapsack-based promotions engine algorithm that helps compute the best offers to give customers based on the items in their carts. It handles all sorts of complex offers and helps the users provide the best experience to their customers.

The solution used initially had a complexity O(n^m), and the algorithm I developed got it down to O(n^3). This meant that a calculation that took three minutes (or, at times, ran infinitely) would now take less than five seconds. This algorithm was eventually rolled out successfully for all the major retailers in the country.

Hyperloader

A Python and BigQuery-based ETL application to transform a retailer's data into a format that our databases understood. This application was used in scenarios wherein the retailer didn't have incremental updates regarding the product catalog and promotions data changes and, instead, sent in a complete dump of the data every day via FTP. If done traditionally, this meant crunching around 10 million records and replacing them on our databases each day, which was time-consuming and not cost-effective.

Leveraging the ability of BigQuery to crunch gigabytes of data in a matter of seconds, I developed a solution that calculated a difference between yesterday's and today's data before transforming it and pushing it onto our databases. The process, which otherwise would have taken almost half a day to complete, was now accomplished in about 30 minutes.

Cataloging System for Cafeterias and Quick Service Restaurants

I developed a dynamic, recursive cataloging system that allows for highly customizable menus with hierarchical components for each menu item. For example, in the case of a pizza, customers can choose from various crust types, each with multiple options for toppings, add-ons, sauce, and cheese.

This structure can be thought of as a tree, with each item having multiple options and each option having multiple items. The system is designed to enable the addition of new menu items, categorize them with labels, specify time slots for their availability, and manage inventory levels.

As a sole developer, I created the dashboard for restaurant administrators and the backend to support the system. The platform was successfully rolled out to various cafeterias and restaurants, leading to its widespread adoption by the organization.

Infrastructure Migration System

A Ruby on Rails-based solution for the recreation of GCE VMs for about 250+ applications under our team purview in Gojek. I solo-architected and implemented the solution, which comprises the following APIs:
• Recreate infrastructure.
• Switch traffic between new and old infrastructure sets.
• Delete infrastructure.

This solution was used for the migration of VMs from Ubuntu 16.04 to Ubuntu 20.04, since Ubuntu 16.04 had reached its LTE support deadline.

Identity Portal for Platforms Team

I created an identity management portal using React, MobX-State-Tree, and Ruby on Rails to provide product teams with a centralized location for accessing all aspects of the engineering platform. This user-friendly interface enables users and services to manage their entire lifecycle, from discovery and onboarding to setup and migrations.

While React was a new technology for me, I took on the challenge as we had no front-end developers on our team. I quickly familiarized myself with the platform and delivered an MVP within two weeks. In addition, I helped set up the infrastructure for the front-end and back-end services using Google IAP, Google Load Balancer, and Nginx. For authentication purposes, we added Google SSO.

The portal received positive feedback from the organization, and I found the project to be an enjoyable experience.

Platform for a B2B FMCG Marketplace

https://www.meraai.co
I served as the CTO and co-founder of a B2B FMCG marketplace in India, where my primary responsibility was to design and implement a platform that enabled seamless operations and facilitated the scaling of niche FMCG product sellers across state borders. The platform had two key components: a Spring Boot-based backend built on event-driven architecture and a React and Typescript-based SPA that provided a user-friendly interface for customers and operations to interact with the backend.

To tackle the common challenges that arise when managing an FMCG distribution business in India, the platform managed various processes such as the order lifecycle, purchase order lifecycle, inventory, users, payment collections, and on-ground deposits. Additionally, we incorporated a finance module to help the finance team with reconciliation. Through a collaborative approach involving the customers and operations, I developed both aspects of the product and ensured that it scaled effectively as per the needs of the business.

Stream Processing Library for Sync and Async Workloads

https://github.com/gojek/ziggurat
I built Ziggurat, a framework built to simplify Stream processing on Kafka. It can be used to create a full-fledged Clojure app that reads and processes messages from Kafka. Ziggurat intends to abstract out reading messages from Kafka, retrying failed messages, and setting up an HTTP server.
All the teams in Gojek use this library to set up and run Clojure-based apps.

Languages

Java, Python, JavaScript, SQL, HTML, Clojure, CSS, TypeScript, Ruby, Go

Frameworks

Spring Boot, JUnit, Jersey, Spring, Ruby on Rails 5, Ruby on Rails (RoR), Next.js, Flask, Tailwind CSS, Redux, Jest, Django, Angular, Material UI, Hibernate

Libraries/APIs

React, REST APIs, Google Task Queue, Node.js, MobX, Antd

Tools

Git, GitHub, Google Compute Engine (GCE), IntelliJ IDEA, Slack, BigQuery, RSpec, Terraform, Amazon CloudFront CDN, Apache Tomcat, Chef, NGINX, RabbitMQ, Figma, Docker Swarm, Vault, Grafana, Kafka Streams

Paradigms

REST, Object-oriented Programming (OOP), Microservices, Unit Testing, DevOps, ETL, Event-driven Architecture, Aspect-oriented Programming, Spring Aspect-oriented Programming (AOP)

Storage

MySQL, Google Cloud Datastore, PostgreSQL, Relational Databases, Databases, Amazon S3 (AWS S3), Elasticsearch, Google Cloud SQL, Google Cloud, Amazon DynamoDB, MongoDB

Other

Software Development, Design Principles, Architecture, Software Design, API Integration, APIs, Software Architecture, Full-stack, Full-stack Development, FTP, Back-end, Google BigQuery, Integration, Legacy Code, Legacy Software, Technical Leadership, Estimations, Product Development, Cloud Platforms, Web Usability, Front-end Development, Front-end, Apache Cassandra, HAProxy, Consul, Single Sign-on (SSO), Google IAP, Google Pub/Sub, Monitoring, Product Management, IT Project Management, GitHub Actions, CI/CD Pipelines, Accessible Rich Internet Applications (ARIA), Argo CD, Rego, Open Policy Language, Strapi, UI Development, User Interface (UI), PWA, Payment Processing, Payment APIs

Platforms

Google App Engine, MacOS, Linux, Ubuntu, Docker, Kubernetes, Amazon Web Services (AWS), AWS Lambda, Apache Kafka, Google Cloud Platform (GCP), Firebase

2011 - 2015

Bachelor's Degree in Information Technology

National Institute of Technology Karnataka (NITK Surathkal) - Mangalore, Karnataka, India

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring