Software Engineer
Job DescriptionBuild your best future with the Johnson Controls team!Who We AreJohnson Controls is global leader in smart, healthy, and sustainable buildings. Our mission is to reimagine the performance of buildings to serve people, places, and the planet. Join a winning team that enables you to build your best future! Our teams are uniquely positioned to support a multitude of industries across the globe. You will have the opportunity to develop yourself through meaningful work projects and learning opportunities. We strive to provide our employees with an experience focused on supporting their physical, financial, and emotional wellbeing. Become a member of the Johnson Controls family and thrive in an empowering company culture where your voice and ideas will be heard – your next great opportunity is just a few clicks away!What We OfferCompetitive salaryPaid vacation/holidays/sick timeComprehensive benefits package including 401K, medical, dental, and vision care.On-the-job/cross-training opportunitiesEncouraging and collaborative team environmentDedication to safety through our Zero Harm policyWhat You Will DoSoftware engineer responsible for supporting design, development, validation, and support of active magnetic bearing (AMB) control system software.This is a 40 hour per week position.Responsibilities Design, develop, validate, and support new and updated embedded AMB control system software and the support systems necessary to ensure cybersecurity compliance.Design and implement softwareCode and debugAnalyze system performanceIntegrate software with hardwareCreate documentationSupport software quality assuranceSupport cybersecurity (Cyber Resilience Act) complianceManage CI/CD and DevOps processesQualifications SponsorshipCandidates must be authorized to work in the United States without current or future visa sponsorship. (JCI will not offer sponsorship for this position.)EducationRequired: Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, Software Engineering, or related fieldExperienceCoursework or projects involving embedded control system software development.1-2 years work experience (including internships or co-op) strongly preferred.Hard Skills / Knowledge (Preferred)Development of solutions to support the development of Magnetic Bearing Control systemsProficiency in Multiple Programming Languages (C/C++, Java, Python)Microcontrollers and MicroprocessorsHardware-Software IntegrationDebugging and Testing TechniquesEmbedded Software Design PatternsCommunication Protocols: I2C, SPI, and UARTSoftware Quality AssuranceCI/CD PipelineDevOpsCybersecurity and Information SecurityEncryption and CryptographySoft Skills / KnowledgeTroubleshooting: able to investigate root causes and implement countermeasuresPrioritization: able to select the next best action from among multiple competing priorities.Self-management: able to complete multiple, complex, interdisciplinary tasks with limited guidance.Communication: able to express ideas and share information clearly and efficiently across the full range of communication modes: in-person meetings, remote conferencing, email, chat, and documents.Collaboration: works well with other members of multidisciplinary teams to accomplish shared objectives.Third party relations: develops good working relationships with customer and supplier representatives. Supports their technical needs while respecting the bounds of commercial agreements and resource limitations.SALARY RANGE: $67,000 - $101,000 (Salary to be determined by the education, experience, knowledge, skills, and abilities of the applicant, internal equity, and alignment with market data.) This position includes a competitive benefits package. The posted salary range reflects the target compensation for this role. However, we recognize that exceptional candidates may bring unique skills and experiences that exceed the typical profile. If you believe your background warrants consideration beyond the stated range, we encourage you to apply. To support an efficient and fair hiring process, we may use technology assisted tools, including artificial intelligence (AI), to help identify and evaluate candidates. All hiring decisions are ultimately made by human reviewers. For details, please visit the About Us tab on the Johnson Controls Careers site at https://jobs.johnsoncontrols.com/about-us