Embedded Software Engineer (Junior)

ABOUT BIONAUT LABS

At Bionaut Labs, we have embarked on a unique voyage inside the human body.

We are developing miniature remote-controlled robots that can navigate through tissue and target key anatomic locations in the body, for therapeutic or diagnostic purposes.

Bionaut Labs is creating our software team and is looking for an early-career embedded-systems engineer.

This is an opportunity to create a game-changing medical system by using modern development practices and evolving a highly collaborative team environment.

RESPONSIBILITIES INCLUDE:

Develop the safety-critical Bionaut mission software

· Write software primarily in Rust, and incorporate libraries of C and C++ code

· Develop test-first (TDD) with strong unit and integration testing

· Team with verification engineers to develop automated verification tests

· Using functional programming and object-oriented approaches

· Identify and champion best-in-class tools and approaches

Be a part of creating a world-class development experience

· Work as a member of a collaborative development team, using Mob Programming.
(Prior Mob or Pair Programming experience not required)

· Be a positive team member, fostering an open and psychologically safe culture

· Incrementally improve team approaches using retrospectives and experiments

· Learn frequently in group and individual activities; teach and mentor others

Control Bionaut hardware

· Work “at the metal” creating device drivers and interacting with an RTOS

· Collaborate with algorithm researchers and convert the mathematical research code into reliable and efficient production code

· Utilize electronics analysis tools, including logic and network analyzers

Create a safe and reliable device

· Participate in risk analysis activities

· Learn and apply safe-by-design approaches

· Participate and improve regulatory facing efforts

QUALIFICATIONS

· Bachelor’s degree (or better) in Computer Science, Computer Engineering, or another applicable Engineering or Applied Sciences discipline.

· Zero to five years of related experience developing device software.

REQUIRED SKILLS

Languages

· C/C++ family languages

· Rust – willingness to learn; prior experience not required, but very nice to have

· Python – working knowledge needed

Development Approaches

· Functional Programming

· Object-Oriented Programming

Domain

· Embedded systems

Tools & Technologies

· Register level “at-the-metal” driver development, including A/D & D/A Converters, and Serial protocols (I2C, SPI, RS-232/485)

· Working with a Real Time Operating System (ThreadX, FreeRTOS, etc…)

· Embedded systems tooling, including some of: Logic analyzers, Network analyzers, Oscilloscope

NICE TO HAVE SKILLS

Languages

· Functional programming language, such as Clojure, Haskell, Elm, OCaml, F#, Scheme

Development Approaches

· Test-Driven Development

· Behavior Driven Development (BDD)

· Domain Driven Design (DDD)

· Pair-Programming and/or Mob Programming

· Extreme Programming

Domain

· High-reliability and/or fault-tolerant embedded systems

· Regulated environments, Medical preferred

Tools & Technologies

· Embedded/Real-Time Linux – nice to have

· PI and/or PID control, and Kalman filters

· Digital Signal Processing

· Continuous Integration/Continuous Delivery tools (Jenkins, Github Actions, etc)

· Real-time ethernet

· Other network technologies

· ARM M-series processors (STM32, etc…)

· Medical imaging technology (DICOM)

· Active Object concurrency model

Job Type: Full-time

Pay: $80,000.00
– $150,000.00 per year

Benefits:
401(k)
Dental insurance
Flexible schedule
Health insurance
Life insurance
Paid time off
Relocation assistance
Vision insurance
Schedule:
Monday to Friday
COVID-19 considerations:
We follow all health regulations for Covid19, and are operating as an essential business (medical device company)

Application Question(s):
What is your GPA in the most recent degree you completed?
Education:
Bachelor’s (Required)
Willingness to travel:
25% (Preferred)
Work Location: One location

Related Post