Embedded Software Engineer

Boston Engineering Corporation•Waltham, MA
•Onsite

About The Position

Boston Engineering is seeking an Embedded Software Engineer to develop software for robotics, autonomous systems, medical devices, defense technologies, and commercial products. This hands-on product development role involves building new products and solving novel technical challenges, often from early prototypes and architecture through integration, testing, and delivery of a working product. Projects vary in technology, scale, and application, offering experience across different platforms and architectures. The role is highly cross-disciplinary. The engineer will work with engineers from other disciplines, contribute to system-level decisions, work directly with custom hardware and prototypes, and address problems spanning software, electronics, and physical systems. Projects may involve autonomy, perception, SLAM, sensor fusion, and real-time control. The position is office-based in Waltham, Massachusetts, and reports to the Director of Software Engineering. Relocation assistance is not provided. The role is restricted to US persons because of access to export-controlled technology; proof of status is required before employment. Applicants must submit a writing sample for their application to be considered complete.

Requirements

  • Bachelor of Science in Computer Science, Electrical Engineering, Computer Engineering, Robotics, or a related field.
  • 3–5 years of professional embedded development experience.
  • Experience using Git and standard version control workflows.
  • Familiarity with build systems, dependency management, debugging tools, and modern software development practices.
  • Proven C and C++ fundamentals.
  • Experience with Python or another scripting language.
  • Understanding of embedded systems and how software interacts with hardware.
  • Knowledge of real-time software concepts, including tasks, interrupts, scheduling, synchronization, timing, and concurrency.
  • Working knowledge of common embedded communication interfaces and protocols.
  • Comfort working in Linux and command-line development environments.
  • Proficiency with standard software development tools and workflows.
  • Ability to read and interpret technical documentation, datasheets, software requirements, and interface specifications.
  • Excellent problem-solving and debugging skills.
  • Sound judgment in identifying edge cases, questioning assumptions, and raising technical concerns.
  • Demonstrated capacity to learn new technologies and apply them to unfamiliar engineering problems.
  • Strong written and verbal communication skills.
  • Eligible to obtain and maintain a security clearance.
  • US-person status, with proof required before employment, because the role involves access to export-controlled technology.
  • Submit a writing sample for the application to be considered complete.

Nice To Haves

  • Experience with Docker, containerized development environments, CI/CD pipelines, or automated build and test workflows.
  • Hands-on work with STM32, ARM-based MCUs/SoCs, ESP32, PIC32, or similar embedded platforms.
  • Knowledge of Zephyr, FreeRTOS, or another RTOS.
  • Familiarity with embedded Linux.
  • Exposure to ROS2.
  • Background in robotics, autonomous systems, UUVs, UAVs, or other uncrewed systems.
  • Proficiency using oscilloscopes, logic analyzers, multimeters, protocol analyzers, or other bench equipment.
  • Ability to read schematics and support board bring-up.
  • Development of device drivers or communication stacks.
  • Knowledge of networking and network debugging.
  • Exposure to navigation, localization, SLAM, perception, controls, or sensor fusion.
  • Experience with CI/CD, automated testing, or hardware-in-the-loop testing for embedded systems.
  • Personal, academic, or professional projects involving embedded systems, electronics, robots, or other technical projects.
  • Familiarity with safety-critical, mission-critical, or regulated product development.

Responsibilities

  • Develop embedded software and firmware in C and C++ for new and existing products.
  • Work with microcontrollers, embedded processors, RTOS-based systems, and embedded Linux platforms.
  • Integrate sensors, actuators, communication interfaces, and other hardware into embedded systems.
  • Build and debug interfaces such as I2C, SPI, UART, CAN, Ethernet, and GPIO.
  • Use Python and other tools for testing, automation, system integration, and development support.
  • Bring up and debug software on custom hardware and early prototypes.
  • Investigate issues across software and hardware using debuggers, logs, bench equipment, and other engineering tools.
  • Implement software from system and software requirements while identifying edge cases, unclear behavior, and technical risks.
  • Write automated tests and support repeatable build, test, and integration workflows.
  • Participate in code reviews, technical discussions, design reviews, and project planning.
  • Collaborate across engineering disciplines throughout product development.
  • Document software designs, interfaces, implementation decisions, and test results.

Benefits

  • Matching 401(k).
  • Full employee benefits plan.
  • Mentoring program, hands-on training, and access to experienced leaders for career development.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service