Shivang Nagaria, Developer in Bengaluru, Karnataka, India
Shivang is available for hire
Hire Shivang

Shivang Nagaria

Verified Expert  in Engineering

Software Developer

Bengaluru, Karnataka, India

Toptal member since February 11, 2022

Bio

Shivang is a senior back-end engineer with 8+ years of experience in Ruby on Rails and Django and has created multiple high-quality web apps, REST APIs, and microservices. Shivang is an expert in 3rd-party integrations with Google Calendar, Gmail, Twilio, and SendGrid. He excels with background tasks (Celery, Sidekiq), databases (MySQL, PostgreSQL, MongoDB), indexing and searching (Elasticsearch), serverless computing (Lambda and cloud functions), and async communication (SQS, Pub/Sub).

Portfolio

NBAI Inc
Django, PostgreSQL, Celery, Python, MongoDB, API Integration...
Apna
Google Cloud Platform (GCP), Go, Python, Elasticsearch, Docker, PostgreSQL...
InterviewBit
Ruby on Rails (RoR), React, Redis, MySQL, Ruby, Python, JavaScript, AWS Lambda...

Experience

Availability

Part-time

Preferred Environment

Ruby on Rails (RoR), Django, MySQL, PostgreSQL, Python

The most amazing...

...thing I've developed is Scaler's (a major edtech startup) Ruby on Rails back-end, which is used by over 10,000 students on a daily basis.

Work Experience

Senior Back-end Engineer

2023 - PRESENT
NBAI Inc
  • Developed a micro-SaaS platform using Django and PostgreSQL. As the sole back-end engineer on the team, I manage everything from designing architectures to production deployment.
  • Upgraded our system recently to use the Google Calendar Watch API, which reduced our CPU usage by 20%. We previously fetched data using cron jobs and wasted computations.
  • Wrote routines to detect overlaps, enforce budget, and suggest free slots given a user's preference.
Technologies: Django, PostgreSQL, Celery, Python, MongoDB, API Integration, Google Cloud Platform (GCP), Bash, Redis, OAuth, DevOps, Django ORM, Django REST Framework

Senior Software Engineer

2021 - 2023
Apna
  • Led performance testing of microservices using JMeter and Datadog. Identified and fixed many bottlenecks that we found in the code and the design.
  • Contributed to building a job search microservice used by over 15 million app users for searching and applying for jobs. Used Go, Mockito, Docker, and Elasticsearch.
  • Designed and developed a microservice using Go and Elasticsearch. Scaled it to serve over 1,500 requests per second with latency well below ten milliseconds.
  • Implemented a mechanism to ingest search terms from monolith to Elasticsearch via Google Pub/Sub. It captures all updates and deletes events.
  • Conceptualized and implemented an interpretation layer for popular search terms. Devised a wrapper language that enabled anyone to query Elasticsearch and map it to search any terms directly.
  • Headed a process of identifying duplicates in a corpus of three million terms via a semi-automated process. Used the Natural Language Toolkit (NLTK), Python, bash script, and MongoDB.
  • Designed and built self-served job verification flows using Django, Celery, and PostgreSQL, increasing a verified job count from 23% to 67% and reducing the number of fraudulent jobs posted in Apna. It is now India's most trusted job platform.
  • Designed and led the development of a Go microservice that integrated multiple third-party APIs for document verification. The service has verified 100,000+ documents while minimizing the error rate.
  • Contributed to a job feed module with over five million daily hits. Scaled it by profiling a Django function, optimizing queries, and adding a cache. Wrote a Celery task to compute impression-based parameters determining job position in the feed.
Technologies: Google Cloud Platform (GCP), Go, Python, Elasticsearch, Docker, PostgreSQL, MongoDB, Redis, MySQL, Django, REST APIs, Bash, Java, RESTful Microservices, RabbitMQ, API Integration, Relational Database Design, System Design, Git, Django ORM, Django REST Framework

Technical Lead

