‹ All jobs
Senior Firmware Engineer
<p>We are seeking an experienced Embedded Software Engineer to join our Platform team (folks looking after the spacecraft). The successful candidate will play a crucial role in supporting other disciplines by focusing on the embedded software aspects of our satellite systems. The Platform team interfaces directly with many engineering groups to conduct R&D, design, manufacturing, and operations activities, ultimately ensuring all current and future spacecraft systems satisfy their mission.</p>
<p>Ideal candidates will embrace the commercialization of nanosatellite systems and adapt to low-cost, fast-paced systems design, development, and implementation methodologies that set Spire apart from our competition. In this fast-paced environment, the design to launch cycle is measured in weeks and months, not years! </p>
<p> </p>
<p>What You'll Do as a Senior Firmware Engineer:</p>
<ul>
<li>Design, implement and test, deploy and maintain embedded firmware</li>
<li>Collaborate with other engineering functions on scoping, architecture and system design</li>
<li>Resolve on-orbit and on-ground issues related to embedded systems</li>
<li>Implement, optimize and maintain various serial protocols</li>
<li>Design and develop interface tools to improve abstraction between the embedded system and other satellite components</li>
<li>Debug and resolve complex embedded systems issues in a timely manner</li>
<li>Write and maintain technical documentation</li>
</ul>
<p> </p>
<p>Key Skills:</p>
<ul>
<li>Bachelor's degree in Computer Science, Electrical Engineering, or related field</li>
<li>Mastery of Embedded C programming language</li>
<li>Proficiency with scripting languages like Python and Bash</li>
<li>Extensive experience with real-time operating systems (RTOS), specifically FreeRTOS</li>
<li>Familiarity with serial protocols and implementations</li>
<li>Strong problem-solving skills, particularly in debugging embedded systems</li>
<li>Experience with version control systems (e.g., Git)</li>
<li>Experience developing on Linux (Ubuntu)</li>
<li>A base level of mathematical knowledge (engineering mathematic or similar)</li>
<li>Excellent communication and teamwork abilities</li>
</ul>
<p> </p>
<p>Preferred Skills:</p>
<ul>
<li>Experience with space systems or satellite technology</li>
<li>Familiarity working to coding standards and using static analysis tools</li>
<li>Experience writing Rust for resource constrained environments (embedded Linux)</li>
<li>Experience with embedded Linux</li>
<li>Knowledge of control systems and algorithms</li>
</ul>
<p> </p>
<p>Tools and Technologies:</p>
<ul>
<li>FreeRTOS for real-time operating system implementation</li>
<li>GNU ARM Embedded Toolchain for code compilation</li>
<li>GDB for debugging, complemented by extensive use of serial and/or CAN debugging</li>
<li>Experience with debugging techniques for systems without JTAG access, particularly for remote issue resolution</li>
<li>Familiarity with manual testing procedures for embedded interface code</li>
<li>Experience working with Arm Cortex Microcontrollers</li>
<li>Version control using Git</li>
</ul>
<p> </p>
<p>Spire operates a hybrid work model, and this position will require you to work a minimum of three days per week in the office.</p>
<p><span class="NormalTextRun CommentHighlightClicked SCXW152905918 BCX0">Access to US export-control