About

I have a solid foundation in Computer Science from Drexel University, specializing in Game Programming and Development, and boasting over 14 years of personal programming experience. Along with my degree, I possess a strong background in mathematics, which has significantly contributed to my expertise and influenced my systematic approach to programming.

Previously, I have worked in various Software Engineering roles with one common responsibility of problem-solving (with the variety of problems often in different shapes and sizes). Through Drexel University's co-op program, I gained insight into the mechanisms of getting the work done well, not just getting it done. I also played several leadership roles through high school and my undergraduate studies.

  • Programming Team Lead and the Lead Programmer for Rushdown
  • Drexel Fencing Team Épée - Vice Captain
  • I was the project lead in several projects I was a part of at Drexel University found on my LinkedIn Profile

You can find a detailed description of my professional experience here.

  • What is my story so far?

  • I was born in New Delhi, India, in 1999. At 22, I have lived (spent at least three years) in 4 countries - India (1999 - 2007, 2015 - 2017), Singapore (2007 - 2010), United Arab Emirates (2010 - 2015), and the United States (2017 - Present) - which has provided me with a unique global experience.

    I completed my 9th and 10th grades (first and second year of high school) at Delhi Private School - Dubai. I transferred to Delhi Public School - Noida to finish my 11th and 12th grades (third and fourth year of high school). The different cultures, opportunities, and environments induced holistic growth, with traits such as adaptability, flexibility, and tenacity notably honed.

    Transferring schools from one country to the other never gets any easier. Despite the challenges, I put in the work to earn the A.J Drexel Scholarship which allowed me to attend Drexel University.

  • What got me into programming?

  • I learned programming in 6th grade, which revealed my affinity for it. Through 11th and 12th grade (junior and senior year of high school), I learned Turbo C++ as my first OOP language and SQL as my first DBMS language. I enjoy learning new concepts and ideas, leading me to make my first game project, Overlap (a 2D puzzle game with a development story best shared through word of mouth).

    My motivation came from my innate passion for solving problems and creating large systems to work together. Through the development of Overlap, I pushed myself to learn concepts outside the outlined syllabus and taught myself how to use the graphics library to visualize the elements of the game. Programming games is similar to designing large systems and ensuring they all interact with each other as intended. My excellent understanding of the basic OOP programming concepts and data structures allowed me to design, program, and optimize the project to a great extent.

  • Why did I choose to study what I did?

  • Having developed a passion for programming, I was motivated by my high school game development success to pursue a degree in computer science with a focus on game programming and development. Later, I decided to incorporate an artificial intelligence track into my studies, which required additional courses on top of the core curriculum for computer science majors. I completed my degree with almost two terms' worth of extra coursework in keeping with my drive for excellence.
    Out of interest in learning, I took classes in Mathematics, Open Data Research, Animation, Game Art and Programming, Photography, Philosophy, Psychology, and a few more. I excelled in my computer science classes, becoming a teaching assistant for CS281 (Systems Architecture) and CS375 (Web Development).

    Some of my favorite classes include (but are not limited to) - CS380 (Artificial Intelligence), CS383 (Machine Learning), CS260 (Data Structures), VRIM100 (Digital Tools for AR/VR), PHIL351 (Philosophy of Technology), and PHIL311 (Ethics and Information Technology).

  • What do I like outside of class?

  • Outside classes, I love traveling, photography (check out my Instagram), writing, working out, and playing sports. I played football (soccer) and tennis throughout my time in high school.

    At the start of Drexel, I challenged myself by learning fencing, a niche sport I've never done before, and became a part of the Drexel Fencing Club. Through hard work, dedication, and tenacity, I got 3rd at the BWCFC fencing championships consisting of 13 schools from the east coast. As a team, we secured the 2nd position for my weapon type, Epee. Beyond fencing, I'm also a member of Drexel Speaks (public speaking club) and the Drexel E-Sports and Gaming Association.

    At DPS Noida, I was part of the highly selective Photography Club, the Debate Club, and an active eSpice (Computer Club) member where I represented DPS Noida at multiple competitions.

    Between hackathons, game jams, and research projects, I've been able to explore my interests in a variety of fields with my developed skillset from 15 years of programming. One such project was the analysis of the US Census Demographics Data where I used Python and Pandas to highlight evidence of Redlining in the city. The result of this research highlighted a concentration of lower income & minority populations concentrated near industrial zones & traffic-heavy areas of Philadelphia.

Professional Experience

I have 3.5 years of professional experience spanning software development, data science, and game development, during which time I honed my skills in system design in an interdisciplinary fashion. I gained 1.5 years of sharpening professional experience through Drexel University's co-op program. In descending chronological order:

Quantitative Developer

