Projects & Experience

Independent Study

After taking courses in computer networking and computer security, I developed an interest and wanted to further explore network security research. In Spring 2022, I took initiative and set up an Independent Study researching the use of machine learning for networking and network security. Some of the topics I'm currently exploring in my Independent study are adversarial attacks against machine learning security models, the prevention of cyber attacks, and threat intelligence.

As part of the independent study, I learned how to use PyTorch to create a machine learning IDS model. I used an IDS dataset from the Canadian Institute of Cybersecurity. I implemented logistic regression and random forest, and found that random forest is much more accurate.

I also had to update Python code that used an old, deprecated version of PyTorch when I researched the DeepFool algorithm for computer vision.


CodePath

During Spring 2022, I took CodePath's Remote Cybersecurity Course. I gained valuable cybersecurity experience, and became familiar with Burp Suite, Kail Linux, SQLMap, and various attack strategies. At the end of the course, I received a completion certificate with an honors award for excellence in the course. View my certificate here.


Sensitron Semiconductor

During Summer 2021 I interned at Sensitron Semiconductor as a Computer Programming Intern. I worked with the IT team to implement a new Enterprise Resource Planning system, I implemented a new Work in Progress system for production using MySQL and Access databases and C#. I also helped the IT team modernize their networking system with security and expandability in mind to prevent network intrusions and allow for future growth.


TAing

For the Fall 2021, semester I was a TA for CSC 210: Web Programming. I helped the professor with grading assignments and exams, and I mentored students by hosting office hours, advising them on their cumulative final project, and explaining advanced topics during in-class assignments.

For the Fall 2020, semester I was a TA for CSC 214: Mobile Application Development. I helped the professor by grading homework and projects, and I helped students learn the complexities of Swift by hosting office hours and tutoring them on advanced topics.


Engineers without Borders, University of Rochester Chapter

After being elected in Fall 2021, I recently ended my term as the Vice President of the University of Rochester's Engineers Without Borders chapter in Spring 2022. As Vice President, I helped ensure projects stay on track, assisted project leads with planning and design, ran meetings, and I communicated with the national organization, EWB-USA, and university leadership regarding the state of our chapter. I also set up professional development opportunities for members.

Before I was Vice President I served as a project lead for the newly established Tanzania project. I managed a team of 15 people and developed several plans for providing water access to a community with no electricity. I also wrote project and grant applications for the national organization and communicated with contacts in several time zones.


2020 EWB-USA Hackathon

Summer 2020

I, along with a group of 4 members from Engineers Without Borders, University of Rochester Chapter, competed in EWB-USA's first-ever hackathon. We were given the topic of food security in the COVID-19 world, and we created an idea for an app that prevented food waste and helped solve food insecurity. You can look at our pitch deck here


Power Cube Object Detection

Fall 2017- Spring 2018

In my senior year of high school, I trained a machine learning model using TensorFlow for the FIRST Robotics team I was a part of. I was a 1-person team and I didn't even know what TensorFlow was before I started working, but I took the challenge simply because I thought it was fascinating and I'm always open to learning new things.

During the game, FIRST POWER UP, we used this model to locate game pieces - called "Power Cubes" - from across the game field.

We were then able to navigate to the game pieces, pick them up using a mechanism on the robot, and deposit them in the correct area - all autonomously.

Training that model was hard work. I had to take hundreds of pictures in various lighting conditions and annotate them. I had to work out numerous bugs and bottlenecks. I had to retrain the model several times. But in the end, being able to see the finished product made it all worth it.

After the model was trained, we ran into trouble with the hardware we were using for inferencing. Originally, we were using a Raspberry Pi 3, which was way too underpowered and could only do maybe 1 FPS. It was unusable, so we upgraded to an NVIDIA Jetson TX2 dev kit. It was an improvement, but we still ran into problems with speed. We were only able to do about 14 FPS at first, which was too low for comfort. After a lot of research and trial and error, I wrote a bit of python that split the inferencing between the CPU and the very powerful GPU. This worked wonders, and we were now able to do about 35-40 FPS.