Skills in Detail
A deeper look at the tools and disciplines I use across robotics, embedded systems, and applied software.
Python
- Automated multi‑channel sensor testing by interfacing with lab instruments (SCPI/pyvisa), producing repeatable test plans and reports.
- Developed internal tools at TRC to accelerate energy analysis workflows (data wrangling, Excel automation with openpyxl/xlwings).
- Wrote scripts for signal processing and feature extraction in risk‑aware navigation research (NumPy/SciPy/matplotlib).
C++
- Implemented embedded drivers and control loops for motor control, IMUs, and peripheral interfaces.
- ROS 2 nodes for perception and control using rclcpp, integrating with custom hardware over serial/CAN.
Java
- Built phone‑sensor driven control interfaces to stream accelerometer data to ROS robots via a webserver.
Docker & Linux
- Containerized tooling for simulation and CI; packaged ROS workspaces and supporting services.
- Maintain a Linux server hosting smart‑home scripts, media, storage, websites, and game servers.
ROS 1/2
- Custom ROS 2 packages to integrate sensors, motor controllers, and a 6‑DoF manipulator for the URC rover.
- Expanded SLAM, path planning, and obstacle avoidance; validated in Gazebo and on hardware.
VHDL
- Implemented an 8‑bit DES encryptor/decryptor on a Xilinx FPGA and built VGA/NES controller drivers.
PCB Design — Altium & KiCad
- Designed multiple boards at Strain Measurement Devices and for personal robotics projects.
- Focus on power integrity, routing for mixed‑signal designs, and robust connectors/packaging.
Embedded Development
- STM32 projects (display drivers, games, control loops) and ESP32 projects (IoT pasta robot, IR/MQTT automation).
- Developed drivers for sensors/actuators and structured firmware for maintainability.
Soldering — SMD/THT
- Hand‑assembled and reworked fine‑pitch components during PCB bring‑up and prototyping.
Systems Engineering & Project Management
- Led the Mars Rover team as President/PM, coordinating mechanical, electrical, and software workstreams.
- Defined interfaces, built test plans, and tracked performance toward competition milestones.
Hardware/Software Troubleshooting
- From oscilloscopes and logic analyzers to firmware logs and ROS topic introspection, I methodically isolate issues.
Mechanical CAD, Gazebo, Isaac Lab
- Collaborated closely with mechanical teammates; built simulation scenarios to validate autonomy behaviors.