Career Profile

Love to code and build Scalable Software. Work at Microsoft Azure.
Graduated from SUNY Buffalo with Masters in Computer Science specializing in Distributed Systems and Networking.
I love to code and build products that scale. I like to continuously work on different projects, feel free to check my Git Profile.

Experiences

Senior Software Engineer

Feb 2019 - Present

- Work on building a WAF (Web Application Firewall) engine for Azure’s Layer-7 load balancer from the ground up and took it to GA.

- Work on scoping, designing, reviewing, and developing various features and solutions for the WAF engine, the recent ones being distributed rate limiter, exclusion matcher, streaming JSON parser, etc.

- Implemented high-performance reusable components which help improve feature velocity and developer productivity.

- Advocate and work towards improving the process and practices to help deliver high-quality software.

- Work with customers, root cause production issues, and work towards solutions that better the stakeholder experience.

- Drive efforts to mitigate potential zero-day security vulnerabilities on the Azure platform.

- Designed and implemented firewall policy that allowed multiple gateways to refer to the same policy.

- Designed and implemented support for fine-grained WAF configuration that allowed assignment of different security policies to specific listeners and URIs.

Software Engineering Intern

May 2018 - August 2018

Skills : Java, C, Python, Linux, Shell, Networking, SDN

- Working on developing Port-Mirroring to Controller the Big Cloud Fabric SDN Software.

Software Engineer

2016 - 2017

Skills : C, Python, Linux, Shell, Broadcom, Switching & Routing, Layer-2/Layer-3 Protocols.

- Fixed multiple bugs on various Layer-2 protocols like VLAN, xSTP, LAG, MRP and dot1-BR.

- Successfully Implemented the Virtual-LAG Feature for Brocade's ICX Family Routers.

- Implemented VLAN-Configuration Enhancements ensuring easier configuration of VLANs.

Senior Software Engineer

2013 - 2016

Skills : C, Python, Linux, Shell, Broadcom, Fulcrum, Switching & Routing, Layer-2/Layer-3 Protocols.

- Designed and Developed Multi-Chassis Link Aggregation framework. Fixed multiple issues on existing base-code in Layer 2,Layer 3 Networking Protocols. (HB, LAG, VRRP, ICCH).

- Implemented Router-port feature over Broadcom chipset. Was Awarded Individual Excellence Award for quality delivery.

- Designed and Integrated open source Netconf Protocol code with Aricent Switching Software.

- Developed and Maintained the Routing Software's Web-Interface Generation tool and increased the speed by 100x.

- Successfully refactored portions of the CLI (Command Line Interface) code for robustness and scalability.

Freelance Web Developer

2012 - 2013

- Successfully designed, developed and deployed multiple websites/ web based solutions for various clients through upwork for clients across the globe.

Projects

A list of projects I've worked on so far (Links are provided wherever possible. Source code for the rest can be obtained on demand).

Distributed Key-Value Storage on Android(Amazon Dynamo). - Implemented a failure resilient distributed key-value storage inspired by Amazon Dynamo that provides Linearizability and availability. Java, Android, Socket Programming, Linearizability
Distributed Hash Table on Android. - Implemented a distributed hash-table based on Chord that provides node joins, ID space partitioning and ring based routing. Java, Android, Socket Programming, Chord
Group Messenger on Android. - Implemented a Group Messenger to implement Total FIFO Ordering. Java, Android, Total Ordering, Group Messenger
Data Analytics Pipeline using Apache Spark. - Implemented data acquisition & analytics pipeline to fetch articles using NY-Times API. Used Hadoop MapReduce and Apache Spark to build article classification model Python, Apache Spark, Scala, REST API, DataCollection
Software Defined Networking - Implemented a Simplified Version of Distance Vector Routing. C, TCP/IP, Socket Programming, UDP
Reliable Transport Protocols - Implemented Reliable Transport Protocols like Alternate Bit Protocol, Go-BackN, SelectiveRepeat. C, Data Structure, TCP/IP
Chat Application - Implemented a Server-Client Chat Application over TCP. C, Data Structure, TCP/IP
Priority & MLFQ Scheduler - Implemented Priority Scheduling by using Priority Donation to avoid Priority Inversion.
- Implemented Multilevel Feedback Queue Scheduler to ensure all process get fair share of the resources.
C, Operating Systems
Solved Problems - Has solutions to the LeetCode/HackerRank Problems that I have solved in this year. I Use this for revising solutions in O(1) and sometimes there can be a better logic to acheive the same. Data Structures, Algorithms, C, Python, Java, DP, Tree, Recursion
Data Collection and Exploratory Data Analytics using R - Analyzed Influenza Outbreak by performing Exploratory data analysis by extracting tweets by using Twitter REST APIs and comparing the data with Official Influenza Statistics R, EDA, Jupyter, Twitter API
2048 Game Solver AI - Wrote a 2048 Game Solver AI using Min-Max Algorithm and Alpha-Bet Pruning. Playing till 1024, Still trying to improve the cost function to reach 2048 and beyond. Feel free to suggest a better cost function:) Python, ML, Alpha-Beta Pruning.
Classi cation and Regression - Implemented Gaussian Discriminators, Linear Regression, Ridge Regression, Gradient Descent and Non Linear Regression. This was done as part of the academic project for the course Introduction to Machine Learning. Python, ML, Linear Regression, Gradient Descent, Ridge Regression, Gaussian.
Handwritten Digits Classification - Implement a Multi-Layer NeuralNetwork based Handwritten Digits Classifier. Python, ML, NeuralNetwork, Gradent Descent
Classification and Regression - Implement a binary Logistic Classfier and a Multi-Class Logistic Classifer. Python, ML, Logistic Classifier, Multi-Class Logistic Classifer, Gradent Descent

Skills

Languages: Go, Python, C, Java

Technologies: Linux, Git, Routing & Networking, NumPy, Android, GDB, Apache, Eclipse, Wireshark, Wordpress, Jupyter, Blockchain

Graduate Coursework

CSE 589 - Modern Networking Concepts
CSE 521 - Introduction to Operating Systems
CSE 548 - Analysis of Algorithms
CSE 542 - Software Engineering

CSE 586 - Distributed Systems
CSE 574 - Introduction to Machine Learning
CSE 587 - Data Intensive Computing
CSE 708 - Distributed Systems Seminar

CSE 622 - Advanced Computer Systems
CSE 704 - Independent Study on Distributed Systems with Dr. Ethan Blanton