About
Computer Software Engineering graduate student at Arizona State University with 3.5 years of professional experience.

- Birthday: 29 March 1995
- City: Natick, MA
- Age: 26
- Degree: Masters
I'm a highly motivated and a passionate Software Developer. As a professional, I have mainly worked on Game Development in C++. However, I'm pretty comfortable and a quick learner when it comes to exploring new tools, technologies and programming languages. I like to play Chess, and I'm a strong Chess player. Besides, I also like to write blogs on Gaming. Feel free to reach me out for video game recommendations!
Skills
- Visual Studio
- Visual Studio Code
- Qt Creator
- Eclipse
- Perforce
- Git
- Windows
- Linux
- Docker
- Maven
- Ant
- Gradle
- .NET 5
- Qt
- Jersey (Java)
- Kafka (Java)
- Bootstrap
- Django
- AngularJS
- Anvil (Ubisoft)
- Snowdrop (Ubisoft)
- Dunia (Ubisoft)
- Unity Editor
Resume
Summary
Education
Masters in Computer Software Engineering
Jan 2021 - Dec 2022
Arizona State University, Tempe, AZ
GPA: 4.0/4.0
Currently pursuing the masters program, started in Spring 2021
Graduate Services AssistantWeb Application Programming and Security [Node.js, Java, Spring Boot, JavaScript] (SER 421, SER 422)
Software DeveloperWorked as Software Developer on a Biodesign project, Python/C++/Qt
Relevant Coursework:Advanced Data structures and algorithms, Software Design, Foundations of Software Engineering, Distributed database systems, Internet Enabled Embedded devices
Bachelor of Engineering, Computer Engineering
2014 - 2017
Pune Institute of Computer Technology, Pune, India
GPA: 9.30/10
Graduated with First Class and Distinction.
Relevant Coursework:Data Structures, Principles of Modern Compiler Design, Computer Networks, Cloud Computing, Operating Systems and Design, High Performance Computing, Object Oriented Programming, Design and Analysis of Algorithms
Professional Experience
Software Engineer
MathWorks Inc., Natick, MA
- MathWorks
- Engaged in the migration of backend API framework for Simulink.ConfigSet
- Added unit tests for the frontend and backend for Simulink in C++ and MATLAB
- Technologies used: C++, JavaScript, MATLAB, Simulink
Feb 2023 - Present
Software Engineering Intern
DataChat Inc. Madison, WI
- DataChat
- Rolled out a few major visualization beta features into production to improve chart loading performance
- Re-engineered the error boundary system in React.js to specify the details of a chart loading error
- Worked on maintenance of existing features in backend
- Added unit tests and snapshot tests in Cypress and Jest for chart visualization features
- Technologies used: Python, Javascript, React, Go, PostgreSQL
May 2022 - Dec 2022
Senior Software Engineer
Agiliad Technologies Pvt Ltd, Pune, IN
- ConneCT 3D Bag Scanner
- Worked on a High Speed CT scanning - Aviation security product, installed at 1200+ Airport security checkpoints.
- Participated in backend tasks in Java and MySQL which included data migration, and database partitioning across multiple nodes on the intranet which decreased the load by 5%
- Created a logging module in C++ to track UI actions, participated in code reviews, and system design documents for the features.
- Enhanced the existing UI system to match with the modern UI design trends, which resulted in a strong positive client feedbacks
- Technologies used: C++, Qt, QML, Linux, Java
July 2020 - Dec 2020
Programmer
Ubisoft Pune, IN
- Prince of Persia
- Worked as an AI Programmer, the core tasks were to implement, debug and maintain AI systems.
- These systems were part of Anvil Game Engine, which is known for its massive open world games. Also contributed to Combat AI modules which involved positioning and AI fighting systems.
- Some notable systems that I built
- A Fight States History System This system recorded all the combat moves a character/player has performed. This would then in turn was used for achievements system where it would trigger few achievements once certain move sequence was performed by player.
- Restriction Zones for NPC AI This feature was used so that the NPCs would patrol their associated restricted zones and if an enemy enters it, they would start fighting them. Also, once an enemy has left such zones, they would wait for the enemies to return for a specified timer, and would return to patrolling once the timer expired. This system also involved interaction with non-combat AI systems,
- Fight Achievements Tracking The main purpose of the system was to track all the combat specific events which would then used as a a means of statistics. This would give insight into what kinds of moves the player likes perform, at what location, and so on.
- AI fight targeting algorithm Built a Round robin algorithm to equally distribute enemies among different targets. e.g. if there are 2 targets and 10 enemies then each target would be assigned 5 enemies. This also takes into the account newly added or removed enemies and rebalances if needed. Apart from these tasks, I also worked on debugging issues in existing Combat AI / AI systems wherever required.
April 2019 - June 2020
- Starlink PC: Battle for Atlas
- The main tasks for the project were to port it on PC platform. The game runs on Snowdrop engine. The collaboration was with Ubisoft Toronto as a lead studio.
- I implemented following features
- Developed a system to have keyboard and mouse inputs working for Windows platforms.
- Ported UI screens so that they could work with Keyboard/Mouse Inputs. This required deliberate efforts so that these newly added input methods wouldn't interfere with Controller based inputs.
- Scaling UI screens/menus to fit different screen resolutions.
- Dynamic UI button prompt system where the button prompts would update based on the last used input device.
- My other duties included
- Leading newly hired junior programmers and training them.
- Debugging and Optimizing the gameplay systems.
- Reviewing and Collaborating with lead programmers at Ubisoft Pune and Ubisoft Toronto.
May 2018 - May 2019
Junior Programmer
Ubisoft Pune, IN
- Far Cry 5
- Collaborated with Ubisoft Montreal, Toronto & Kiev for AAA games, I worked with designers, artists & programmers during the collaboration. Worked on Arcade Player Progression system and Map Editor tool.
- Was awarded as a Best Performer for the August 2018 quarter, for taking Initiative in providing various design changes which were accepted by designers at Ubisoft Montreal during Far Cry 5 Development
- I developed following features on the project.
- Arcade Player Progression UI This screen appeared when a player finished a multiplayer match in Arcade. It showed the experience points gained by the player during the session, the current level and the next achieved level of the player, rewards earned on levelling up and current player badge.
- Level/Map Scripting Tool Port to Consoles The scripting tool lets map creators provide features to create custom missions in arcade along with map editing. This feature was initially developed for PC Map Editor Tool, then eventually planned for consoles as well. Following were the tasks for it.
- Adding UI menus for the tool.
- Adding Inputs for controllers.
- Integrating with the existing gameplay system of the tool which was available for PC Map editor tool.
- Debugging and polishing the implemented system.
July 2017 - April 2018
Awards & Achievements
- Ubilympics Chess champion, 2018 Won Ubilympics 2018 Chess tournament which was held at Ubisoft Pune, won all matches in the tournament.
- Best Performer, August 2018 For taking Initiative in providing various design changes which were accepted by designers at Ubisoft Montreal during Far Cry 5 Development.
- Advanced C++ Training, July 2020 Debugging techniques, C++17 Features, Template Meta-programming