Projects

This project was to create a version of the game Sorry! on Android devices. I worked in a team of 4 people. Two of them worked on the front-end development using Android Studio. The other two worked on backend development using springboot and SQL. I was one of the front-end developers, so I mostly worked on making screens and making them communicate with the server. We decided to add many features to make it more enticing and fun for new players. We added a shop, clans, live chat, and a leaderboard. I had a hand in most development parts, but my main contributions were the shop, account creation, and log-in.


I’ve learned many things through this project. I’ve become much more proficient at using SCRUM to maintain our pace and keep us focused on what needs to be done. I have also gotten a lot of experience using GIT to work efficiently in a team. This project has a lot of things that apply to the larger world. It is a full-fledged Android app that taught me much about app development. I am now comfortable working in Android Studio and can do anything I need to in it. I also worked a lot with Volley and Websockets, which are different ways to talk with the server. So I can send many different requests and am comfortable making a program talk to a server. Most of the logic and data is stored on the server to reduce the overhead on the phone.

This project involved constructing multiple versions of a MIPS processor using VHDL. I worked in a group with one other person. We each contributed different components to the processor. I would always do the top-level integration and testing to ensure proper construction and operation. The first iteration that we made was a single-cycle processor. I had to make an ALU and register file, as well as all of the sub-components that those require. I did most of the testing and debugging for this part and the future parts. The next iteration was a multi-cycle design that relied on the programmer to handle scheduling and avoid data or control hazards. The final version was a pipelined multi-cycle processor that included forwarding logic for data and control hazards to prevent stalls when possible.

This project taught me about a processor’s construction and how all components interact. I gained much in-depth knowledge about the individual components and their exact uses. I became very proficient at VHDL programming and reading waveforms in Questa to debug the operation of components. I gained a lot of intuition about the inner workings of processors and how everything operates. I learned to program in assembly, translate that assembly into binary, and feed that into the processor.

The purpose of this project was to build out a website with similar functionality to Expedia. I worked in a team of 5 to complete this project. We were given an existing project that implemented some of the functionality we wanted. The existing app used an odd combination of a local JSON server and a JSON server hosted on the internet. The first thing we had to do was set up a better back-end, and we chose to use Firebase. I took the lead on that part and created a Firebase app and began updating functions to use Firebase. Once that was mostly done I realized we needed a way to import all of the existing data into the app’s Firestore. I wrote a program to format and export all of the data from the local JSON server to the Firestore. After that we started working together to implement the other functionality required. This involved changing Javascript functions and HTML.

This project taught me a ton of useful new skills that are sure to be helpful in the future. This was my first time using something like Firebase. Throughout this project I had to utilize many of Firebase’s features and now know how to use it effectively. The Firebase deployment makes it trivial to get your website running and Firestore is a very easy to use database. It was also my first time using JavaScript and its different features to this degree in a project. I learned the basics of using NPM to download dependencies and run programs. I also learned the basics of coding in JavaScript and using React to create webpages. 

Scroll to Top