Senior Embedded Software Engineer

Onsite/Hybrid/Remote /
Engineering - Software /
Onsite/Hybrid/Remote | Permanent | Full-time
Kernel is bringing neuro measurement mainstream. We have built the next generation non-invasive brain interface. From the photon through machine learning, we are a close-knit, full-stack team that thrives on pushing the limits. Join us on this epic journey as we strive to usher in a new era of understanding ourselves, each other and the future of our shared existence.

If you’ve previously launched embedded devices to the public and dare to dream big, Kernel can meet your ambitions. We’re looking for an experienced embedded software engineer who has brought hardware to the market. The embedded software team works closely with electrical engineers, neuroscientists, and customers throughout the company to deliver high quality features at a rapid pace. Successful applicants will take ownership of development, testing, and deployment of critical embedded systems.


    • Develop software in an embedded Linux environment
    • Work with hardware engineers to prototype, bring-up, and debug new embedded systems
    • Lead by example and create application-level programs and drivers for embedded hardware
    • Build and maintain a clean, concise, and modular codebase
    • Have a high ethic of software quality and a desire to accelerate software production by following best practices in unit testing and continuous integration


    • B.S., Computer Science, Computer Engineering, or Electrical Engineering
    • 5+ years of professional embedded software development experience
    • Proficient in C or C++
    • Willing to learn and develop in Rust
    • Strong knowledge of low level concepts like serial protocols (SPI, I2C), interrupts, and memory layouts.
    • Experience shipping high performance embedded applications
    • Comfortable building a well documented and maintainable codebase (familiar with proper version control, continuous integration pipelines, etc.)
    • Familiarity with common embedded problems such as networking, communication, security, and power management


    • You’ve created systems handling high-rate data or tight timing constraints and know how to get every last bit of performance out of hardware
    • You’ve built consumer products shipped with custom hardware devices and various peripherals
    • You’ve dug deep into the Linux kernel
    • You’ve designed systems using low power management
    • You’ve worked with high level communication interfaces like Wi-Fi and Bluetooth