I am a graduating Computer Science & Engineering student at University of California, Davis.
I am a passionate developer with experience working collaboratively in both research and leadership positions, and I am especially interested in the fields of system architecture, networking, and embedded systems/IoT.
I am looking to connect myself to jobs and opportunities where I can better myself and my abilities with real-world experience.
This website and the following projects were all created or co-created by me.
Thanks for visiting!
As an Undergraduate at UC Davis, I have had many opportunities to showcase my knowledge as a programmer. I've worked on many interesting projects, from coding a functional CPU in Verilog to creating a functional file system in C. Here are just a few highlights:
I co-created ReChorder for my Embedded Systems class, which was written in C on the TI CC3200 Launchpad.
It's a device that uses a microphone and an ADC to detect and record chords from instruments such as a piano and guitar, or even full songs.
Once it detects three chords using an FFT, it uses HookTheory's API to put song recommendations on an OLED display based on the chord progression it records.
The first of my major contributions to the project was shrinking down and reworking the CMSIS library to the bare essentials so as to fit on the TI Launchpad we were given to work with.
The second was setting up all of the REST API calls, successfully authenticating and sending a chord progression to HookTheory's servers and displaying the results.
ReChorder was chosen as one of the two best projects in our lab, guaranteeing us an A and making it a finalist for the class.
For my Databases class at UC Davis, I worked in a team to write an entire database from scratch using Python.
This database system was based on L-Store, which is a hybrid transactional-analytical system created by our professor.
It essentially works by arranging data into a linked list of PageRanges.
These have a fixed set of base pages, followed by linked tail pages containing updates to the base pages which are periodically merged.
The data in these PageRanges is addressed via hash, making it easy to read, update, delete, and even query large sections of the data.
My primary job was to organize the individual pages and translate them in and out of a binary file format.
I also contributed greatly towards implementing multi-threading in the database, as well as towards the presentation.
Our work on the project was commemorated twice, earning us extra credit and a high grade in the class.
For my final project in my Machine Learning class, my group and I trained several ML models to classify credit scores in Python.
The goal was to use features like income, outstanding debt, etc. to correctly classify scores as "Good", "Standard", and "Poor".
As it was a research project, we read papers on credit scoring via ML and performed exploratory analysis to determine which models to use in our experiment, and then compared our results to determine which one performed best.
My main contribution was conducting the preliminary research, making the slides, and presenting them to the class.
While our particular dataset wasn't the best, the pre-processing and exploratory analysis we performed proved our understanding and still earned us a high grade.
In my Human-Computer Interaction class, my team and I developed an app with the goal of helping people improve productivity in their day-to-day lives.
As this was a design class, we intensively followed a 5-step design process, learning how to Empathize, Define, Ideate, Prototype, and Test our product's ability to solve a problem.
I did most of background research into our problem statement, reading research papers and investigating other solutions that exist out there already.
My favorite part about this project was tying it back to my experience at work, doing proper research into layouts and color schemes with the goal of keeping the user energized yet focused.
I also designed our mascot, and did the final edits on our project paper and video below.
My final project in my Software Engineering class required us to build a Digital Logic Simulator (much like Logisim), implementing design patterns in Java and following typical software engineering practices like AGILE, user stories, and UML diagrams.
Our instructor not only encouraged but required us to use OpenAI's ChatGPT to help us on this project, with the catch being that more was expected of us than in previous years.
As there were just two of us, my partner and I shared much of the work on the project. My primary contribution included creating the logic gates from the ground-up, making them incredibly easy to build upon from a developer standpoint.
My partner and I easily scored an A on this project, and the skills I've taken away from this class have made me excited as to what the software industry has in store.
For my senior design class, I paired up with three other groupmates to work alongside EcoCAR, a competitive automotive engineering team at UC Davis.
While the needs of our client changed a few times, our main goals involved facilitating CAN-FD and ethernet communication across various components of the car using languages like Python and MATLAB Simulink.
This included commissioning and communicating with embedded devices from sensors to microcontrollers, as well as implementing proprietary cybersecurity protocols within the car.
This project has given me further experience with embedded controllers, as well as unexpected knowledge within the field of automotive engineering.
In addition, we have also become accustomed to working with clients, having frequent meetings, and the inevitable goalpost-moving, chains of command, and other aspects of modern industry.
Check out our poster below!
HackDavis is the largest collegiate hackathon in California, and I've participated every year during my time at UC Davis. While I tackled all of the following projects as a solo programmer, I worked alongside friends across different majors on all three to tackle interdisciplinary, research-filled problems.
An interactive map for learning from and navigating in the UC Davis Arboretum, with useful information about COVID-19, local wildlife, biodiversity, and more.
It was built in C# using Unity, as well as 3D-rendered data borrowed from Google Maps.
This project was made over the course of 36 hours for the UC Davis HackDavis2021 hackathon.
It won the Best Health Hack award for helping connect people with the outside world while coping with social distancing.
A revamp of UC Davis Campus Ready's Daily Symptom Survey badge system, intended to be less prone to tampered survey results.
It is a Python package with extensive documentation and examples designed to be simple yet developer friendly.
It was completed over the course of 24 hours and submitted as part of the HackDavis2022 hackathon.
It was further forwarded to and commemorated by the CampusReady program at UC Davis.
Built using the framework ReTool and a bit of SQL, Campus Connected was created to help bridge the connection between professors and students in the classroom.
We found that many students these days have trouble expressing their concerns, and at the same time TAs and professors are bombarded with disorganized emails and feedback.
By limiting the number of inputs and creating a user-friendly UI, Campus Connected allows professors to easily gain anonymous feedback and better understand and help their students.
It completed over the course of 24 hours and submitted as part of the HackDavis2023 hackathon.
In won in the Best Use of ReTool category.
Working with my senior design team, our goal for KibbleKeeper was to make a simple, affordable, and easily-configurable alternative to modern petfeeders.
When a pet with an NFC-enabled collar approaches the feeder, it will identify and look up that it's food schedule with our Kintone backend.
The feeder itself was built using a Raspberry Pi and multiple peripherals including LEDs, an RFID reader, and a motor, as well as plenty of cardboard and parts I designed and 3D-printed myself.
KibbleKeeper was completed over the course of 24 hours and submitted as part of the HackDavis2024 hackathon.
It won in the Best Use of Kintone category.
As a student assistant at the California Lighting Technology Center (CLTC), I've had the chance to collaborate on various research projects with the goals of standardization, building automation, and efficiency. The following are some projects I have been involved with, as well as my hand in them:
This project is a front-end JavaScript tool made for the CLTC to dissect, visualize, and compare chronological sensor data.
It takes a CSV file with time in the first column and labels for all subsequent columns.
Feel free to read the README on the repository page for more information.
It was developed by me for use with an experiment at Sonoma Clean Power's Advanced Energy Center (AEC) with the intention of analyzing and comparing sensor readings to determine net energy savings produced by an IoT-integrated Solatube.
Having worked closely with and taking input from engineers at the CLTC, it has been reworked several times to be able to handle multiple input/output formats.
Another project that I had a large hand in is the CLTC's integrated controls project at the Integrated Building Control System (IBCS) research project at the Barn.
This goal of this project is to tie together multiple standalone building subsystems – such as lighting and occupancy, windows, shading, HVAC, etc. – into a single integrated system to increase energy efficiency.
For example, our control scheme may open the shades when it is sunny and cold to let in more heat, or close the windows when the air handler is turned on.
As a fairly experienced programmer, I helped write a majority of the schemes used for the project.
These programs were written using Tridium Niagara's drag-and-drop IDE, and also required extensive knowledge of local networks and BACnet points.
Using experience gained from some of my previous projects, I also coded, compiled, signed, and imported my own CLTC-Uitl module to handle custom HTTP and MQTT API requests.
At time of writing I am working on a research project into more reliable and repeatable methods of IR occupancy sensor testing.
The current dominating procedure is the NEMA standard, which simply involves walking around in a grid with a clipboard and noting which squares are noticed by the sensor.
Our goal is to implement a more scientific and less tedious approach, likely with a heat-emitting mannequin on a robot.
I have been working with CLTC engineers and other student assistants to research a solution, and it's one of my tasks during the rest of my time at the CLTC to program the robot and data collection system.
Modding and game design has always been hobbies of mine, and are a big reason as to why I got into Computer Science as a field. Especially during the pandemic, creating servers and communities was a way for me to have fun with friends. While the following may not be professional projects, I believe they showcase my creativity and willingness to learn, even in my free time.
I started this project at the start of 2021, and have successfully developed it into a (mostly) functional multiplayer videogame.
Working on the entire project on my own in just my free time certainly slowed my progress, but it was exciting to learn about all of the important aspects that go into a finished product.
It was created within Unity using C#, and all of the assets were drawn and animated by me.
The multiplayer functionality especially showcases my knowledge of OOP and multi-threading techniques, allowing the server to successfully communicate with a client.
Unfortunately Unity MLAPI did not have support for WebGL when I created the project, but you can find the itch.io page below (the password is "boop"). Otherwise feel free to check out the old singleplayer demo.
While it sounds silly, creating mods and hosting servers for Minecraft have seriously taught me very useful skills involving networking/DNS, the Linux command line, and coding/compiling with Java that I still use to this day.
FrogCraft is a Minecraft Forge mod for 1.20 that I started working on just before Summer 2021, written of course in Java.
While far from finished, the final project is inspired by liminal spaces, eldritch horror, and of course, frogs.
As my passion project, I've done all of the coding, modeling, texturing, etc. to familiarize myself with modding techniques.
I've had a lot of fun with it, creating all of the textures myself and even composing a song for a music disc.