Senior Embedded Software Engineer

The Charles Stark Draper LaboratoryCambridge, MA

About The Position

The Embedded Software Engineer (SMTS) provides technical expertise and leadership for the development of complex, real-time embedded software applications in resource constrained computing environments. They contribute and collaborate as members of multidisciplinary teams throughout the mission-critical software lifecycle, from architecture conceptualization, requirements analysis, and software implementation through final evaluation and software release. Technical areas include the development of embedded software for imaging systems, device, process and vehicle controllers, and navigation and mapping systems. Application domains include undersea, terrestrial, air, hypersonics and space. This position works independently to perform job responsibilities.

Requirements

  • Excellent development and troubleshooting skills on embedded targets.
  • Experience with in-circuit emulators, JTAG debuggers and laboratory test equipment.
  • Excellent knowledge of OS coding techniques٫ IP protocols٫ interfaces and hardware subsystems.
  • Knowledge of development for real-time execution.
  • Excellent organizational skills and attention to detail.
  • Strong analytical and problem-solving skills.
  • Knowledge of software configuration management tools٫ defect tracking tools٫ and peer review processes.
  • Excellent time management skills with the proven ability to meet deadlines.
  • Excellent verbal and written communications skills.
  • Requires a Bachelor’s degree in Computer Science, Computer Engineering, or Electrical Engineering.
  • Requires 5-10 years experience with a Bachelor's degree or 3-6 years with a Master's degree in the development of embedded software or applicable experience.
  • Expertise in embedded systems, multi-core operating systems, modifying or writing kernel code, machine code, and C & C++.
  • The individual will learn or bring knowledge of multi-core processing, knowledge of scheduling, knowledge of RISC-V architecture.
  • Design and implement real time operating system, familiarity with processor low-level peripherals such as UART, SPI, DMA controller, memory controller and ability to absorb detail on processor and peripheral operation similar to complex commercial processors and microcontrollers.
  • Ability to debug and isolate HW issues from a SW/user perspective.

Nice To Haves

  • Working knowledge of RUST or C experience and strong desire to learn RUST.
  • Familiarity with RISC-V architecture is preferred as is Python experience.
  • Active Top Secret Clearance is preferred.

Responsibilities

  • Designs and implements embedded software architecture for equipment monitoring and control.
  • Evaluates embedded software/firmware/hardware and design.
  • Codes, debugs, and tests system software.
  • Collaborate with clients and conceive programs based on client specifications and needs.
  • Drive solutions to complex problems with limited direction – contribute to requirements development and architecture solution ideation.
  • Ability to take responsibility for subset of engineering scope.
  • Identify program/system-level technical risks and develop and execute mitigation strategies.
  • Actively mentor less experienced engineers
  • Performs other duties as assigned.

Benefits

  • Our work is very important to us, but so is our life outside of work.
  • Draper supports many programs to improve work-life balance including workplace flexibility, employee clubs ranging from photography to yoga, health and finance workshops, off site social events and discounts to local museums and cultural activities.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service