2019 - 2021
InterviewBit
  • Served as a founding member of Scaler (scaler.com). Led a team that built the platform from scratch using Ruby on Rails (RoR).
  • Scaled the platform to be used by 15,000+ students every day for attending live classes, solving programming problems, watching recorded videos, etc.
  • Owned and built all the core components of Scaler from scratch, including live and recorded classes using Zoom, AWS S3, and Sidekiq, the problem-solving interface, one-on-one calls with mentors, and referral experiences using RoR and React.
  • Worked on multiple apps on the admin interface that manages classes, student enrolment, and batches. Used React, Redux, RoR, and Sidekiq.
  • Ideated, led, and introduced gamification components to make learning fun and addictive. Over 800 students have consistently exercised for more than 30 days straight. A few even stayed consistent for more than four months.
  • Added gamification components like a streak, virtual coins, and a store using React, Redux, and RoR. Wrote multiple background tasks to compute scores periodically using Sidekiq and Redis.
  • Oversaw Elasticsearch integration with an RoR back end. Wrote multiple background tasks on top of it to calculate the time spent by students on the platform.
Technologies: Ruby on Rails (RoR), React, Redis, MySQL, Ruby, Python, JavaScript, AWS Lambda, Amazon Web Services (AWS), Amazon S3 (AWS S3), Elasticsearch, REST APIs, Bash, Sidekiq, Serverless Architecture, JSON Web Tokens (JWT), OAuth, API Integration, Relational Database Design, System Design, Email Automation, Git, RSpec, HTML, CSS, DevOps, Education Technology (Edtech)

Software Engineer

2018 - 2019
InterviewBit
  • Built a SaaS product for outbound hiring, allowing users to run fully automated personalized email campaigns. Added auto follow-ups, matching profiles, scheduling tests, and rejected failing criteria features. Used Amazon SES, RoR, Sidekiq, and Vue.
  • Integrated Gmail and Outlook APIs to run campaigns from work email. Used OAuth for access. Major companies like Expedia, Sprinklr, Zomato, Cleartrip, Myntra, and others use this.
  • Participated in the hiring of full-time employees and interns. Mentored new hires and got them up to speed.
  • Conducted multiple optimizations in the deployment pipeline via AWS EC2 and bash scripting, reducing deployment time by 60%.
  • Wrote a resume redacting service using AWS Lambda to process resumes and hide all personally identifiable information. Contributed to a sourcing product, which recruiters use to search resumes and screen them without access to contact information.
  • Migrated a three-year-old codebase running on Rails 4 to Rails 5. Added unit tests to ensure there is no breakage. Later, the newer version was released via canary deployment to minimize the impact.
Technologies: OAuth, Amazon Simple Email Service (SES), Ruby on Rails (RoR), Sidekiq, SMTP, AWS Lambda, Amazon S3 (AWS S3), Email Automation, Gmail API, RSpec, HTML, CSS, Education Technology (Edtech)

Open Source Software Contributor

2015 - 2018
OpenMRS
  • Designed and wrote unit tests, implemented an offline login feature, and integrated multiple APIs for an Android client. Implemented and enhanced core functionality in the Android client, such as patient registration and monitoring.
  • Awarded /dev/3 by the community for significant contributions in OpenMRS projects such as the Android client.
  • Mentored school kids starting out in open-source development.
Technologies: REST APIs, API Integration, Git

Software Engineering Intern

2017 - 2017
InterviewBit
  • Created a highly reusable one-on-one video calling module. Built with RoR, React Redux stack, and a Twilio API. Integrated it with a problem library and compiler to make it even more useful for technical interviews.
  • Created mock interviews for InterviewBit and mentor sessions for Scaler to use on a one-on-one video calling module. Over 200,000 sessions have been conducted on it, making it one of the most profitable apps for the company.
  • Fixed a large number of bugs on the InterviewBit website, directly handled users' feedback, and debugged many users' issues.
Technologies: Ruby, Ruby on Rails (RoR), Twilio API, React, RSpec, HTML, CSS

Student Software Developer

