Embedded Software Engineer

Tomorrow.ioGolden, CO
3dHybrid

About The Position

Tomorrow.io is hiring an Embedded Software Engineer to join our Space & Sensors team. In this role, you’ll design, develop, and maintain Linux-based embedded systems that power next-generation radar and remote-sensing technologies across space-borne and terrestrial platforms . Your mission will be to build reliable, maintainable embedded Linux platforms that enable Tomorrow.io’s electronic products to operate accurately and consistently in demanding real-world environments. You’ll collaborate closely with hardware, FPGA, systems, and application software engineers , translating sensing and space requirements into robust drivers, board support packages (BSPs), and production-ready platforms. This role offers strong opportunities for cross-functional growth — looking down the stack to understand how RTL and hardware interact with embedded software, and up the stack to support and enable application-layer systems. Please note that this position is a hybrid role, and the team collaborates in person twice weekly at our Golden, Colorado office.

Requirements

  • 3+ years of hands-on experience in embedded software development.
  • Strong experience developing Embedded Linux systems on custom hardware
  • Hands-on expertise in Linux kernel and user-space driver development
  • Proven experience creating and maintaining Board Support Packages (BSPs)
  • Deep familiarity with Yocto / OpenEmbedded , including build system customization.
  • Solid understanding of Linux internals , particularly on ARM-based embedded systems
  • Proficiency in C (primary) and C++
  • Experience with cross-compilation, build systems, and debugging tools , including gcc, gdb, cmake, strace, perf, valgrind, and QEMU.
  • Comfort working with Git , CI/CD workflows , and scripting/automation using Bash and Python
  • Exposure to FPGAs and HDLs (Verilog or VHDL) , or a strong interest in learning RTL concepts.
  • Collaborative, detail-oriented, and structured , with openness to feedback across disciplines

Responsibilities

  • Design, develop, and maintain Linux drivers , BSPs , and Yocto-based Linux distributions
  • Lead hardware bring-up , system integration, and low-level debugging on custom hardware platforms.
  • Collaborate with hardware, FPGA, and systems engineers to ensure cohesive end-to-end system behavior.
  • Support application-layer software teams by delivering stable, well-documented embedded platforms.
  • Debug and diagnose complex system issues using JTAG/SWD, logic analyzers, and Linux debugging tools
  • Contribute to cross-disciplinary discussions and continuous improvement of processes and products.

Benefits

  • Comprehensive health benefits
  • unlimited paid time off
  • Relocation assistance may be offered/available for certain roles.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service