Summary
Overview
Work History
Education
Skills
Certification
Awards
Timeline
BusinessAnalyst
Kunal Shekhar

Kunal Shekhar

Python Developer & Consultant
Bangalore

Summary

Experienced Core Python Developer with a strong background in backend development. Specializes in creating scalable microservices and CLI-based DevOps tools. Proficient in Python, including asynchronous programming and multithreading, FastAPI, Django, and cloud platforms like GCP and AWS. Skilled in designing and migrating services from AWS Lambda to GCP Kubernetes, with a focus on developing resilient listener systems using Pub/Sub. Adept at enhancing developer tools, resolving CI/CD issues, and implementing structured logging for improved observability. Passionate about building robust backend systems and driving efficiency through automation.

Overview

4
4
years of professional experience
4
4
years of post-secondary education
2
2
Certifications

Work History

Consultant

Impetus Technologies
Bangalore
08.2024 - Current
  • Migration of Entire Ecommerce platform of Dunn & Bradstreet from AWS stack to GCP stack
  • Worked as core python developer on refactoring 35 Python-based AWS lambdas to GCP as monolith services
  • Used fastapi to create robust API endpoints and made them production ready by adding scalable options.
  • Used Multithreading and Asynchronous methods to effectively achieve concurrent processing of API endpoints and running listener function to continuously poll data from pubsub subscriptions
  • Made robust listener functions which continuously listen to the specified pubsub subscription so that we receive the messages without any delay also made them error persistent so that any error would not break the listener, and the polling won't stop even if an error occurred
  • Provided an efficient solution to not use DLQ's for failed messages
  • Instead, I provided a solution in which I modified the listener functions so that if an payload fails during processing, I capture the payload and other required details and save them to firestore.By not using DLQs we were able to save lot of overhead on having double the number of topics and subs in pubsub and also reduce cost in having those DLQ topics and subscriptions
  • Then created new service which efficiently replayed the message by picking up the failed messages from firestore and then retrying to publish the message
  • Created an efficient listener switcher using multithreading to switch between listeners of AWS and GCP,basically I created a flag using which we can shut down one listener and receive message from other
  • Created googlecloud logging so that logs of each service got contained within a logname of that service, this enabled user readability of logs and helped in exploring the logs with ease
  • Worked closely with client team to understand any new incoming request or product which was integrated in the Ecommerce platform during the migration
  • Active participation in discussion with client teams on choosing the best approaches.
  • For example: One of the lambdas on AWS had inputs from two points first was from an API and another from an SQS, since lambdas are handled by AWS we just add the triggers(SQS endpoint and API endpoint) from the console, and we are done ,no need to do any configuration in the code for those triggers but on GCP since we were creating monolith services, we had to handle those configurations from the code itself, for this i suggested an approach using Threading which allowed us to run both the api endpoint using fastapi and receive data from the pubsub without blocking each other and made it scalable by making the fastapi endpoint use workers based on cpu core count,so in case of HPA the endpoint will scale as needed.

Associate Consultant

Capgemini
Bangalore
07.2021 - 03.2023
  • Worked for a highly reputed investment banking client as a Python3 developer in an Agile Scrum environment in their DevOPS department
  • Wrote code for Python 3 command-line interface (CLI)-based deployment tools (a group of Python scripts)
  • This CLI tool was maintained and created by us in DevOPS,which was used internally to deploy cron jobs via cli
  • Worked on developing new features for existing Python 3 CLI-based deployment tools (Group of DevOPS tools developed by us) to increase usability based on user feedback
  • Also, streamlined the deployment process initiated via our Python 3 CLI tools by providing multiple job options that could be enabled or disabled simply by mentioning them or leaving them out from the YAML configuration of the job
  • Resolved deployment failures/issues in Jenkins encountered by different teams using our CI and CD pipelines or our Python 3 CLI applications for deploying their jobs
  • Also handled and maintained various auto-scheduled jobs
  • Developed new features for Python 3 CLI-based deployment tools (Group of DevOPS tools developed by us) based on user feedback and requirements
  • For example, I added an automation feature using only Python 3 called 'Ignore Column in YAML'
  • When deploying multiple child jobs and needing to skip a feature from being deployed for all child jobs, we could create another YAML file called 'Ignore Column', add the feature we want to skip, attach it to the job YAML, and it would skip the mentioned feature for the specified child jobs

Associate Software Engineer

Khetra Agritech Pvt. Ltd.
Bangalore
08.2019 - 08.2020
  • Worked as a Full-Stack developer creating a Python3 web-based application called Rate Card Dashboard using Django, basically a microservice
  • Allowed users to create rate cards for the daily purchase of commodities
  • Additionally, integrated REST APIs to display rates of different commodities in an Android application
  • Created Entire Frontend using html5 and bootstrap, Backend using Django and Django Rest Framework, Using MySQL as the Database
  • Hosted the web application on GCP's App engine via cloud build, as the app engine provided automatic scaling of the application instances
  • Configured each service (such as API requests from mobile) to use different runtimes and to operate with different performance settings and implemented continuous deployment via cloud build triggers

Education

Bachelor of Engineering - Computer Science and Engineering

PES College of Engineering,Mandya
Karnataka
01.2015 - 01.2019

Skills

Certification

Cutshort Certified Python - Advanced, Cutshort, 01/01/24

Awards

Star of the Month, 03/01/25, For smooth & successful Production release

Timeline

Consultant

Impetus Technologies
08.2024 - Current

Associate Consultant

Capgemini
07.2021 - 03.2023

Associate Software Engineer

Khetra Agritech Pvt. Ltd.
08.2019 - 08.2020

Bachelor of Engineering - Computer Science and Engineering

PES College of Engineering,Mandya
01.2015 - 01.2019
Kunal ShekharPython Developer & Consultant