Forefront Analytics
September 2022 - August 2024

  • Between developing data analysis tools and optimizing existing code, I created the company's first footstep for an ETL pipeline entirely on AWS. I also created data analysis tools to help portfolio managers make better-informed decisions. As has become a theme with rapidly updating software, my implementation of performance optimizations in the SQL database (such as a table overwritten three times by three separate processes! - the solution was to detangle the pipes and streamline the process) prevented catastrophic data loss in one of the company's primary data-sources.
  • I used technologies like Python, Pandas Python library, Numpy Python library, MATLAB, AWS, and MySQL
  • The highlight of my time at Forefront Analytics was the specific insights and information exchanged between the portfolio managers and me (the only one from a technical background at the firm). These discussions led to the development and improvement (firm-wide) of code standards and technologies, enabling the portfolio managers to execute ideas more freely.
  • I introduced the company to modern development tools and concepts such as Git (BitBucket) and Jira and leveraged existing tools for higher-quality code documentation. Given the unique nature of my role, responsibilities often included me wearing multiple hats analogous to the different stages of a product development team. For example, I designed an AWS ETL pipeline. I implemented it from the start to the production stage on Figma, which freed the hardware bottleneck of sourcing data for market data analysis by the investment team.
  • One of my projects was deploying a cryptocurrency validator. The project was cut due to a lack of available funding, though it bore fruit in the shape of adding to the company's profile as a FinTech. The technology behind this is exciting (at least) and revealing (as best) to me. Another example of wearing multiple hats was the responsibility of presenting this to prospective clients and answering specific technical and conceptual questions.

Game Developer and QA Co-op

