Embedded Software Engineer II

Johnson ControlsWestford, MA
Hybrid

About The Position

Johnson Controls is searching for an Embedded Software Engineer II to join our engineering team. This role is ideal for early-career engineers who are passionate about developing software for embedded systems and enjoy solving technical challenges at the intersection of hardware and software. The successful candidate will contribute to the design, development, testing, and maintenance of embedded software for products and platforms. Working closely with senior engineers, systems engineers, hardware designers, and quality teams, you will help deliver reliable, high-quality solutions throughout the product lifecycle. Our global Fire Detection product group located in Westford, MA, offers you the possibility to interact with other development centers and teams around the world! The opportunity for professional development and career opportunities are endless, given our broad portfolio of products and services within Fire Detection. Work/life balance is important to us, and we offer a flexible hybrid work model. You will also get exposure to leading edge technology, exciting projects, and life-saving products that promote global safety of not only facilities, but people. We need your talent and ideas, as we continue to grow and expand our strategic focus and build state of the art fire detection systems.

Requirements

  • Bachelor's degree in Computer Engineering, Electrical Engineering, Computer Science, or a related field.
  • 0–3 years of experience in embedded software development (including product development, internships, co-ops, or academic projects).
  • Experience programming in C and/or C++.
  • Experience with embedded Linux, RTOS, or bare-metal development environments.
  • Understanding of embedded systems fundamentals.
  • Basic knowledge of software debugging and troubleshooting techniques.
  • Familiarity with Git or other version control systems.
  • Strong analytical and problem-solving skills.
  • Effective verbal and written communication skills.

Nice To Haves

  • Experience with ARM-based microcontrollers or processors.
  • Familiarity with communication protocols such as: SPI, I2C, UART, Ethernet, and USB
  • Knowledge of RTOS environments such as FreeRTOS, ThreadX, or Zephyr.
  • Exposure to embedded Linux development.
  • Experience with scripting languages such as Python.
  • Understanding of software testing, automated testing, and continuous integration practices.
  • Familiarity with secure software development practices.
  • Experience working in regulated industries such as aerospace, defense, medical, automotive, or industrial automation.

Responsibilities

  • Design, develop, debug, and maintain embedded software applications and firmware.
  • Implement software features using C/C++ and other applicable programming languages.
  • Develop software for microcontrollers, processors, and real-time embedded systems.
  • Participate in software architecture, design reviews, and code reviews.
  • Create and execute unit, integration, and system-level tests.
  • Support debugging efforts using oscilloscopes, logic analyzers, JTAG debuggers, and other development tools.
  • Investigate and resolve software defects and performance issues.
  • Collaborate with hardware, systems, and test engineers to integrate software with embedded platforms.
  • Develop and maintain technical documentation, including software design specifications and test procedures.
  • Follow software development processes, coding standards, and quality requirements.
  • Participate in continuous improvement initiatives related to software quality, development efficiency, and product reliability.

Benefits

  • Competitive Salary
  • Paid vacation/holidays/sick time
  • Comprehensive benefits package including 401K, medical, dental, and vision care
  • On the job/cross training opportunities
  • Encouraging and collaborative team environment
  • Dedication to safety through our Zero Harm policy
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service