From 91ce9aa6c6b90ddcb2f43137d0008daebb3d4a09 Mon Sep 17 00:00:00 2001 From: Corwin Perren Date: Thu, 11 Dec 2025 15:29:53 -0800 Subject: [PATCH] Fixes for hardware test engineer page --- project-words.txt | 4 + .../spacex/hardware-test-engineer-i-ii.astro | 114 +++++++++++++----- 2 files changed, 89 insertions(+), 29 deletions(-) diff --git a/project-words.txt b/project-words.txt index a69b8f0..9b7cbc7 100644 --- a/project-words.txt +++ b/project-words.txt @@ -28,6 +28,7 @@ iceops ITAR Jetson KFSK +Labjack leconte Loctite luxon @@ -39,6 +40,7 @@ offroad Onshape OSSM OSURC +Passthroughs Perren Perren's Pixhawk @@ -50,6 +52,7 @@ SARL Shuttlebox sinnhuber sitemapindex +Smartsheet ssds Starlink steller @@ -62,5 +65,6 @@ Unstow uuidv vaapi vitest +Waterjet Zebrafish zscan diff --git a/src/pages/experience/spacex/hardware-test-engineer-i-ii.astro b/src/pages/experience/spacex/hardware-test-engineer-i-ii.astro index 28d2c89..af0d4a6 100644 --- a/src/pages/experience/spacex/hardware-test-engineer-i-ii.astro +++ b/src/pages/experience/spacex/hardware-test-engineer-i-ii.astro @@ -87,24 +87,26 @@ const categorizedSkills: categorySkills[] = [ { item: "MySQL" }, ], }, - { item: "DevOps", subItems: [{ item: "Ansible" }] }, + { + item: "DevOps", + subItems: [ + { item: "Docker" }, + { item: "Ansible" }, + { item: "Kubernetes" }, + ], + }, ], }, { item: "Methodologies", subItems: [{ item: "Test Driven Development" }, { item: "Agile" }], }, - - { - item: "Automation", - subItems: [{ item: "NI MAX/VISA" }, { item: "RESTful APIs" }], - }, { item: "Operating Systems", subItems: [ { item: "Linux", - subItems: [{ item: "Centos" }, { item: "Ubuntu" }, { item: "WSL" }], + subItems: [{ item: "Centos" }, { item: "Ubuntu" }], }, { item: "Microsoft Windows" }, ], @@ -132,6 +134,13 @@ const categorizedSkills: categorySkills[] = [ item: "Secrets", subItems: [{ item: "Bitwarden" }, { item: "Hashicorp Vault" }], }, + { + item: "Other", + subItems: [ + { item: "Microsoft Office Suite" }, + { item: "Smartsheet" }, + ], + }, ], }, ], @@ -142,14 +151,38 @@ const categorizedSkills: categorySkills[] = [ { item: "Schematic & PCB Design", subItems: [ - { item: "Altium Designer" }, - { item: "Mentor Graphics PADS" }, + { + item: "Software", + subItems: [ + { item: "Altium Designer" }, + { item: "Mentor Graphics PADS" }, + ], + }, + { + item: "PCB Features", + subItems: [ + { item: "Multi-layer (up to 16)" }, + { item: "Impedance Controlled Designs" }, + { item: "High Power Designs" }, + { item: "Power Simulation" }, + ], + }, + { + item: "Manufacturing", + subItems: [ + { item: "Gerber Export" }, + { item: "BOM Management" }, + { item: "Board-House Assembly" }, + { item: "In-House Assembly" }, + ], + }, ], }, { item: "Electrical Diagnostics", subItems: [ { item: "Multimeters" }, + { item: "Electronic Loads" }, { item: "Oscilloscopes" }, { item: "Logic Analyzers" }, { item: "LCR Meters" }, @@ -158,8 +191,21 @@ const categorizedSkills: categorySkills[] = [ { item: "Harnessing Fabrication", subItems: [ - { item: "DC Power & Signal" }, - { item: "Low Frequency RF (<1GHz)" }, + { item: "DC Low-Power & Signal" }, + { item: "DC High-Power" }, + { item: "Sub-Microwave RF" }, + { item: "Vacuum Rated Harnesses" }, + { item: "Vacuum Chamber Harness Passthroughs" }, + ], + }, + { + item: "Test Rack Equipment", + subItems: [ + { item: "Custom Fixture Design/Fabrication" }, + { item: "Single/Bi-Directional Power Supplies" }, + { item: "Electronic Loads" }, + { item: "NI Test Hardware" }, + { item: "Labjack" }, ], }, ], @@ -177,6 +223,16 @@ const categorizedSkills: categorySkills[] = [ { item: "FreeCAD" }, ], }, + { + item: "Fabrication", + subItems: [ + { item: "Laser Cutting" }, + { item: "3D Printing" }, + { item: "CNC" }, + { item: "Waterjet" }, + { item: "Hand Tools" }, + ], + }, ], }, { @@ -264,7 +320,7 @@ const categorizedSkills: categorySkills[] = [ When I say I took ownership of flight computer test systems, I mean - this in its entirety, and specifically a multi-disciplinary sense. I + this very literally, and specifically a multi-disciplinary sense. I handled high-level test rack designs, purchasing, test fixture enclosure design, test fixture PCB design, test fixture firmware development, test rack networking configuration, test rack server @@ -275,7 +331,7 @@ const categorizedSkills: categorySkills[] = [ production counterparts. This barely scratches the surface in reality, and doesn't include the countless nights on the production floor, personally running hundreds of boards through functional and - environment testing, slowly and consistently improving the quality, + environmental testing, slowly and consistently improving the quality, rate, and coverage of the tests. It also doesn't include the whole year where I was on-call 24/7 for a full week, every other week, triaging on-orbit alerts for flight computer, reviewing data, and @@ -283,8 +339,8 @@ const categorizedSkills: categorySkills[] = [ As time progressed, I began to burn out and requested transfer to a - different product. Flight computer was a particularly intense product - due to having little to no overlap with the rest of the satellite + different product. Flight computer was a particularly intense due to + having little-to-no overlap with the rest of the satellite sub-systems, and being doubly critical functionality-wise to satellite operation. I was given a new test system for power boards, but due to unfortunate timing, the new owner for flight computer changed @@ -368,15 +424,15 @@ const categorizedSkills: categorySkills[] = [ monorepo, my next push was to improve velocity and reliability by adding automated build, test, and deploy tasks for new development, staging, and production environments across them all. I did this by - combining a unified set of Makefile interfaces, and run via ansible - for pull requests and main branch merges. Application and server - monitoring was also added via tools such as Sentry and Grafana, - which were piped into OpsGenie so the infra team could be pinged - during outages. Backups were also made of production databases - during deployments, with restore tooling that could also be used for - emulating production data during staging, developments, and local - deploys. Overall, these changes greatly improved the speed at which - the team could develop, and helped ensure that what we were + combining a unified set of Makefile interfaces, with automated runs + via ansible from pull requests and main branch merges. Application + and server monitoring was also added via tools such as Sentry and + Grafana, which were piped into OpsGenie so the infra team could be + pinged during outages. Backups were also made of production + databases during deployments, with restore tooling that could be + used for emulating production data during staging, development, and + local deploys. Overall, these changes greatly improved the speed at + which the team could develop, and helped ensure that what we were deploying was validated as thoroughly as possible in advance. @@ -385,11 +441,11 @@ const categorizedSkills: categorySkills[] = [ was now living in northern Washington state and close to a two hour drive, each way, from the closest SpaceX facility. I therefore opted to quit after roughly six years with them in total. Considering the - average is two to three years, I'd say I did quite well, all things - considered, and am very proud of what I managed to achieve with the - company in that time! If you'd like to know more, feel free to - contact me, and I'm happy to share what I'm allowed! This summary - was ultimately just the tip of the iceberg. + average is two to three years, I'd say I did quite well, and am very + proud of what I managed to achieve with the company in that time! If + you'd like to know more, feel free to contact me, and I'm happy to + share what I'm allowed! This summary was ultimately just the tip of + the iceberg for an experience that made six years feel like twelve.