pdf version


Software Engineer turned Technical Lead with 7 years of experience building backend systems for several SaaS platforms, and a large multinational bank.

Professional Experience


Tech Lead Dec 2022 - current | Vienna, Austria

  • Technical Lead: Responsible for leading a cross-functional team of 6 engineers/testers, aligning the technical direction of the team, ensuring well-being and development of team members, and collaborating with product teams to conceptualise features
  • Custom email domains: Enable customers to send emails on their own domain; managed using our internal admin tool (scala)
  • Custom domains: Facilitate serving of the web app on custom domains; managed via internal admin tool (cloudfront, scala)
  • API migrations: Migration of APIs related to user registration from legacy monolith service to a dedicated microservice (scala, play)

Backend Engineer May 2022 - Dec 2022 | Vienna, Austria

  • Feature migrations: Migrate APIs from a legacy service to a modern one (scala, play, tapir, ecs)


Back End Developer March 2021 - April 2022 | Vienna, Austria

  • Code releases: Worked as "release master" alongside regular role; responsible for deploying new versions of the codebase, and ensuring bug-free releases
  • APIs: Worked on back-end APIs supporting customer facing product features (fastapi, graphql, ECS)
  • Async workloads: Worked on back-end systems that ingest/egest data from/to third party ecommerce systems (ECS, SQS, airflow)
  • Infrastructure as Code: Modeled existing and new AWS resources as code for faster iterative deployments (AWS CDK)
  • CICD: Designed and implemented a multi-project CICD pipeline from scratch (AWS CDK, CodePipeline, Github Actions)
  • ORM: Set up SQLAlchemy from scratch, to be used by back end systems
  • Tests: Set up code testing (including linting, type checking) from scratch (pytest, mypy, sqlalchemy)
  • Structured Logging: Overhauled logging across multiple projects to improve bug discoverability (datadog, sentry)
  • ETL: Set up a scheduled ETL system to be directly used by our customers (via sftp) (pandas, AWS CDK, AWS Transfer)
  • Reporting: Added analytics report generation tools for customers to get more insights into business metrics (pandas, fastapi)


Senior Backend Developer June 2020 - March 2021 | Vienna, Austria

  • 3rd Party Integrations: Created integrations to let Usersnap users send feedback items to 3rd party platforms (like Github), webhooks, and email
  • Product Features: Worked on the back end to add features like screenshot comments, attachment upload to feedback, new project types, notification emails, etc. (Flask, celery, SqlAlchemy, Postgres, pytest)
  • Authorization: Added JWT authorization to Usersnap's consumer API


Backend Engineer Dec 2019 - May 2020 | Vienna, Austria

  • Search and Ranking: Serving and productionizing Machine Learning models (Flask, fastapi, AWS ECS)


Senior Software Engineer March 2019 - October 2019 | Hyderabad, India

  • CICD on GCP: Infrastructure management and Microservice deployment on GKE (Terraform, GKE)

Software Engineer March 2017 - February 2019 | Hyderabad, India

  • Data Processing on GCP: Wrote GKE CronJobs to log data onto various GCP databases (Pub Sub, GKE, BigQuery, Data Store)
  • Business Rules: Wrote a microservice to encapsulate business rules for a Credit Decision Engine (Drools, Spring, MongoDB)
  • Credit Bureau: (poc) Created a data ingestion system to incorporate data from external credit bureau vendors to HSBC credit approval application. Created a front-end to display analysed data (Flask, MongoDB, chart.js)
  • Infrastructure Automation: Designed an infrastructure automation approach for creating development environments on Google Cloud Platform (Ansible, Terraform)
  • Data Warehouse: Wrote data processing pipelines on GCP to migrate data from on-prem warehouses, perform ETL and delta-processing, and generate daily snapshots (Cloud Dataflow, Apache Beam, BigQuery)
  • Offer Personalisation: (poc) Built an application to generate credit card recommendations from customer spending patterns (neo4j, DialogFlow, Cloud Functions, Pub-Sub, Flask, App Engine)
  • Customer Calls Analysis: (poc) Created a platform/dashboard to generate real-time sentiment scores on customer center calls. This solution won first prize at CodeGrind, HSBC India's nation wide coding competition (Cloud Speech, Cloud NLP, Cloud Functions, Pub-Sub, Flask, socket.io, chart.js)

Software Engineer June 2016 - May 2017 | Pune, India

  • Core Banking APIs: Created APIs for modern clients to interact with a legacy core banking application (MuleESB)
  • Internal HR application: Created modules on an internal HR web-application (Spring, Dojo)
  • Internal Emails Classifier: (poc) Created a multinomial logistic regression model for classifying internal emails (Tensorflow)

Personal Projects

  • handy-maps : A website to visualize public data from various US govt. institutions.
  • album-art-genre-classifier: Image classifier API that predicts music genre from uploaded album art. source
  • grad-cam-visualizer: Experiments in generating class discriminative localization maps from trained convnets. source
  • book-lending-marketplace: An online marketplace for fellow college students to lend/sell books; ran website for a few months.


Intro to self-driving cars

Udacity - February 2019

Bachelor of Technology in Electronics and Communications Engineering

National Institute of Technology, Hamirpur - August 2012 - May 2016 | Hamirpur, India


  • Web: fastapi, flask, graphQL, django, , spring
  • Programming Languages: python, java, javaScript, SQL, CSS, HTML, latex
  • Other: pytest, celery, matplotlib, pandas, seaborn, apache beam
  • DevOps: docker, AWS CDK
  • Databases: postgreSQL, BigQuery, MySQL
  • Cloud: GCP, AWS

MOOCs and Certifications

Visit https://dhruvs.space/learnings/

© Dhruv Thakur 2023

GithubTwitterBase Template by Tania Rascia