Roshan Sharma

Roshan Sharma

Summary

Full Stack Developer with over 3 and half years of proven experience in Software Development using C#.NET and Java platform. Known for excellent troubleshooting skills—able to analyze code and engineer well-researched and responsive solutions. Strong problem-solving skills using Object-Oriented concepts, data structures and algorithms. Ability to work effectively independently as well as contribute as a team player.

Research Publications

Proving Logical Atomicity using Lock Invariants

Roshan Sharma, Shengyi Wang, Alexander Oey, Anastasiia Evdokimova, Lennart Beringer, William Mansky

arXiv:2304.13898 | April 2023

Research

Research on logical atomicity as a specification format for data structures in concurrent separation logic. Compared lock-invariant-based specifications with atomic lock specifications for fine-grained locking. Implemented proof technique in Verified Software Toolchain and applied to C implementations of lock-based concurrent data structures.

17 pages, 5 figures, presented at the First Workshop on Advances in Separation Logic. Published in Programming Languages (cs.PL) category.

View Paper →

Technical Skills

Programming Languages
JavaPythonTypeScript
Frameworks
ReactAngularSpring Boot
Tools & OS
GITIntelliJ IDEAAWSDocker
Paradigms
Agile/ScrumOOPSOLIDACIDDesign PatternsDependency InjectionClient/Server Model

Professional Experience

Software Development Engineer

Amazon

Seattle, WA, USA

Aug 2021 - Present

Design and implement large-scale distributed systems for Amazon Business e-Invoice solutions. Developed dynamic onboarding and customization pages for e-Invoice customers. Designed scalable microservice architecture in AWS (EC2, SQS, SNS, Lambda, ELB, Route53, DynamoDB). Expert in Java and React for full-stack development. Developed and maintained CI/CD pipelines and ECS services for global e-commerce projects.

Key Achievements:

  • Drove key projects to reduce P90 latency per request by 72% and heap usage by 29% per request.
  • Developed customer onboarding and customization pages for e-Invoice.
  • Designed scalable microservice architecture in AWS.
  • Maintained CI/CD pipelines and ECS services.

Technologies Used:

JavaReactSpring BootAWSCI/CDECSDynamoDB
Software Development Engineer

Dolphin Dive Technology

Kathmandu, Nepal (Remote for PensionPro, USA)

Nov 2016 - Aug 2019

Worked as a remote developer for PensionPro, rewriting desktop features for the web using AngularJS and ASP.NET Web API. Optimized REST APIs with OData and LINQ in EntityFramework. Implemented audit logs, designed relational databases, integrated third-party libraries, and created job runner services for invoicing and billing.

Key Achievements:

  • Optimized REST API latency by 20% using OData and LINQ.
  • Implemented audit logs and CRUD tracking in MongoDB.
  • Designed and optimized SQL Server databases and stored procedures.
  • Integrated third-party libraries (Telerik, Braintree, ZenDesk, SendGrid).
  • Troubleshot 200+ production bugs and conducted code reviews.

Technologies Used:

AngularJSASP.NET Web APIEntityFrameworkMongoDBSQL ServerC#LINQ

Relevant Projects

Taxi Ride Sharing

Java, MySQL | Spring 2021

Project Link

Devised a real-time ride-sharing algorithm that merges trip requests in under 5 seconds. Analyzed 1M NYC trip data, achieving 30% distance saving for 3 min waiting time. Team size: 3.

Browser Fingerprinting Detection

Python | Fall 2020

Project Link

Created ML-based (decision tree & linear regression) model to detect fingerprinting scripts in websites. Feature extraction from Alexa top 10k sites, 98.55% recall. Team size: 2.

Tiger Compiler Design

C | Spring 2020

Wrote a compiler for Tiger language supporting x86 assembly. Lexical analysis with Lex, parsing with Bison, AST construction, IR translation, register allocation, and instruction selection.

Education

Master of Science in Computer Science

University of Illinois at Chicago (UIC)

Aug 2019 - May 2021

Thesis: 'Formal Verification of Concurrent Binary Search Tree'. Relevant Courses: Distributed Systems, DBMS, Compiler Design, Machine Learning, Advanced Network Security.

Bachelor's Degree in Computer Engineering

Tribhuvan University, Kathmandu, NP

Nov 2012 - Nov 2016

Relevant Courses: Data Structures and Algorithms, Software Engineering, Object-Oriented Design.