CV
Experience
- Hardened C code to improve security, stability, and maintainability in embedded systems
- Performed static code analysis using Coverity to identify and resolve issues such as memory leaks, buffer overflows, and null dereferencing
- Integrated static analysis tools into Jenkins CI pipelines for automated quality checks
- Used Polarion for documentation compliance
- Applied secure coding practices and ensured conformance with industry standards and best practices
- Developed comprehensive white-box tests for embedded engine control software, ensuring compliance with stringent aerospace requirements
- Automated test workflows using GDB scripting to configure environments, execute tests, and inspect memory state
- Designed and implemented middleware to convert CCSDS Encapsulation Packets into internal data formats, improving telemetry handling
- Used C++17, Boost ASIO, and modern CMake to build high-performance, testable components
- Collaborated in Agile teams to scope tasks, define sprint goals, and integrate deliverables with multi-team initiatives
- Contributed to documentation and internal tooling to support testability and maintainability of flight software
- Served as Lead Developer on projects and contracts utilizing several languages including C++, C, Julia, and Python
- Collaborated with multiple developers to create software architectures including diagram and requirement development
- Utilized various frameworks including RxCpp, Qt5, and an in-house developed framework for C++, and Vue.js for frontend projects
- Developed library for an embedded PetaLinux ARM platform with CMake and cross-compilation
- Utilized OpenGL in varying capacities including low level raw OpenGL and the Magnum Graphics Middleware
- Collaborated and supported experts in multiple disciplines including physicists, engineers, and human factors to produce and refine reliable and validated testing software
- Served as System Administrator for Linux workstation and cluster systems in secured areas
- Developed and implemented controls to meet the DISA STIG requirements* Ported scap-security-guide to Arch Linux
- Implemented controls on RHEL 8 systems
- Aided in the implementation and development of security policies
- Supported system administration for Linux Distros including Arch Linux, Fedora, CentOS 7/8, and RHEL 8 at 90% uptime
- Administered a CentOS 7 compute cluster using OpenHPC and Warewulf for node provisioning at 95% uptime
- Utilized Docker to setup Intranet Web Services for file share, source code management, as well as other services
- Developed containers for various software packages and legacy software with Singularity
- Created and managed a local Julia registry for in-house developed packages
- Utilized Ansible for configuration control of Linux systems
- Set up a CI system for building and testing software
- Developed a multi-threaded C++14 framework for Human in the Loop Testing
- Created a fork of GLFW for handling multiple X11 displays and multiple GPUs
- Utilized OpenGL 4.5 for rendering and image processing
- Built with the waf build system
- Created a utility for generating and launching Mitsuba rendering calls
- Utilized by engineers on HPC for launching a multitude of rendering jobs
- Collaborated on writing proposals and final reports for projects
- Ported legacy software to the Julia language
- Worked on embedded systems with NVIDIA Jetson TK1 using C/C++ and Python
- Developed library for interacting with LIDAR, IMUs, and cameras
- Developed a multi-task AVR embedded system using C and FreeRTOS
- Documented communication protocols over CAN, USB, and ZigBee
- Built an embedded display driver and worked with the lightweight IP and AMQP network stacks
- Created multi-threaded C++ applications using OpenGL
- Designed a custom video format and wrote image analysis algorithms
- Built unit tests with Google Test and automated image processing pipelines
- Developed DXF file rendering interfaces in VB.NET
- Refactored legacy code for maintainability and reuse
Skills
-
Programming Languages (Core)
C++, C, Bash, Julia, Python
-
Programming Languages (Additional)
Java, C#, Lua, JavaScript, Rust
-
Frameworks and Libraries
Magnum Graphics, OpenGL, Qt5, RxCpp, Vue.js
-
System Administration
Linux Compute Cluster, Linux Desktop, Linux Server, Ansible, Docker
-
DevOps and Tooling
Docker, Continuous Integration, Git, Ansible
-
Other Tools and Skills
Markdown, Microsoft Office Suite, LaTex, Jira, Kanban, Scrum, Agile
Education
Languages
- English — Native speaker
Interests
- Open Source — Linux, Software, Hardware
- Learning and Skill Development — New Programming Languages, New Technologies
- Roller Derby — Detroit Roller Derby
- Pets — Aurora (Dog), Noka (Cat), Willow (Cat)