Johnson Controls is a global diversified technology and multi industrial leader serving a wide range of customers in more than 150 countries. Our 117,000 employees create intelligent buildings, efficient energy solutions, integrated infrastructure and next generation transportation systems that work seamlessly together to deliver on the promise of smart cities and communities.
Our commitment to sustainability dates back to our roots in 1885, with the invention of the first electric room thermostat. We are committed to helping our customers win and creating greater value for all of our stakeholders through strategic focus on our buildings and energy growth platforms. For additional information, please visit www.johnsoncontrols.com or follow us @johnsoncontrols on Twitter.
Act as a senior software engineer in the development of a compelling set of end-to-end cloud-based solutions, delivering rich interactive experiences across a broad spectrum of connected platforms and services. Leverage real-world background and insight in user experience and human interface engineering to contribute towards the delivery of unique and compelling experiences, delivering information effectively through intuitive, easy to use client services and applications. The Senior Software Engineer will be instrumental in delivering unique and compelling solutions that leverage cloud-based services integrated with Johnson Controls world-class products.
- Responsible for the design, development, and implementation of enterprise solutions.
- Participates in the development of test strategies, devices and systems.
- Contributes to the development of new techniques, models and plans within area of expertise.
- Evaluates complex issues using multiple sources of information
- Work as part of an Agile/Scrum team
- Define the technical implementation of the system architecture
- Lead the development of application features from collaboration on requirements definition, feature design, coding, testing, and deployment to Level 3 support.
- Reviews developmental frameworks, coding standards, conducts code reviews and walkthroughs, and conducts in-depth design reviews.
- Interfaces with Product Management, Project Management, Software Development, Firmware Development, and Quality Assurance to ensure that a high quality product is delivered which meets or exceeds all published guidelines
- Mentors junior engineers to build high performance teams
Education and Experience
Minimum qualifications include a Bachelor's degree in Computer Science (or related field) from an accredited college or university (four years relevant work experience may be substituted for education).
- Must be proficient in analyzing highly complex issues and architectures and reducing them to practice. Strong analytical skills are essential.
- Must have excellent communication and team management skills to effectively lead junior engineers and to collaborate with the globally dispersed development teams.
- Under limited supervision; ability to exercise independent judgment; has authority to make limited decisions without specific guidance or direction from supervisor. Must be self-motivated and a "self-starter"
- Enterprise Operations / Architecture - Must have spent at least 3 years developing large-scale, enterprise-wide, complex information technology initiatives, at both an infrastructure and an application level.
- Cloud Architecture - Technical knowledge and implementation experience using common cloud architecture, enabling components, and deployment platforms.
- Cloud Platforms - Application development experience utilizing distributed processing solutions such as Hadoop, distributed storage solutions such as Cassandra, real-time and post analytics processing architectures, application server platforms, clustered infrastructures, and distributed queuing technologies such as JMS or Kafka.
- Experience developing highly scalable data-driven applications based on structured and unstructured data sets.
- Software Development - Minimum of 5 years’ experience with Enterprise Java (J2EE or Spring, Hibernate).
- Minimum of 5 years’ experience with object oriented programming languages (Java, C#). Any other relevant languages (Groovy/Grails, Python, RoR) is a plus
- Web Services - Development of applications utilizing one or more of the following web services technologies: JSON-RPC, JSON-WSP, Web Services Description Language (WSDL), REST, RPC, or XML
- Knowledge of authentication, authorization and federated identity management is preferred
- Experience with NodeJS, Express a plus
- Experience with automated builds and tests (e.g. Jenkins, Maven, Selenium, Protractor, Grunt) is preferred