MARS 2020 ROVER

 
mars rover.jpg

I’ve been working on the Mars 2020 rover for over 2 years now in a Software Engineer in Test role. The Mars 2020 rover is a follow-up mission to the Curiosity rover that was sent by JPL to Mars in 2012, containing new instruments (including one that will generate oxygen on Mars!). I code in mainly Python and Bash, although I do look through flight codes and unit tests in C. Overall I’ve authored at least 40,000 lines of code.

 
mars wheels.jpg
jpl-mission-control.jpg

DRIVE SYSTEM

I own the software testing code for the Drive embedded software module. This involved making the rover do donuts to cause it to complain, and also had me wrestle with the rover’s IMU simulation to cause all sorts of weird tilts and bad mechanism angles. I also own the testing software for the Battery Control Board and power distribution subsystems.

AUTOMATION

Most of my work also involves automating a lot of testing and commanding the rover in a way similar to what they would do in actual Mars operations. I help make testing easier by writing internal tools like automated setup scripts and scripts that make other scripts from Excel document inputs because you can never have too many scripts.