amber@linux ~ $ whoami

Amber Hawker

Software Lead for UBC Okanagan Marine Robotics, IT Specialist at CMIT Solutions, and a Dean's Scholar at UBCO. I design software and systems that have to work the first time, hold up under review, and keep running long after the demo is over.

role:Software Engineerpronouns:she/herstanding:Dean's Scholargpa:90% avg

amber@linux ~ $ scroll

01

amber@linux ~ $ cat about.md

about.md — bash

I'm a software engineer working across autonomy, systems, and the infrastructure that holds them together. As Software Lead for UBC Okanagan Marine Robotics, I own the software for an autonomous underwater vehicle; as an IT Specialist at CMIT Solutions, I keep client systems and networks running in production.

Academically I'm a Dean's Scholar at UBC Okanagan carrying a 90% average, and I bring the same standard to engineering: code that survives review, systems that are tested before they're trusted, and documentation people can actually use.

# tl;dr high standards, dry humor, and a strong preference for fixing the cause over the symptom.

02

amber@linux ~ $ git log --oneline experience

ubc okanagan marine robotics — robosub auv — log

Software Lead() @ UBC Okanagan Marine Robotics — RoboSub AUV

Current
  • Lead the software for an autonomous underwater vehicle: perception, control, and the autonomy stack that ties them together.
  • Own the architecture and review the code, so the robot does what the mission planner says and not what the bug felt like doing.
  • Coordinate a student engineering team and ship a vehicle that has to work the first time, underwater, with no second take.
cmit solutions — kelowna-okanagan — log

IT Specialist() @ CMIT Solutions — Kelowna-Okanagan

Current
  • Keep client infrastructure running: systems, networks, and the inevitable fire that started before I arrived.
  • Diagnose problems quickly and fix them properly, because a workaround is just a future incident with a calendar invite.
  • Translate between what a system is actually doing and what a stakeholder thinks it should be doing.
03

amber@linux ~ $ bat stack.toml

stack.toml
# the stack, declared explicitly. no surprises in prod.

[infrastructure]
virtualization = ["Proxmox VE", "VM + LXC clusters"]
self_hosted = ["DNS", "reverse proxy", "media", "monitoring", "backups"]
reliability = ["HA", "automated backups", "actually-tested restores"]

[systems]
platform = ["Linux", "containers", "infrastructure-as-code"]
networking = ["VLANs", "firewalls", "routing"]
automation = ["shell", "IaC", "cron that I actually maintain"]

[engineering]
robotics = ["autonomy", "perception", "control systems"]
practice = ["code review", "testing", "documentation people read"]
bias = ["correctness > clever", "boring > fragile"]
04

amber@linux ~ $ cat education.json

education.json
{
  "institution": "University of British Columbia, Okanagan",
  "standing": "Dean's Scholar",
  "average": 90,  // percent. yes, really.
  "focus": ["software", "systems", "robotics"]
}
05

amber@linux ~ $ ./contact.sh

contact.sh — bash

# Got a hard problem, a flaky cluster, or a robot that won't cooperate? I'm reachable for engineering, infrastructure, and robotics work.

echo "reach out and I'll get back to you."

amber@linux ~ $ exit