Sheet 00 / 05 · Drawing No. M-01 · Rev. 03 · Scale 1:1 · 2026-07-02
Portfolio · A personal drawing set

Michael Oates.

Software Developer Brisbane · QLD Built in Astro

I started out drafting buildings. Eight years at Pro Drafting & Design, first on the drawing board, then running IT and writing the software the team now depends on. Mostly Django and Python, some Flutter, all of it on Linux servers I manage myself.

01

General Notes About the work

N.01 N.02 N.03

The main thing I've built is a Django project-management and communications app for Pro Drafting & Design. I wrote it solo, and about 50 people across two firms use it daily for tracking projects, billable hours, and budgets.

Alongside the day job I'm finishing a Computer Science degree at UQ, graduating January 2027.

Outside of that, there's a card game on the App Store, and a Linux server at home that hosts this site.

02

Legend Materials & tooling

A Languages
  • Python
  • Dart
  • Java
B Web & Backend
  • Django
  • HTMX
  • PostgreSQL
  • REST APIs
  • Nginx
  • Docker
C Mobile
  • Flutter
  • iOS
  • Android
  • Firebase
D Infrastructure
  • Linux
  • VPS deployment
  • WireGuard
  • DNS
  • Reverse proxy
  • Git
E Platforms
  • macOS
  • Windows
  • Linux
  • Microsoft 365 admin
03

Details Selected projects

D-01
Status In production

Project Management & Communications Platform

~50 users · 2 firms

A project management and communications app for architecture and design firms. I built it on my own in Django, and around 50 people across two firms now use it every day for project tracking, team comms, billable hours, budgets, and PDF reports. Sign-in is passwordless (magic links via Resend, or Gmail OAuth), files are stored in Backblaze B2, and it runs in Docker behind Nginx.

Specification Django 6 · HTMX · PostgreSQL · Docker · Nginx · Backblaze B2
D-02
Status Daily use

CAD Workflow Automation

Internal tooling

Python tooling that sets up and switches between CAD packages and client configurations. None of this software was designed to talk to each other, so I wrote the layer that makes it behave. The drafting team uses it every day.

Specification Python · Windows
D-03
Status Shipped

Magic 10 to 1

App Store

A multiplayer card game for groups of 4 to 10. I built it in Flutter and published it myself on the App Store.

Specification Flutter · Dart · Firebase
D-04
Status Live · michaeloates.me

Self-hosted Linux Server

Personal infrastructure

The machine this site is served from. It also runs a few Django side projects, a Jellyfin media stack, and AdGuard Home for network-wide DNS filtering, all behind an Nginx reverse proxy. I look after the networking, DNS, TLS, and backups myself.

Specification Linux · Docker · Nginx · AdGuard Home · Jellyfin
04

Sections Work history

Pro Drafting & Design Brisbane, QLD Apr 2016 — Current
Jun 2018 ~7 yrs Current

IT Systems Officer

I design, build, and maintain the internal software the drafting team uses every day, mostly Python automations and Django web apps. I also run the internal Windows server that keeps a fully remote team working (WireGuard VPN, licence sharing, network shares), and do IT consulting for client firms covering Microsoft 365 administration, networking, and endpoint support.

Apr 2016 2 yrs Jun 2018

Draftsman

Produced detailed design plans for commercial building projects as part of a multidisciplinary team.

05

References Contact & education

Contact

Education

Current — Jan 2027
Bachelor of Science (Computer Science)
University of Queensland

Focus areas: software engineering, data science, and cloud infrastructure.

Jan 2012 — Dec 2013
Diploma of Building Design & Technology
Southbank Institute of Technology