Joseph Shotts

I'm a 5th year GVSU Computer Engineering student dedicated to learning as much as possible. I created this website to showcase my skills and projects. I believe the best way to learn is by doing. The projects on this site were all created with no or very minimal (only for reference) use of chatbots.

My Skills


Coding

My core tools are C, Cpp, and Python development for UNIX, Windows, and embedded systems like STM32 or ESP32. I tend to use GCC/MSVC, GNU Make, and CMake with VS Code. I occasionally mess around with html, javascript, unity, CUDA, OpenCV, and other APIs/SDKs/languages.

CAD

I am a heavy OnShape user with experience in SolidWorks and navigating Windchill by PTC.

Design/Prototyping

I'm a big believer in the design thinking process and practicing empathy as I develop products. Core to this process is asking for input from others and prototyping quickly and cheaply using things like Arduino, Python, 3D Printing, and Laser Cutting.

Controls EGR

I'm comfortable with Rockwell PLC/HMIs/IO and FANUC robots. I've worked with a lot of different controls equipment during my 3 semesters of internship at JR Automation including some work with Keyence, Cognex, and IR vision systems.

Electrical EGR

During my time at GVSU I've worked with various tools including O-Scopes, Function Generators, Altium, FPGA/Vivado, and MATLAB Simulations.

I refuse to take things too seriously.

My Projects


Polargraph GCODE Plotter

I created a custom plotter from the ground up. I wrote Arduino firmware that controls the position of a pen using Gcode commands sent through a custom application built on windows. It sounds complicated, but it's designed to be easy to use and adapt.

Github

Human Pixelator

This project uses googles Mediapipe library. It can create a simple mask of a human, or an artistic pixelated version of a human. I set it up as an installation in the GVSU Tech Showcase running on a Linux machine.

Github

Jason the Robot

I created a few fun and unique demos for the DJI Robomaster EP Core python SDK. One demo responds to voice commands, another uses OpenCV to enable the robot to follow you around.

Github

Strandbeest

I've always been a huge fan of a project by Theo Jansen. Strandbeest He came up a really clever walking geometry using genetic algorithms. I created a version to be laser cut using the OnShape CAD software.

Electric Bike

I built this awhile using a kit and some custom designed parts. It used a 48v battery to achieve a max speed of 25 mph.

Python Synthesizer

This is an old partially finished project. I built a synth from the ground up using numpy and pyaudio (pyaudio is a simple audio stream api). It creates various waveforms with various tambre and harmonics. It also makes specific weird chords.

Optimized Basketball Hoop

Inspired by this project. I'm currently working on this project, I'm using a genetic algrotihm to optimze the hoop, instead of a monte carlo method.

Triathlete

I stay active and I'm a triathlete. I completed a 70 mile triathlon in 2022.

Volunteering

I've been on several community service trips with GVSU Alternative Breaks and I continue to volunteer in my free time.

I've spent a lot of time at these places...

Controls Engineering Internship

JR Automation | Summer 2024 - Present

Worked with lisenced engineers at a controls integration company on multiple large projects.

Company Website

Technology Showcase Team Lead

GVSU | Sep 22 - Nov 2025

Worked partime in an on campus makerspace. I helped faculty/students/staff use technology like 3D printers, Laser Cutters, and VR.

Makerspace Website

Bachelor of Science in Computer Engineering

Grand Valley State University | Expected Graduation: Summer 2027

I'm proud to be a laker and have learned so much from my university.

High School

Jenison MI | 2022

Great school system and glad to have grown up in West MI.