Software Engineering Co-Op

Johnson Controls•Burlington, MA

About The Position

Johnson Controls is seeking a Software Engineering Co-op to work with a multidisciplinary team supporting the design, development, testing, and maintenance of software and firmware solutions throughout the product lifecycle. This role offers hands-on experience developing production software that directly supports advanced manufacturing technologies and business-critical initiatives. As a Software Engineering Co-op, you will collaborate with software, process, mechanical, and applications engineers to develop innovative solutions, improve automation capabilities, and contribute to high-priority projects. This opportunity is ideal for a student who enjoys problem-solving, continuous learning, and working in a fast-paced technical environment.

Requirements

  • Currently pursuing a degree in Computer Engineering, Electrical Engineering, Software Engineering, Computer Science, or a related technical discipline.
  • Proficiency with Python, C/C++, Git, and UNIX/Linux environments.
  • Demonstrated ability to take ownership of projects and complete assignments efficiently and effectively.
  • Experience developing software that interfaces with physical hardware or embedded systems.
  • Adaptable and comfortable working in a fast-paced, collaborative environment.
  • Strong written and verbal communication skills.
  • Strong analytical, troubleshooting, and problem-solving abilities.
  • Must be legally authorized to work in the United States without current or future sponsorship.

Nice To Haves

  • Previous co-op, internship, research, or industry experience.
  • Experience with JavaScript and React development.
  • Familiarity with embedded systems development.
  • Experience with Bash scripting and Jira.
  • Exposure to CAD software, mesh modeling, 3D printing, controls theory, or robotics.
  • Experience developing automated testing solutions.
  • Interest in advanced manufacturing technologies and industrial automation.

Responsibilities

  • Develop software that supports the control and automation of advanced manufacturing processes.
  • Collaborate with software, process, mechanical, and applications engineers to deliver project objectives.
  • Contribute to machine control, slicing, and testing software applications.
  • Support development efforts within a production software environment, working on business-critical projects and tasks.
  • Design and implement new user interface features within a React-based application environment.
  • Develop and maintain unit tests and contribute to integration testing efforts for Python and C++ applications.
  • Identify opportunities to automate manual workflows and improve software performance, reliability, and usability.
  • Assist with software troubleshooting, debugging, testing, and validation activities.
  • Document software functionality, testing results, and development activities clearly and effectively.
  • Demonstrate Johnson Controls' Winning Behaviors by focusing on impactful work, collaborating across disciplines, taking ownership of deliverables, and continuously improving processes and solutions.

Benefits

  • Gain hands-on experience developing software solutions that support innovative manufacturing technologies and automation systems.
  • Work closely with experienced engineers across multiple disciplines while building expertise in software development, testing, automation, user interface development, and hardware integration.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service