Portrait of William Hatcher

// embedded.systems.engineer //

William Hatcher

_

  • currently @ Imperial College London
  • London, UK
  • Queen's BASc '26 → Imperial MSc

Recent Computer Engineering graduate from Queen's University, now at Imperial College London. Building reliable systems that combine embedded hardware, scalable software, and real-world sensing.

scroll

// 01 // about

whoami

I'm a recent Computer Engineering graduate of Queen's University (GPA 3.97, Dean's List), focused on embedded systems, scalable software, and hardware–software integration. During my degree I built Zephyr RTOS sensing platforms on Nordic nRF52 microcontrollers at Queen's ePOWER lab, and previously interned at Geotab designing multi-threaded TCP/IP communication software and deploying a 26-station hardware-in-the-loop testing infrastructure for embedded telematics devices — and returned for a summer 2026 term building HIL infrastructure for Geotab's next-generation telematics device.

I'm now pursuing an MSc in Computing (Software Engineering) at Imperial College London, continuing to build systems that combine reliable software, embedded hardware, and real-world sensing. Alongside my degree I served as Co-President and Director of Competitive Esports at the Queen's Esports Association, leading operations for a 500+ member student organization.

0
cumulative GPA
0+
QEA members led

// 02 // experience

work.history

Geotab logo

Embedded Engineering Intern — Quality & Test Automation (Returning Term)

Geotab, Embedded Engineering — May 2026 — Aug 2026
  • Built the hardware-in-the-loop test topology for Geotab's next-generation telematics device end to end, the first rigs of their kind, from physical rig construction to Python framework support, and deployed 4 rigs of the new design used by multiple engineering teams.
  • Integrated and debugged custom interface PCBs bridging the devices under test and Raspberry Pi hosts over I²C (C++ gRPC services), isolating faults across hardware, firmware and host software.
  • Extended the Pytest smoke suites and GitLab CI/CD pipelines (YAML) to cover the new rigs, whose internal control logic differed substantially from the existing fleet.
  • Owned reliability of the HIL fleet as the go-to on-site engineer: monitored live failures, traced root causes and deployed fixes quickly.
  • Restructured pcapng / ASC (CAN) log capture in the Python test framework from a single shared folder into per-run, per-test directories, and reworked how CI collects and displays log artifacts, making every failure traceable to its exact capture.
  • Built an inventory tracking system for HIL rig components (spreadsheet backend with a web UI) with automated Gmail low-stock alerts, so rig builds never stall on parts.
  • Led a cohort of 6 new interns: ran their onboarding and integration into the team, assigned and tracked work for 3 of them, and handled their day-to-day blockers.
  • HIL
  • Python
  • I²C
  • GitLab CI/CD
  • Leadership
ePOWER lysimeter strawberry research platform

Undergraduate Research Assistant — Software Lead

Queen's University, ePOWER — Sept 2025 — Jan 2026
  • Built Zephyr RTOS firmware on Nordic nRF52 for a 9-sensor research lysimeter, scheduling periodic sampling and BLE telemetry through Zephyr work queues and kernel primitives.
  • Designed a modular sensor HAL abstracting I²C and SAADC inputs behind calibrated unit conversions, so new sensor types could be added without touching the scheduling layer.
  • Wrote a custom BLE GATT service for real-time telemetry — packed payloads, custom UUIDs, low-power periodic notifications.
  • Owned sensor bring-up and field debugging: protocol timing, I²C edge cases, and analog drift, to keep the platform reliable outdoors.
  • Zephyr RTOS
  • BLE
  • Embedded C
  • Sensor Fusion
Geotab hardware-in-the-loop test rack

Embedded Engineering Intern — Quality & Test Automation

Geotab, Embedded Engineering — May 2024 — Aug 2025
  • Designed a multi-threaded TCP/IP serial protocol in C and Python to bridge a Linux embedded host with concurrent test clients — POSIX threads, semaphores, and mutexes coordinating thread-safe data handoff.
  • Architected and deployed 26 HIL test stations (5 DUTs each, ~130 devices) that expanded test capacity 10×; each station fans out GPIO, CAN, ADC, and UART/serial through a Raspberry Pi.
  • Built Pytest smoke suites wired into CI/CD so regressions on any hardware bus surfaced continuously instead of in batched test runs.
  • Owned rig configuration end-to-end — hardware specs, IP reservations, capability flags — all version-controlled so a station's identity is reproducible.
  • HIL
  • Python
  • CI/CD
  • Embedded Linux
Teaching assistant in Queen's University engineering lab

Teaching Assistant

Queen's University, Engineering Department — 2023, 2025
  • Taught C from fundamentals through pointers and dynamic memory in weekly office hours and lab sessions.
  • Coached students through Linux OS labs — kernel modules, shell programming, pthreads producer/consumer synchronization, and /proc inspection.
  • Provided live debugging support on the gnarly stuff: stack memory, race conditions, x86-64 system calls.
  • C
  • Linux
  • Debugging
  • Teaching
Queen's Esports Association logo

Co-President & Director of Competitive Esports

Queen's Esports Association — April 2024 — May 2026
  • Led executive operations for a 500+ member organization, reporting to and negotiating with university administration.
  • Built and ran a 20-person leadership team — 10 Game Directors, 5 Marketing, 5 Community Coordinators.
  • Owned the $10K annual budget across competitions, equipment, and campaigns; secured external sponsor funding to extend it further.
  • Leadership
  • Budget Management
  • Events

// 03 // projects

build.log

Educational satellite (ESAT) platform
> 01

Educational Satellite (ESAT) Platform

Capstone Project · 2025 — 2026
  • Developed embedded firmware in C++ (Arduino framework) for a modular nanosatellite platform integrating OBC, ADCS, EPS, and RF communication subsystems.
  • Implemented wireless command and telemetry communication over 433 MHz RF, enabling remote monitoring and control between the satellite and ground station.
  • Integrated subsystem communication over I²C between flight computer and control subsystems, enabling coordinated telemetry collection and command execution.
  • Built a high-frequency telemetry pipeline to collect sensor and subsystem data for machine learning–based anomaly detection, modifying firmware timing and packet scheduling to increase dataset resolution.
  • Designed experiments and injected controlled faults into subsystem firmware to generate labelled datasets, then trained XGBoost models for anomaly detection on the resulting telemetry.
  • Performed board bring-up, firmware flashing, and debugging across multiple microcontroller platforms (STM32L4, MSP430) and satellite subsystems.
  • Embedded C++
  • Arduino
  • RF
  • I²C
  • ML
  • STM32
  • XGBoost
Illustration of a processor chip on a circuit board
> 02

32-bit RISC Processor (Mini SRC)

Digital Systems Engineering · Team of 3 · Jan — Apr 2026
  • Designed a 32-bit multi-cycle, single-bus RISC processor in Verilog with a 16-register file, HI/LO registers, 512-word memory, I/O ports and a hardwired finite-state-machine control unit (fetch, decode and up to six execute states).
  • Personally implemented the signed 32-bit non-restoring divider (quotient to LO, remainder to HI), the synchronous 512-word RAM, and the top-level CPU integration.
  • The ALU supports 13 operations, including a radix-4 Booth multiplier with bit-pair recoding that halves the partial products from 32 to 16.
  • Extended the ISA beyond the specification with immediate-operand shifts (SHRI, SHLI, SHRAI) and a hardware-managed stack (PUSH/POP using R14 as the stack pointer).
  • Built bottom-up with per-module testbenches and full regression across 32 instructions; ran the benchmark program at a CPI of 6.7 in cycle-accurate simulation (Icarus Verilog + GTKWave).
  • Verilog
  • Computer Architecture
  • RTL Design
  • Icarus Verilog
  • GTKWave
Autonomous PiCar-X taxi robot
> 03

Autonomous Taxi System

Embedded Robotics Project · Team of 2
  • Architected and implemented a finite-state machine (FSM) control system for autonomous navigation, handling lane following, stop/yield logic, and intersection maneuvers.
  • Developed real-time embedded control software on Raspberry Pi integrating line sensors and camera input for lane tracking and navigation decisions.
  • Implemented computer vision pipelines in OpenCV for lane detection and preprocessing of camera frames for traffic sign classification.
  • Integrated TensorFlow Lite CNN models accelerated with Coral Edge TPU for low-latency traffic sign classification within constrained embedded compute budgets, achieving near-real-time detection.
  • Implemented dataset preprocessing and augmentation (rotation, scaling, brightness variation) to improve model robustness to lighting and viewpoint variation.
  • Designed a modular robotics software architecture separating perception, decision logic, and control layers to support deterministic behavior and subsystem testing.
  • Raspberry Pi 4
  • PiCar-X
  • Python
  • OpenCV
  • TF Lite
  • Coral TPU
Illustration of images and text flowing into a shared embedding space
> 04

CLIP-Style Image–Text Retrieval

Computer Vision (Deep Learning) · Team of 2 · Fall 2025
  • Trained a ResNet50 image encoder (ImageNet-initialised) with a two-layer GELU projection head to map images into the embedding space of a frozen CLIP ViT-B/32 text encoder.
  • Optimised with InfoNCE contrastive loss over in-batch image–text similarity matrices on COCO 2014 image–caption pairs.
  • Improved generalisation with normalisation, dropout, EMA weights, cosine-annealed AdamW and image augmentation, lifting every Recall@K metric over the baseline.
  • Final results: image→text R@1 / R@5 / R@10 of 0.694 / 0.913 / 0.967; text→image R@10 of 0.933.
  • PyTorch
  • Hugging Face
  • Contrastive Learning
  • CLIP
  • COCO
Illustration of a neural network segmenting a city street scene
> 05

Lightweight Semantic Segmentation & Knowledge Distillation

Computer Vision (Deep Learning) · Team of 2 · Fall 2025
  • Built an 11.2M-parameter segmentation model: a ResNet18 encoder with dilated convolutions at output stride 16 and a lightweight multi-scale feature-fusion decoder.
  • Reached 0.483 validation mIoU on PASCAL VOC 2012 at about 1 ms per image, trained with mixed precision on a single 8 GB GPU.
  • Implemented response-based (KL divergence, T = 4) and feature-based (cosine similarity) distillation from an FCN-ResNet50 teacher, and benchmarked four configurations against the non-distilled baseline.
  • PyTorch
  • Semantic Segmentation
  • Knowledge Distillation
  • ResNet
Anti-theft package security system prototype
> 06

Anti-theft Package Security System

Queen's University, Engineering Department
  • Collaborated with a team to research, architect, and implement a smart anti-theft package security system utilizing Arduino microcontroller hardware and embedded C/C++ development.
  • Solely responsible for developing firmware to interface with multiple hardware components, including an ultrasonic distance sensor (HC-SR04) for proximity detection, RFID module (ISO/IEC 14443) for secure activation, and a Wi-Fi-enabled IP camera for remote visual monitoring using ESP8266/ESP32 modules and MQTT.
  • Integrated sensor data acquisition, interrupt-driven event handling, and real-time system control using I²C and SPI communication protocols on the Arduino platform.
  • Designed secure, low-latency wireless communication workflows for alert notifications and remote system access, leveraging TCP/IP stack over Wi-Fi.
  • Delivered a comprehensive technical presentation, earning a finish in the top 5% of the class cohort.
  • Arduino
  • Embedded C
  • IoT
  • MQTT
Interactive IV insertion simulator prototype
> 07

Interactive IV Insertion Simulator

Queen's University, Engineering Department
  • Collaborated in a multidisciplinary engineering team to design and develop a prototype medical task trainer focused on improving accessibility and user interactivity for clinical skills training.
  • Engineered an affordable, interactive IV insertion simulator by embedding force-sensitive pressure sensors within custom-molded silicone skin, enabling real-time detection of excessive insertion depth or force.
  • Programmed embedded firmware on Arduino Uno to interface with analog pressure sensors, streaming live data via serial communication to a MATLAB-based GUI.
  • Implemented real-time signal processing and data visualization in MATLAB, enabling dynamic feedback and quantitative performance metrics for nursing students during IV insertion training.
  • Presented technical design and implementation details to project sponsors, achieving 3rd place & a $1,500 prize in a competitive innovation challenge.
  • Arduino
  • MATLAB
  • Sensors
  • Signal Processing

// 04 // skills

tech.stack

> 01_languages

Languages

  • C
  • C++
  • Python
  • Java
  • VHDL
  • Verilog
  • Assembly (Nios II, x86-64)
  • Bash
> 02_devops

DevOps & Automation

  • Git
  • GitLab CI/CD
  • Docker
  • Ansible
  • Pytest
> 03_protocols

Communication Protocols

  • UART
  • CAN
  • I²C
  • SPI
  • TCP/IP
  • gRPC
> 04_debug

Debugging & Testing

  • JTAG
  • GDB
  • PCAN-USB
  • Serial Debugging
  • Icarus Verilog
  • GTKWave
> 05_embedded

Embedded Systems

  • Arduino (ARM)
  • Raspberry Pi (Linux)
  • FPGA
> 06_ml

Machine Learning

  • PyTorch
  • Hugging Face
  • XGBoost
  • TensorFlow Lite
  • OpenCV
  • Coral Edge TPU

// 05 // education

academic.history

Imperial College London

MSc Computing (Software Engineering) · Sept 2026 — Sept 2027 (expected)
London, UK
Modules: Advanced Computer Architecture, Machine Learning Systems & Hardware, Scalable Systems & Data, Scheduling & Resource Allocation, Software Engineering for Industry, Advanced Computer Security, Generative AI, Networked Systems, Software Engineering for Machine Learning Systems.

Queen's University

BASc — Computer Engineering · 2021 — 2026
GPA 3.97 · Dean's List 2021 — 2026
Kingston, ON, Canada
Notable courses: Digital Systems, Computer Architecture, Data Structures, Autonomous Robotics, Object Oriented Programming, Microprocessor Systems, Operating Systems, Algorithms, Safety Critical Software Engineering, Machine Learning, Computer Vision (Deep Learning).

Nanyang Technological University

Semester Abroad · January — May 2024
Singapore
Notable courses: Software Development, Database Systems, Computer Networks.

// 06 // contact

connect.sh