Hi, my name is

Naman Shrimali.

I build things for the web.

I'm a Full Stack Developer specializing in building (and occasionally designing) exceptional, high-quality websites and applications.

About Me

Hello! I'm Naman, a Full Stack Developer and part-time Research Assistant pursuing Master's in Computer Science at North Carolina State University.

I enjoy creating things that live on the internet, whether that be websites, applications, or anything in between. My goal is to always build products that provide pixel-perfect, performant experiences. For past few months, I've also been actively exploring areas of Machine Learning with advanced CNN and NLP architectures.

Before returning to academia for higher studies, I was associated with IBM India Private Limited for a span of 2 years where I worked on a wide variety of interesting and meaningful projects on a daily basis.

Here are a few technologies I've been working with recently:

  • Angular 10
  • React.js
  • Ruby on Rails
  • JavaScript (ES6+)
  • Java 11
  • Python 3
  • Docker
  • Node.js
  • Spring Reactive
  • Spring Boot
  • Spring Cloud
  • Spring Security
  • AWS
  • Azure

Where I've Worked

Research Assistant @ North Carolina State University

January 2022 - Present

Expertiza - Computer-Assisted Peer Assessment

Researching how peer assessments affect learning by employing Expertiza - an open-source peer learning platform.

  • Improved peer reviewing process by transitioning from Generalized to Role-Based Reviewing that provides skill specific evaluation metrics for assessment of collaborators as per their roles.
  • Lead contributor in migrating legacy code from Rails 2.3 to Rails 6, modernizing a 10y+ old system without affecting any functionality.
  • Increased total test code coverage by 30% by writing automated test cases using RSpec and Cucumber.
  • Identified and optimized process hindering logic by implementing optimal design patterns, resulting in 20% performance improvement.

Full Stack Developer @ IBM

June 2019 - July 2021

Albertsons Companies, Inc - Schedule and Save

Albertsons Companies is leading food and drug retailer that operates stores across 34 states with more than 20 well-known banners.

  • Developed and deployed “Schedule & Save” feature in production that lets shoppers set up automatic orders.
  • Built reusable front-end components on Angular 8 and backend microservices on Spring Reactive for asynchronous order transactions.
  • Ensured 90%+ coverage and fault tolerance by developing custom component and integration testing framework built on JUnit5, Mockito, MockWebServer and SonarQube.
  • Developed internal CI/CD Jenkins pipeline that integrated code build, unit testing, sonar scan, and application deployment over Azure. Virtual Machines in a single scan thereby reducing deployment time by 70%.
Westpac - Cards and Payments

Westpac is Australia’s oldest banking institution and financial services provider with more than 14 million customers.

  • Automated manual data collection and aggregation by dash boarding customer's verified income and expenses data using Spring Boot microservices and HBASE clusters to aid upfront customer background verification, resulting in 30% FTE reduction.
  • Designed and implemented automated error handling and retry mechanism on transient system failures, achieving 99.99% service availability and curbed the service error rate to less than 0.05%.
  • Achieved 13% reduction in Spring Boot service response time by introducing cache replication and persistence with EHCache and Redis.
  • Mentored three graduate hires on project.

Full Stack Engineer Intern @ Stackroute

June - November 2019

  • Built a pluggable help desk system using IBM Watson that decreased response time to the customer’s queries by 20% by generating automated response, routing customer to right agent for one-to-one chat and displaying relevant statistics on dashboards.
  • Developed several re-usable NPM packages using Angular 8, Redux, Chart.js for front-end components, Node.js and Express for backend services, unit tested with Karma tests. The packages went on to reduce development time for several key projects by 20%.

ML Intern @ Center for Development of Advanced Computing (CDAC)

Open-Source QnA Transformer-based Chatbot
  • Built a Chatbot with Transformers for generating answers to questions specific to PyTorch, employing two pretrained HuggingFace BERTs as encoders, FAISS for context matching and retrieval and pretrained BART as decoder.
  • Collected over 10k data points from official Pytorch documentation, forums, and video captions by building a web scrapper on Python.
Open-Source Object, Depth and Plane Detecting Python API
  • Combined 3 CNN architectures to build a REST service capable of detecting PPE objects such as masks, hardhat, vest, boots (YOLOv3), estimating monocular depth (Intel MiDaS) and plane segments (NVIDIA PlaneRCNN) from an image with a cumulative accuracy of 86%.

Somethings I've Developed

XRAG
Open-Source Transformer-based QnA Chatbot

Built a Chatbot with Transformers for generating answers to questions specific to PyTorch, employing two pretrained HuggingFace BERTs as encoders, FAISS for context matching and retrieval and pretrained BART as decoder.

DOEPD.AI
Open-Source Object, Depth and Plane Detecting Python API

Combined 3 CNN architectures to build a REST service capable of detecting PPE objects such as masks, hardhat, vest, boots (YOLOv3), estimating monocular depth (Intel MiDaS) and plane segments (NVIDIA PlaneRCNN) from an image with a cumulative accuracy of 86%.

Spryly
Project Management System

Spryly is a product management system, which will let you organize and collaborate more efficiently with your team, helping you focus on what's important, secured with OAuth2

Angular 9
Spring Cloud Microservices
NodeJS, RabbitMQ

Planage
Kanban Board

Planage is a Kanban Board Framework, designed to help you visualize your work, maximize efficiency and be agile by balancing demands, and by improving the handling of system-level bottlenecks secured with Google Authentication

Angular 8, Spring Boot

Logify
Employee Management System

Logify is an Employee Management System for a team, that helps stake holders in a team to log and maintain their work records with ease, secured with JWT Role Based Authentication

Angular 9, Spring Boot
MySQL, JPA

Words Notifier
Console Application

GRE Words Notifier is a simple java based application that uses Push Notifications to display word and it's meaning at a desired interval. This will help you memorize gre words regularly while doing your work

Java 11

Portfolio Website - v1
Website

First iteration of my portfolio website, hosted on GitHub Pages.

HTML5, Bootstrap
What's next ?

Get In Touch

I'm currently looking for 2022 Summer Internship Opportunities, and my inbox is always open. Whether you have a question or just want to say hi, I'll try my best to get back to you!