2017 - 2017
Google Summer of Code
  • Worked on the data integrity module, which is essential for validating patients' data entered by clinics. This system is live and being used in many African countries and is helping improve the healthcare system.
  • Designed and developed RESTful APIs, easing integration of the module with other services.
  • Expanded the user interface of different pages and enhanced filtering and searching by improving the UI/UX.
  • Added support to export a filtered list of entities to CSV, Excel, and PDF. This was an essential feature for places where electricity supply isn't reliable.
Technologies: Java, JavaScript, REST APIs, API Integration, Git

Google-like Autocomplete Feature with Microservice - Go & Elasticsearch

https://apna.co/
This microservice aims to provide relevant suggestions to users based on their partial input within 20 milliseconds. It also does fuzzy matching in case the user mistypes.

A few examples are:
• Writing "Eng" returns → "Software Engineer," Mechanical Engineer," etc.
• Writing "boy" returns → "Bouncer," "Office Boy/Helper/Peon," "Delivery Boy."

I built this product using Go, Elasticsearch, and Redis. The microservice was hosted on a Kubernetes cluster. I benchmarked and scaled the whole setup to serve over 1.7k QPS with a P90 of 10 milliseconds.

Millions of users in India use this feature on the Apna app and website. The search is live on the Apna homepage: https://apna.co/

Redaction Service with AWS Lambda, Python, S3, and Rails

An AWS Lambda function written in Python takes resumes in different formats, processes them, and redacts all personally identifiable information. Users can view candidates' resumes without bypassing our recruitment agency.

These services enabled InterviewBit to share its candidate pool with anyone without worrying about bypassing them. Previously, others would directly contact our candidates, resulting in a loss of commission for us.

This service has two main components: a serverless function that processes the resumes and a Rails monolith. I used Pub/Sub to establish async communication between them. The serverless function was written in Python and ran on AWS Lambda.

Tool to Track and Budget Your Time Using Django & PostgreSQL

FiniteTime aims to solve all your time management needs. You can track your time, ensure you spend it as intended by using categories and priorities, and share scheduling links with your co-workers while protecting your precious time.

When they approached me, they had a rough idea and no working prototype. I stepped in as a solo back-end developer. I also handled hosting, setting up app servers, and everything else in between.

I built a scalable platform hosted on AWS with Django, Celery, and PostgreSQL. I also wrote routines to detect overlaps, enforce budgets, and suggest free slots based on a user's preference.

Email Campaign System Using Rails, Gmail API, & MySQL

The tool aims to help recruiters engage a large number of candidates by creating email campaigns where each email is personalized with additional steps that can be configured as needed, such as:

• Sending follow-up emails if a candidate doesn't reply within a few days.
• If they show interest, choose an action like asking for availability, asking to take a test, or asking for an updated resume.
• If they reply negatively, send a thank you email and archive their profile.

I built this product from scratch using React, Rails, and MySQL. I utilized Sidekiq and Redis to perform async tasks, making the system scalable (as I can scale workers independently).

This product was being used by giants like Expedia, Chegg, and Zomato.
2014 - 2018

Bachelor of Technology Degree in Computer Science

International Institute of Information Technology - Hyderabad, India

Libraries/APIs

REST APIs, Django ORM, React, Sidekiq, Twilio API, Gmail API

Tools

Git, RabbitMQ, RSpec, Amazon Simple Email Service (SES), Celery

Languages

Bash, Ruby, Go, Python, Java, JavaScript, HTML, CSS

Frameworks

Ruby on Rails (RoR), Django, JSON Web Tokens (JWT), Django REST Framework

Storage

MySQL, PostgreSQL, Redis, Elasticsearch, MongoDB, Amazon S3 (AWS S3)

Paradigms

Serverless Architecture, DevOps

Platforms

Google Cloud Platform (GCP), Docker, AWS Lambda, Amazon Web Services (AWS)

Other

RESTful Microservices, API Integration, Relational Database Design, System Design, Email Automation, APIs, OAuth, Education Technology (Edtech), Tesseract, SMTP

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