Michael Profile Picture

Michael Masenheimer

COMP SCI '27 @ U OF ARIZONA.
MACHINE LEARNING RESEARCH.
COMP SCI AMBASSADOR.
MAKERSPACE TECHNICAL LEAD.

I'm an aspiring software engineer studying Computer Science, with experience in ML/AI research and client-based software development. I've worked on applications ranging from full-stack blog apps and chess engines to generative visual art and ML hardware-based physics research. My focus lies in full-stack engineering and machine learning.

GitHub

What I Bring to the Table

I have academic experience in data structures & algorithms, discrete math, calculus, and linear algebra along with project and research experience in Python, Java/SpringBoot, C++, Docker, and HTML/CSS. I approach projects with a collaborative and growth-centered mindset, recognizing that mistakes are opportunities for learning.

I also work at the University of Arizona’s student makerspace, where I support 50+ students weekly with makerspace certifications, technical questions, and building projects with our tech. This fall, I plan to lead coding and circuit workshops through the makerspace with Arduino and Raspberry Pi technologies. I also serve as a Computer Science Ambassador, a role that has strengthened my communication and collaboration skills. My goal is to make every student feel supported and encouraged in their CS journey.


Technologies

  • Java/SpringBoot
  • C++
  • Linux/Unix
  • Python
  • Docker
  • HTML/CSS
Another picture of Michael

Projects

These projects showcase my journey in computer science through coursework, research, and professional development. Each one includes a visual preview, and code repositories are accessible through the buttons. I’ll continue updating this section and my GitHub as projects progress.

MakerThread

First chill image

MakerThread

MakerThread is a blog-style social media app built in SpringBoot for college students to share and explore makerspace projects. By connecting ideas with technology, it allows users to create posts with tags and topics and browse a home page to discover others’ projects and inspiration.

Features a login system with Spring Security and JWT, PostgreSQL and Spring JPA for data management, and React/Tailwind for the frontend. Implements Maven and docker to assist with dependency management and containerization. Currently working on cloud deployment.

MakerThread Repository

Chess Engine with AI Bot

First chill image

Chess Engine with AI Bot

Classic chess engine supporting all move types and rules, with a variable difficulty opponent, implemented in Python. Features a move log and highlights, with board reset and move undo.

The AI opponent uses a NegaMax algorithm with alpha-beta pruning and adjustable search depth, enabling multi-move planning while reducing node evaluations by roughly 70%. Evaluation functions combine material and positional scoring, allowing the engine to assess around 1,000 moves per turn.

Chess Repository

Spotifly

First chill image

Spotifly

In this project, I worked in Java to enhance my skills in OOP, particularly polymorphism. Spotifly functions similarly to Spotify on the backend, but without the user interface.

I used encapsulation for security and inheritance to design a local user database within the Java file, incorporating features such as login with backend validation, playlist creation, and song playback.

Spotifly Repository

Markov Chain Algorithm

Second chill image

Markov Chain Algorithm

This program generates random text using a Markov algorithm based on an input text file.

It works by constructing a custom hash table mapping word prefixes to a list of words that generally follow the prefix based on the text. The program then uses this table to generate new, random sequences of words by selecting a prefix and appending random suffixes based on the stored relationships.

Markov Chain Repository

Automatic Hydroponic Garden

Chill image 3

Automatic Hydroponic Garden

During Spring 2025, I interned for the U of A makerspace, CATalyst Studios. Our intern cohort decided to make a hydroponic garden. I used a RaspberryPi and Python to automate the watering process.

I used a Pi5 along with relays, breakout boards, clock modules, lcd screens, and water level sensors to create a UI, displaying messages about the current status of the pump and to control the flow of water.

Read More!

Voxel.jp

Chill image 3

Voxel.jp

When I first started learning how to code, I discovered a JavaScript library called p5.js, which was designed for generative art. I learned basic geometric algorithms and pseudo JS syntax.

Each small p5 project I posted to an Instagram page called "voxel.jp" among smaller projects/ideas. Some examples include flow fields, oscillating spheres, and slime molds.

Voxel.jp

Huffman Tree Decoding Algorithm

Chill image 5

Huffman Binary Tree Decoder

This is an algorithm to reconstruct binary trees from preorder and inorder traversals, optomizing data processing through decoding variable-length codes.

I used a recursive-based solution to decode sequences of bits, leveraging depth-first traversal for efficient processing to output the tree's postorder traversal and the decoded sequence.

Huffman Repository

Get In Contact

I'm working to build a network of like-minded people who share a passion for software engineering and machine learning. Please don’t hesitate to reach out, I’d love to connect!