Aditya Sinha

University of Illinois at Chicago · (224) 400-5066 · asinha25@uic.edu

Experience

Teaching Assistant

University of Illinois at Chicago

  • Mentored and advised students regarding their current and future coursework and monitored individual progress.
  • Assisted the professor in tracking attendance, grading projects, and setting up equipment to prepare for lecture.
  • August 2017 - December 2017

    IT Administrator / Accounting Assistant

    Jalaram Accounting Inc.

  • Responsible for maintaining the server, workstations, network and other systems.
  • Updated databases, software, and maintained daily backups for all workstations.
  • Processed weekly and monthly payrolls, summary spreadsheets, liability checks, sales tax, and bank reconcilations.
  • March 2013 - December 2015

    Education

    University of Illinois at Chicago

    Bachelor of Science
    Computer Science

    GPA: 3.00

    January 2016 - May 2018

    William Rainey Harper College

    Transfer Program

    GPA: 3.40

    August 2013 - December 2015

    Skills

    Programming Languages
    Markup / Libraries
    Tools / IDEs
    OS
    Other

    Projects
    Click on the icons to view on Github

    CTA Ridership Analysis  

  • Analyzed a SQL Server database of CTA data to display the stations, stops, and ridership data.
  • Used ADO.NET via C# to execute SQL queries and display the results.
  • Further optimized by separating the database from the user interface to reflect a real-world, datadriven application.
  • Network Chat  

  • Created a set of GUI based programs in Java swing that allow multiple people to connect and send messages to one another.
  • Used socket programming in Java to implement the client/server model.
  • Messages were encrypted and decrypted using RSA and were blocked to optimize runtime.
  • Home-Brew Web Server  

  • Built a simple, multi-threaded web server using network and socket programming in C.
  • Returned the proper HTTP content-type headers and handled files with html, txt, jpeg, gif, png, and pdf extensions.
  • Used wget/curl to retrieve and serve exact copies of files and used md5sum to ensure files were exact replicas of the original
  • Sudoku Solver  

  • Developed a Sudoku puzzle using object-oriented programming in Java.
  • Implemented single, hidden pairs, locked candidate and naked pair algorithms that helped the user solve the puzzle.
  • Used Java/Swing to create the graphical user interface and let the users add their own puzzles.
  • WAR: Card Game  

  • Programmed a cross-platform implementation of the “war” card game server in Python.
  • Handled multiple games simultaneously using one thread and stress tested for multiple clients playing at varying speeds.
  • Both client and server side reflected a simple implementation of a stateful network protocol.
  • Smart Parking Lot  

  • Created an Arduino based parking lot that guides the users to the nearest empty parking space using a series of LEDs.
  • Logged the number of cars entering the parking lot and updated a LED display when the lot was full.
  • Included infrared sensors to alert the user when the car is too close to the boundary wall of the lot.
  • Battleship  

  • Created a socket based two player version of the game Battleship.
  • Used Java Swing libraries to create the graphical user interface for each player.
  • Ensured that the same program can run for both the client and the server.
  • Barebones HTTP/1.1 Client  

  • Created a barebones web client in python including a basic http client module.
  • Correctly interpreted chunks by using encoding and ensured persistent connections.
  • Handled domains that are longer, contain an image, result in a 404, NXDOMAIN, and contain chunked encoding.
  • Shell  

  • Created a shell in C that uses system calls and creates child processes.
  • Handled signal processing that allowed the user to interrupt processes or terminate the running program.
  • Added support for basic I/O redirection that redirects outputs to overwrite, append, and read input from filename.
  • Spotify Playlist Generator  

  • Created a web application using HTML, Javascript, and ES6 that outputs a playlist based on artists provided by the user.
  • Used the Spotify API and made AJAX calls to retrieve artist, tracks, and popularity data.
  • Reliable Communication  

  • Implemented reliable communication over an unreliable link, such as TCP.
  • Tracked timeouts and acknowledgements to ensure no packets were lost during transmission under the given bandwidth constraint.
  • Stress tested the program under different loss rates and latencies to lower round-trip time and increase throughput.
  • Garbage Collector  

  • Built a basic, conservative garbage collector for C programs.
  • Used a basic mark and sweep algorithm to free all garbage and leave other chunks intact.
  • Optimized runtime performance so that the program finishes within two seconds.
  • Used wget/curl to retrieve and serve exact copies of files and used md5sum to ensure files were exact replicas of the original.
  • Exam Analysis in F#  

  • Wrote the back-end F# library to a GUI app that reads exam scores and performs simple analysis – such as average, min, max.
  • Included a histogram and trend to further analyze the data and provide additional insight.
  • Scrolling Game  

  • Created a simple scrolling game using HTML and Javascript.
  • Player can move up, down, left, or right to avoid the obstacles and choose between mouse and keyboard input.
  • Added counters for health and points to enable the user to keep track of lives and overall score.
  • Scrabble  

  • Wrote the back-end in F# to a GUI app that takes a collection of letters and generates all possible words.
  • Displayed the score of each word based on the value of each letter, and generated all possible words based on given patterns.
  • MySet Class  

  • Developed a class in C++ that operates like the built-in set container.
  • Supports operations such as default constructor, copy constructor, and destructor.
  • Developed a set of unit tests to test the implementation of the created class.
  • Resume


    Current

    CS 424

    Data Visualization and Visual Analytics

    View Page  

    CS 422

    User Interface Design and Programming

    Coming Soon