GLIDE Labs
September 2020 - March 2021

  • I worked on the AR/VR phone game Pasithea. Paired with the Philadelphia Museum of Art, the player will explore the museum sections with interactive story-driven quests. My responsibilities were multifaceted (ranging from level design, game mechanic development, and engineering bug-fixes) when I joined the team because it was a small team. My duties involved QA on the existing code-base (successfully discovering and resolving critical bugs with the log-in functionality). My can-do attitude and detail-oriented approach to the assigned tasks enabled me to go above and beyond.
  • I used technologies like Unity3D, Python, Selenium WebDriver Python library, Photoshop, and ProCreate on iPad.
  • I was responsible for designing and developing the subsequent quarter of the game, considering the themes in the Philadelphia Museum of Art. I used the skills gained from my previous co-op at Glenmede to automate scraping images of exhibits that cycled within the museum. It enhanced our image dataset to improve our image-scanning feature. I also ideated, designed, and suggested a UI overhaul (received very positively by the project head) within the game. It would improve player immersion by thematically imposing the role of an explorer on the player (in line with the story's presentation).

Data Scientist Co-op

Glenmede
September 2019 - March 2020

  • I worked in the trading room with the Fixed Income team at Glenmede Investment Management. I created automated scripts to collect, organize, and format data collected through various means for the traders and cyclic meetings. Direct communication with the traders allowed me to analyze their needs and develop appropriate programming solutions.
  • I used technologies like Python, Pandas Python library, Numpy Python library, Selenium WebDriver Python library, AWS EC2, AWS Lambda, and AWS Quicksight.
  • With the software practice instilled from my CI/CD experience at my previous co-op at IndustrySafe, I improved the efficiency of a data extraction process from 24 hours to 3 hours. This process involved extracting data for 100,000 CUSIP data points from scraping websites. I used the concept of self-modifying code to expedite this process. I also created Python scripts to perform calculations and help traders make trades.
  • I developed different parts of the ETL (extraction, transformation, loading) pipeline using AWS EC2, AWS Serverless (Lambda), and AWS Quicksight. I created dashboards from the processed data, which the traders very positively received. I was responsible for developing scripts to pre-process over 45 million data points for loading into the AWS EC2 instance.

Software Developer and QA Co-op

IndustrySafe (now Vector Solutions)
September 2018 - March 2019

  • I worked on their primary OSHA web reporting service. The product allowed users to create, manage, and track different OSHA reports. It also had a hierarchical employee-manager structure within users with varying visibility of forms.
  • I used technologies like C#, HTML, and SQL.
  • The product was developed in an Agile development environment. I was responsible for fixing ticketed bugs (from clients) and discussing possible solutions for more significant issues. My fixes in SQL improved query times by 40%. I also created and executed test plans to perform QA and report problems to the team-wide task list.
  • In line with my nature to go above and beyond, I automated compiling weekly error reports through a C# script. I decreased the task time from 1 hour to a few seconds.

Game Projects

  • Rushdown

  • September 2021 to May 2022

    • Game Trailer

      Check out our game trailer!

    • Latest Build

      For latest build, please download SR_Showcase and run the executable.
    • GDD

      Game Design Document
    • Pipeline Document

      Development Pipeline Document
    • Game Presentation

      Senior Design presentation for Westphal College of Media Arts and Design
    • Technical Presentation

      Senior Design presentation for the College of Computing and Informatics

    Concept

    Upto 3 v 3 online multiplayer action platformer with advanced mobility options. With 3 characters with a thematic ability each, freeze-tag has never been this fun before.

    Role

    Programming Team Lead, Gameplay Programmer

    Technologies

    Unity Game Engine - 3D, C++, Maya, Perforce

    Responsibilities

    • Principle developer responsible for designing, developing, and integrating several features of the game
    • Lead development team through agile game development environment
    • Maintain Agile development throughout production
    • Organize CI/CD of features in the game
    • Communicate development requirements and progress to programming, design, art, and advising teams
    • Create and maintain GDD, Software Requirements Document, UMLs, architecture diagrams, and others
    • Navigate through roadblocks through development cycle
    • Assign tasks effectively every week with realistic targets
    • Design the player animation controller with complex blend trees and motion captured animations
    • Co-ordinate with art and design teams for efficient feature integration
    • Present programming team updates, requirements, and specification to interdisciplinary program directors
    • Develop and maintain good programming practices, documentation, and weekly progress
    • Conduct bi-weekly playtest sessions with survey for player feedback with statistical graphs
    • Design and implement solutions to game development roadblocks
    • Integrate newly developed features to create periodic builds of the game

    Features Implemented

    • Online Networking (Photon Unity Network)
    • Wall running, sliding, and other mobility options
    • Animation Controller (blend trees and state machine mix)
    • Game Rules (4 Rounds, points system like baseball, 60 second round time)
    • Sound FX
    • Moving Platforms
    • UI Function and Design
  • Momentum

  • April 2021 to September 2021

    Concept

    Hex grid strategy game with momentum-based soundtrack

    Role

    Gameplay Programmer and Enemy AI Designer/Programmer

    Technologies

    Unity Game Engine - 2D, GitHub, C#

    Responsibilities

    • Develop the hex-grid generation through self-created algorithm
    • Design enemy movement patterns, attack patterns, and implementation details
    • Implement enemy AI with 2 separate attack patterns: Ranged and Melee
    • Generate solutions for development pipeline issues (Source-control issues, integration issues, and other issues)
    • Design and implement Ice-Levels with level obstacles, puzzles, and strategic enemy placement
    • Perform quality assurance tests on integrated features
    • Procedural map generation
    • Implement player movement system
    • Design and implement enemy movement
    • Design and implement enemy attack patterns
    • Create enemy projectile ability
    • Maintain code-blog for progress through development
    • Develop project website
    • Sole creative director of story of game and dialogues
    • Develop and maintain good programming practices, documentation, and weekly progress
    • Integrate art assets and newly developed features

    Features Implemented

    • Hex-grid generation
    • Player movement
    • Enemy movement
    • Enemy melee attack pattern
    • Enemy ranged attack pattern
    • Dialogue system (QA)
    • Story and dialogues
    • Level design and integration
    • Art asset integration and testing
  • Escape The Lab

  • December 2020 - 1 week challenge

    Concept

    VR Puzzle Game with themed content

    Technologies

    Unreal Engine 4, C++

    Responsibilities

    • Level design
    • Puzzle design and implementation
    • Lever combination puzzle mechanics
    • Tackle VR Design Challenges
    Note: I used the default Unreal Engine first person controller to take screenshots of the level
  • Beat Masher

  • May 2020 - 1 week challenge

    Concept

    Rhythm jumping game with randomly generated obstacles

    Technologies

    Unity Game Engine, C#

    Responsibilities

      This is a solo project.
    • Procedural key prompt generation
    • VFX System
    • Score and Streak system
    • Synchronized visual feedback system
    • Synchronized key prompt with music in game
  • Overlap

  • January 2016 to December 2016

    Concept

    A box stacking game created from scratch in Turbo C++ using native graphic libraries

    Technologies

    Turbo C++

    Responsibilities

      This project is from 2015.
    • Stylized and animated loading visuals
    • Animated menu Screen
    • High score saving system
    • Score and streak system
    • Streak reward system
    • Memory optimization through data structures
    • Procedural difficulty modifier through speed variation
    Steps to run the game available on GitHub README.

Programming Projects

Under Construction


Deconstruction of Nier Automata - Plug-in Chips

October 2024

For my first blog post, I will be deconstructing the plug-in chips system in Nier Automata. We will be looking at the game mechanics, the design choices, and the implications of the system on the player experience. We will also be looking at the game design philosophy behind the plug-in chips system and how it affects the player experience.

Elements

Text

This is bold and this is strong. This is italic and this is emphasized. This is superscript text and this is subscript text. This is underlined and this is code: for (;;) { ... }. Finally, this is a link.


Heading Level 2

Heading Level 3

Heading Level 4

Heading Level 5
Heading Level 6

Blockquote

Fringilla nisl. Donec accumsan interdum nisi, quis tincidunt felis sagittis eget tempus euismod. Vestibulum ante ipsum primis in faucibus vestibulum. Blandit adipiscing eu felis iaculis volutpat ac adipiscing accumsan faucibus. Vestibulum ante ipsum primis in faucibus lorem ipsum dolor sit amet nullam adipiscing eu felis.

Preformatted

i = 0;

while (!deck.isInOrder()) {
print 'Iteration ' + i;
deck.shuffle();
i++;
}

print 'It took ' + i + ' iterations to sort the deck.';

Lists

Unordered

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Alternate

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Ordered

  1. Dolor pulvinar etiam.
  2. Etiam vel felis viverra.
  3. Felis enim feugiat.
  4. Dolor pulvinar etiam.
  5. Etiam vel felis lorem.
  6. Felis enim et feugiat.

Icons

Actions

Table

Default

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Alternate

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Buttons

  • Disabled
  • Disabled

Form