Alex Brown

Problem solver, software engineer, and student

About Me

I am a driven 2nd year Software Engineering student at UoA, with a keen interest in solving hard problems. I taught myself how to code in high school, and have loved it ever since. Recently I've been tinkering a lot with FPGAs and embedded hardware, but I love writing CPU emulators, planetary simulations, computer graphics code, musical experiments, and whatever else I can get my hands on.

Projects

  • Flappy Bird VHDL2024

    As a team of four, we created a complex FPGA-based "Flappy Bird"-inspired game written in VHDL for the DE0-CV development board, as part of the COMPSYS 305 course. Our final project utilised Pulse Density Modulation for audio output, Discrete Cosine Transform-encoded video playback (JPEG-inspired), and sprite rotation using per-pixel trigonometry and matrix multiplication. It plays Bad Apple!

    • VHDL
    • Git
    • Python
    • Team management
  • APSS-2 Kessler firmware2024

    As part of the APSS-2 team, I've been developing the firmware for the upcoming APSS-2 satellite. Primarily, I've been writing mission-specific C code for the satellite's on-board computer (OBC), which runs FreeRTOS on a Cortex-M7 microcontroller. As the satellite's development is a team effort, I've been working closely with the team, and spending a large amount of time testing and validating the firmware on the satellite's hardware.

    • C
    • FreeRTOS
    • Makefiles
    • Rust
    • Git
    • Team management
    • Jira
  • APSS Pico-SAT 20242024

    This was a fun diversion from my work at APSS - we designed and built small model "satellites" to launch at the NZ Rocketry Association's 2024 launch event. I designed the satellite's PCB in KiCAD, integrating an MSP430 microcontroller, and wrote the firmware in C++. The satellite recorded barometric telemetry data during its flight, reaching a peak height of 900 meters. The hardest part of the project was searching for the satellite after it landed in a field.

    • C++
    • PCB Design
    • Makefiles
    • Git
    • Team management
  • Portfolio site, Résumé2024

    You're looking at it! I built this site using Next.js, TypeScript, and Tailwind CSS. Most of my time spent on this project was spent on design, so hopefully it looks nice!

    • JavaScript, TypeScript
    • React
  • Various Game Jam games 2023 - 2024

    I've participated in several game jams hosted by the Game Developers Guild, as well as Kiwijam 2023 and 2024. I really enjoy the short-form structure of game jams, because it allows me to take risks and experiment with new ideas while working with friends. One of my titles, "ring_zero", was featured alongside 10 indie games, at the "Spark Game Arena Live" event. I usually work in Unity or Godot, though I try to wear many hats including writing GLSL shaders, creating sound effects, and drawing pixel art, depending on the strengths of each team. My games collectively have several thousand plays - give them a try!

    • C#
    • Godot
    • OpenGL
    • Git
    • Team management
  • WDCC x SESA Hackathon 2024 2024

    As a team of 6, we made a fun local multiplayer party game with 3 mobile clients and one TV "game display". Our game won the "Most Over-Engineered" award for the event. To synchronise state between the connected players, we used a WebSockets server implemented in C# to communicate between clients and the server. The result is a game where players can connect seamlessly and actions are reflected in real time. Both codebases were automatically built and deployed with Docker on commit using GitHub Actions, and reverse proxied behind NGINX.

    • C#
    • JavaScript, TypeScript
    • React
    • WebSockets
    • Git
    • Team management
  • Other?

    See my GitHub for more projects - there are lots of shorter projects and experiments that I haven't listed here.

    Designed and created with Next.js and Tailwind, with FontAwesome icons.
    © Alex Brown, 2025