Hey, I'm Utkarsh! 👋

A passionate Software Developer experienced in software engineering at scale, distributed systems and machine learning.

What I bring

Software Engineer interested in distributed systems and machine learning at scale.

  • C++

  • C#

  • Java

  • python

  • C

  • JavaScript

  • AWS

  • Azure

  • Apache Storm

  • git

  • PyTorch

  • scikit-learn

  • Jupyter

  • Windows

  • Linux

  • Unix

  • docker

  • NoSQL-DBs

  • RDBMS

  • SQL

⚡ 3 years of industry experience from Microsoft in large scale distributed systems, information retrieval and ranking

⚡ Master's in Computer and Information Science from University of Pennsylvania, with a focus on distributed systems and machine learning

⚡ Knack of working on 0-1 products and open-ended problems through prior experience

Education

University of Pennsylvania
University of Pennsylvania
Master of Science in Computer and Information Science

Jan 2021 - May 2022

Research in Bayesian Machine Learning, Reinforcement learning and projects in Distributed Systems

  • Ongoing research in adversarial attacks on reinforcement learning used in large scale software systems
  • Ongoing research in optimization of high dimensional black box functions using Bayesian Machine Learning
  • Built an end to end search engine from scratch on 500k webpages
  • Built a fully functional, distributed clone of GMail and Google Drive from scratch
  • Teaching Assistant for Machine Learning in Fall 2021 and Spring 2022
  • Coursework in distributed systems, machine learning, deep learning
  • GPA: 4.0/4.0
Manipal Institute of Technology
Manipal Institute of Technology
Bachelor of Science in Computer Science

Aug 2014 - May 2018

Ranked top 20% in the program. Took courses about Software Engineering, Web Security, Distributed Systems, Machine Learning

  • Minor in intelligent systems with coursework in Machine Learning, Natural Language Processing and Social Network Analysis
  • Took systems courses like Operating Systems, Distributed Systems, Networking
  • Built an automatic code-summarizer for Java Code using CNNs with attention mechanism
  • Participated in research of detecting glaucoma from high resolution retina images using CNNs
  • GPA: 9.11/10

Experiences

trustML Lab @ UPenn
trustML Lab @ UPenn
Research Assistant
Sep 2021 – Present

Adversarial attacks on Reinforcement Learning Algorithms deployed in production Software systems

  • I am currently researching and building novel attacks on reinforcement learning algorithms like PPO and A2C in systems environments like load balancing, congestion control, adaptive streaming etc.
  • The goal here is to make these algorithms perform worse than a greedy strategy.
  • Simulateneously, I also investigate fail-safe algorithms for shielding against such attacks, to guarantee at-least greedy performance.
CIS 520: Machine Learning
CIS 520: Machine Learning
Teaching Assistant
Sep 2021 – Present

Teaching Assistant for the graduate Machine Learning course for Spring 2022 and Fall 2021

  • My responsibilities are designing and grading homeworks and midterms, as well as helping students understand the content better.
GRASP Lab @ UPenn
GRASP Lab @ UPenn
Research Assistant
Aug 2021 – July 2021

Software development for DCIST: A fully autonomous, heterogenous swarm of robots to assist humans in combat scenarios

  • Built an automated metric-collection and visualization module from scratch for each simulation. Worked with stakeholders in identifying key metrics to collect and visualize.
  • Developed a batch-simulation mechanism. This allowed other researchers to specify several variable values in a YAML file, and then automatically run simulations for different combinations of values, hence streamlining productivity.
  • Implemented automatic aggregation and filtering for batch-simulation metrics.
  • I also researched new heuristics for probabalistic path planning of robots.
Microsoft
Microsoft
Software Engineer 2 & 1
June 2018 – December 2020

Division: Microsoft Search, Assistance and Intelligence

  • From June 2019 - Dec 2020, I worked in Bing Enterprise Search, where I led the design and development of a new backend infrastructure for serving acronym search results. The new infrastructure finally saw 30% gains in latency and ~5 percent gain in availability. This was while serving about 500M - 1.5 billion requests across all endpoints.
  • From June 2018 - June 2019, I was with the Microsoft Assistant Notifications team, where I was an active part of building C# microservices and library packages to power a new microservices-based Notifications system serving 10s of millions of users per day.
  • I also routinely took part in Site Reliability Engineering, mitigating, investigating and root-causing failures encountered on production systems.
Microsoft
Microsoft
Software Engineering Intern
Jan 2018 – June 2018

Division: Microsoft Search, Assistance and Intelligence

  • I built a prototype of a microservices-based Notifications system for Microsoft Assistant (previously Cortana) from scratch. The earlier system was centralized.
  • The new prototype offered more scalability, modular deployments and easier debugging.
  • The work from my internship laid the ground work for moving the Notifications system to a microservices-architecture, that I was an active part of.
Microsoft
Microsoft
Software Engineering Intern
May 2017 – July 2017

Division: Microsoft Search, Assistance and Intelligence

  • I built a voice controlled skill for Cortana to add-remove items from Cortana Lists using voice command
  • I also built a JavaScript Chrome extension to automatically parse out the lists from any given webpage and add it to Cortana Lists

Personal Projects

Some personal projects that I have built for fun or coursework, often both.

PennSearch
PennSearch

A google like end-to-end search engine deployed on cloud built from scratch

  • Crawled over 500k+ webpages using a Mercator style crawler using Apache Storm and deployed on Amazon EC2
  • Built a forward and reverse search index using Amazon Elastic MapReduce on over 2 million entries
  • Used a weighted combination of TF-IDF and PageRank for ranking of search results
  • Used Vue.js for UI
  • Backend written in Java using SparkJava HTTP Webserver package
PennCloud
PennCloud

A fully distributed GMail and GDrive Clone built from scratch

  • Powered by a distributed GFS like key-value store using active log-based replication and log-based fault recovery
  • Drive Storage features include creation, uploads, downloads, rename, moving of files and (nested) folders
  • Mail serving supports email functionality including send, forward, reply, reply-all
  • In-built load balancing functionality on both application and storage servers
  • Technologies used: C++, JavaScript, HTML5, Material CSS
TSsBO
TSsBO

High dimensional Bayesian Optimization of black-box functions by learning the active subspace

  • The objective is to optimize high dimensional, black-box non-differentiable functions by learning the active-subspace of these functions.
  • We learn a low-dimensional manifold of a high-dimensional function where Bayesian Optimization techniques like qExpectedImprovement and Thompson sampling can find local and global optimas, which can then be used to locate the optima in the original dimensions.
  • Technologies: PyTorch, GPyTorch, BoTorch

Online Certifications 🏆

Online Courses that I have completed

PWA
Cloud Computing Concepts, Part 1

An online non-credit course authorized by University of Illinois at Urbana-Champaign and offered through Coursera

PWA
Cloud Computing Concepts, Part 2

An online non-credit course authorized by University of Illinois at Urbana-Champaign and offered through Coursera

PWA
Cloud Computing Applications, Part 1: Cloud Systems and Infrastructure

An online non-credit course authorized by University of Illinois at Urbana-Champaign and offered through Coursera

PWA
Cloud Computing Applications, Part 2: Big Data and Applications in the Cloud

An online non-credit course authorized by University of Illinois at Urbana-Champaign and offered through Coursera

PWA
Cloud Networking

An online non-credit course authorized by University of Illinois at Urbana-Champaign and offered through Coursera

Contact Me ☎️

Looking to discuss an interesting project or an opportunity? I'm always interested.