Alex Steele

Alex Steele

Combined Honours in Computer Science and Physics

University of British Columbia

About

Hello! I’m Alex, a computer science and physics student at the University of British Columbia graduating in May 2024. My interests include embedded and low-level software development, reinforcement learning, and robotic motion control.

I’m currently working on my Honours Thesis with Michiel van de Panne. I’m also the lead teaching assistant for CPSC 110, UBC’s major-stream introductory computer science course, where I develop plagiarism detection algorithms and lead a team of TAs who work on infrastructure.

In my free time, I contribute to the UBC Rocket design team as a senior member of the avionics subteam, enjoy some light reading, and work on various side projects. I also help plan and volunteer at UBC’s annual Physics Olympics competition.

In the past, I’ve spent eight months as a crash safety software engineer intern at Tesla, four months as a numerical methods research assistant in UBC’s Numerical Linear Algebra Lab, and eight months as a satellite software engineer intern at Kepler Communications.

Interests
  • Embedded Software
  • Reinforcement Learning
  • Robotic Motion Control
Education
  • BSc in Computer Science and Physics, 2024

    University of British Columbia

Experience

 
 
 
 
 
Tesla
Software Engineer Intern
May 2023 – Present Palo Alto, California
  • Developed C firmware for communication over the vehicle’s controller area network, enabling full archival of crash data.
  • Independently discovered and patched allocation inefficiency in Rust simulation codebase, improving runtimes by 30%.
  • Optimized Rust data intake pipeline by hand-writing a parser, resulting in an 80% performance improvement.
  • Wrote Rust software-in-the-loop (SIL) models and integration tests for inter-chip SPI communication and snooping.
  • Ported internal hardware-in-the-loop (HIL) testing library to Linux and enabled firmware engineers to remotely execute tests using Python, C, Docker, and Jenkins.
 
 
 
 
 
Tesla
Software Engineer Intern
Sep 2022 – Dec 2022 Palo Alto, California
  • Designed and wrote SPI drivers to control the restraint control module’s (RCM) inertial measurement units (IMUs) in C.
  • Implemented numerical integral approximations for the RCM crash algorithm’s near-deploy calculations in C.
  • Created chip-level software-in-the-loop (SIL) models for the RCM’s onboard IMUs with extensive fault-injection capabilities in Rust and PyO3 and wrote SIL tests for drivers and crash algorithm using PyTest.
  • Reduced hardware-in-the-loop (HIL) test execution time from 5.5 hours to 2 minutes and enabled the addition of the HIL test suite to continuous integration (CI) by automating test running using Python and C.
 
 
 
 
 
UBC Department of Computer Science
Numerical Methods Research Assistant
May 2022 – Aug 2022 Vancouver, British Columbia
  • Created novel discretization technique for solving ill-conditioned instances of the Helmholtz equation in MATLAB.
  • Developed high-performance finite-element magnetohydrodynamic simulation software using C++ and Eigen.
  • Optimized the performance of simulations with millions of degrees of freedom using knowledge of vector calculus.
 
 
 
 
 
Kepler Communications
Software Engineer Intern
Jan 2021 – Aug 2021 Toronto, Ontario
  • Architected and created drivers and a multithreaded Python application for the display and keypad on Kepler’s next-generation modems.
  • Singlehandedly developed new remote software image deployment system capable of supporting the growing number of models in Kepler’s constellation of 19 satellites using Python and SQL.
 
 
 
 
 
University of British Columbia
Lead Undergraduate Teaching Assistant
Jan 2020 – Present Vancouver, British Columbia
  • Maintains Racket autograder server used by over 800 students to submit and receive feedback on over 1500 files daily.
  • Improves students’ engagement by providing personalized feedback using applications developed in Python and Bash.
  • Detected over 200 cases of academic misconduct by designing, implementing, and deploying novel code-similarity algorithm using Rust, Python, and TensorFlow.
  • Supervises three other teaching assistants who contribute to the course infrastructure and teaching materials.

Honours and Awards

Dorothy Gladys Studer Memorial Scholarship
Received “on the recommendation of the Department of Physics” for being “the student who [obtained] the highest standing in the third year courses in Honours physics and who is proceeding to the final year of the program.”
Science Scholar/Dean’s Honour List
Received for maintaining an average of 90% or higher in the 2019, 2020, 2021, and 2022 Winter Sessions at the University of British Columbia.
Dorothy Gladys Studer Memorial Scholarship
Received “on the recommendation of the Department of Physics” for being “the student who [obtained] the highest standing in the third year courses in Honours physics and who is proceeding to the final year of the program.”
Computer Science Scholarship
Received “on the recommendation of the Department of Computer Science, largely on the basis of academic standing.”
Trek Excellence Scholarship
Received in first, second, third, and fourth year for placing in the top 5% of students in my year and faculty.
Accenture Leadership Award
Received for “[achieving] high academic standing, [demonstrating] leadership, and [participating] actively in extra-curricular or volunteer activities.”