Hi! I'm
Brian Magnuson
A Computer Science Lifelong Learner

GitHubLinkedIn
Portrait of Brian Magnuson

About Me

Hi! My name is Brian, and I'm a recent computer science graduate at the University of Florida. I'm passionate about front-end software development and have done a few web projects using libraries such as Next.js and SvelteKit. Additionally, I have an interest in digital arts and sciences, and I'm pursuing game development as a side project. I find myself improving my programming and team skills in the classroom and student organizations while also exploring new technologies in my solo projects. I'm always looking for new opportunities to learn and grow as a developer. Come take a look at the things I've done!

Featured Projects

The user interface for Catanatron showing the game board.

Navigating the Multiverse: Catan Reinforcement Learning

PythonJavaScriptPyTorchReactAIGameFeatured

August 2024 - April 2025

A Catan reinforcement learning agent created as part of a team project sponsored by CAE at the University of Florida's Integrated Product and Process Design (IPPD) program. IPPD is a capstone program that allows students to work on real-world projects with industry sponsors. For our team, Tactica, we were tasked with creating a machine learning agent that demonstrates tactical decision-making. We chose the game Catan due to its popularity, randomness, and strategic depth. We used an existing simulation, Catanatron, to simulate the game and provide a training environment for our agent. The simulation also provides a GUI, allowing users to play against the agent. We had to modify the simulation to add a trading interface, allowing the agent to trade with other players. I was responsible for most modifications to the GUI. We also added commands for training and testing, allowing for quick iteration and testing of our agents. For our agent, we used a reinforcement learning approach with a Graph Neural Network (GNN) to model the game board. The agent would choose among the many possible actions based on the current game state. When we found that this strategy was not effective, we pivoted to an ensemble approach where our agent instead picked among a set of strategies rather than a set of actions, reducing our action space. Our final agent was able to win at a rate of 98.4% against 3 random-choice players (players that choose random actions) and 22.7% against 3 of Catanatron's best players. Through this, we were able to demonstrate the potential of our unique ensemble approach. This project would not have been possible without the help of my teammates: Max Banach, Andres Espinosa, Cody Flynn, Jason Li, Han Mach, and Cathy Quan. This project also would not have been possible without our coach, Dr. Jorg Peters, our sponsor, CAE, and the IPPD staff.

Read More
Code for a Niter program that prints "Hello, World!" and the number 42.

The Niter Programming Language and Compiler

C++LLVMConsoleFeatured

January 2024 - July 2024

A programming language designed to be Turing-complete, statically-typed, and fast. The language is compiled to LLVM Intermediate Representation, allowing for powerful optimizations and cross-platform compatibility. The language features a C-like syntax with support for functions, variables, loops, conditionals, and more. It also provides simple error messages for compilation errors. The compiler is written in C++ and operates in several stages: scanning, parsing, type-checking, and code generation. The language is still in development and has over 200 integration tests to ensure correctness and speed up development. It is named after the mineral form of potassium nitrate, a compound used in fertilizers and gunpowder, which reflects the language's power, versatility, lack of safety restrictions that nerf control.

Read More
Screenshot of the Society of Software Developers website home page.

Society of Software Developers Website

TypeScriptReactNext.jsWebFeatured

October 2023 - December 2023

A website for the Society of Software Developers at the University of Florida. The website is designed to be a place for members to learn about the club. It has a landing page to provide basic information about the club and where its meetings are held. The about page provides information about the club, its mission, and the club officers. The project was built with a team of about 5+ people utilizing agile software development practices. I was responsible for developing components such as the website's navbar and officer information cards on the about page.

Read More
Screenshot of the dashboard featuring a calendar and budget information.

Student Budget Tracker

TypeScriptAngularWebFeatured

January 2023 - April 2023

A web app that allows students to track their spending and budgeting. It was created as part of a project to practice full-stack web development. The front end uses Angular, and the back end is written in Go. The app also uses a MySQL database to store user data. The app features a log-in system to allow users to save their data, a transactions table to allow users to record their transactions, and a budget table to allow users to set budgets for different categories. The app then combines the data from the transactions and budget tables to display a calendar and progress information to help users stay on track with their budgets.

Read More
Screenshot of the blog section on the website's home page.

Open Source Club Website: Blog Page

JavaScriptEJSWebFeatured

October 2022 - March 2023

A website for the Open Source Club at the University of Florida. The website is designed to be a place for members to learn about the club and its events. It also serves as a place for members to share their experiences with open-source software and the club. I was responsible for styling and scripting the blog page to match the style of the rest of the website.

Read More
Screenshot of StackBlitz with code on the left and a rendered to-do list on the right

Intro to React Workshop

TypeScriptReactWebFeaturedTry It Yourself

February 2023 - March 2023

A to-do list app designed to help teach the basics of React. It was created for a workshop for the Society of Software Developers at the University of Florida. The workshop is divided into six parts, each with an interactive exercise. During each exercise, the presenter and viewers must fix a part of the app to make it function correctly. Instructions on how to fix the app are in the 'instructions.md' file at the root of the project. Viewers can choose to follow along with the workshop and fork the repository from StackBlitz if they fall behind, maximizing the time spent coding. The first version of this workshop was given in just under 75 minutes.

Read More
Screenshot featuring a search pane and a grid of several games

Game Sort: A Video Game Search Engine

TypeScriptReactWebFeatured

November 2022 - December 2022

A video game search engine that allows users to search for video games by title, genre, platform, and more. It was created as part of a team project to demonstrate how data structures and algorithms can be used to solve real-life problems. The app was created using React and TypeScript with Vite. Once users enter their search criteria, the app searches its database of over 100,000 games (scraped from IGDB and RAWG; see GitHub README) and calculates a 'match percentage' for every game. It then sorts the games by their match percentage based on the selected sorting algorithm (including JavaScript's built-in sort function whose implementation is based on the browser). The results are displayed to the user and each game can be clicked on to view more information about it. Although the app is open-source, the data is not included in the repository due to its size.

Read More
See all projects

Education

Bachelor of Science in Computer Science + Minor in Digital Arts and Sciences

University of Florida, Gainesville, FL

August 2021 - May 2025

  • Data Structures and Algorithms (C++)
  • Introduction to Computer Organization
  • Programming Language Concepts (Java)
  • Operating Systems
  • Human-Computer Interaction
  • Enterprise Software Engineering
  • Introduction to Machine Learning
  • Algorithm Abstraction and Design
  • Computer Network Fundamentals
  • Information and Database Systems

Associate of Arts in General Studies

Florida SouthWestern State College, Fort Myers, FL

August 2018 - April 2021

  • Calculus + Analytic Geometry 1 & 2
  • General Chemistry 1 & 2
  • General Physics 1 & 2

Certifications

AWS Certified Cloud Practitioner Badge

AWS Certified Cloud Practitioner

Amazon Web Services (AWS)

October 2025

  • Amazon Web Services
  • Cloud Computing
View Credential

Skills

Programming Languages

C/C++
Rust
C#
Java
Kotlin
Python
JavaScript
TypeScript
HTML/CSS
SQL

Libraries and Frameworks

React (JS)
Next.js (JS)
Angular (JS)
SvelteKit (JS)
LLVM (C++)
Tkinter (Python)
MatPlotLib (Python)
TensorFlow (Python)
Android (Kotlin)

Software and Tools

Git
Docker
Visual Studio Code
Firebase
Unity
Blender