Summary
Neuralink is creating devices that enable a bi-directional interface with the brain, aiming to restore movement and sight. They are seeking a Firmware Engineer Intern to develop and optimize embedded software for robotic surgery applications, while collaborating with a team of engineers and medical professionals.
Responsibilities
- Developing and optimizing embedded software for robotic surgery applications
- Streamlining our codebase by refining and, when necessary, retiring legacy embedded software
- Rigorous testing and validation of software systems to meet the highest safety and reliability standards
- Participating in peer code reviews
- Writing drivers and applications to extend the functionality of our robotics
- Specifying hardware and software choices as we develop future hardware platforms
- Sharing your findings and progress with the team in a collaborative environment
Skills
- Demonstrated track record of success in a science or engineering field, evidenced by outstanding projects, innovations, or advanced problem-solving
- Proven experience in software development, preferably with exposure to embedded systems
- 2+ years of experience with embedded systems
- Proficient with common communication protocols (SPI, UART, I2C, etc.)
- Comfortable/working knowledge of more advanced protocols such as PCIe, MIPI CSI/DSI, USB, and 802.3
- Proficient in at least one embedded language such as C, C++, or Rust
- Proficient with embedded toolchains and workflow
- Experience building and bringing-up MCUs or FPGAs
- Experience with embedded stacks for ARM cores
- Experience developing on embedded Linux platforms
- Experience with embedded Linux kernel configuration and device tree setup
- Experience with kernel driver development
- Experience with ARM bootloaders
- Experience coding drivers for actuators and sensors
- Experience with high-speed data acquisition and processing
- Foundational understanding of MCU architectures and peripheral integration
- Solid knowledge in electrical engineering and DSP
- Ability to interpret electrical schematics and datasheets, along with proficiency in using lab equipment
Qualifications
Must Haves
- Demonstrated track record of success in a science or engineering field, evidenced by outstanding projects, innovations, or advanced problem-solving
- Proven experience in software development, preferably with exposure to embedded systems
Nice to Haves
- 2+ years of experience with embedded systems
- Proficient with common communication protocols (SPI, UART, I2C, etc.)
- Comfortable/working knowledge of more advanced protocols such as PCIe, MIPI CSI/DSI, USB, and 802.3
- Proficient in at least one embedded language such as C, C++, or Rust
- Proficient with embedded toolchains and workflow
- Experience building and bringing-up MCUs or FPGAs
- Experience with embedded stacks for ARM cores
- Experience developing on embedded Linux platforms
- Experience with embedded Linux kernel configuration and device tree setup
- Experience with kernel driver development
- Experience with ARM bootloaders
- Experience coding drivers for actuators and sensors
- Experience with high-speed data acquisition and processing
- Foundational understanding of MCU architectures and peripheral integration
- Solid knowledge in electrical engineering and DSP
- Ability to interpret electrical schematics and datasheets, along with proficiency in using lab equipment
Benefits
- An opportunity to change the world and work with some of the smartest and most talented experts from different fields
- Growth potential; we rapidly advance team members who have an outsized impact
- Excellent medical, dental, and vision insurance through a PPO plan
- Paid holidays
- Commuter benefits
- Meals provided
- Equity (RSUs) •\•Temporary Employees & Interns excluded•
- 401(k) plan •\•Interns initially excluded until they work 1,000 hours•
- Parental leave •\•Temporary Employees & Interns excluded•
- Flexible time off •\•Temporary Employees & Interns excluded•