Technical Lead II Application Development (C / C++)

Johnson ControlsGurugram, HaryanaOn-siteFull-timePrincipal, 12–15+ yearsListed 1 hour ago

Apply now

About this role

Job Summary

We are looking for a C/C++ Software Engineer to design, develop, and maintain platform applications used in Building Automation Systems (BAS).

The role involves working on native applications, embedded services, protocol integrations, and platform-level features running on Linux-based and Windows server.

The candidate will collaborate with architects, system engineers, QA, and cross-functional teams to deliver high-performance, scalable, and reliable applications

Application Development

- Design, develop, and enhance native applications using C and C++
- Build and maintain embedded and server-side components running on Linux and Windows
- Implement high-performance, multithreaded services with strict reliability and uptime requirements
- Develop modular, reusable, and testable components
- Ensure compliance with coding standards, memory safety, and performance guidelines
- Debug complex multithreaded issues such as memory leaks, deadlocks, race conditions
- Perform performance profiling and optimization
- Analyze core dumps and runtime issues in production-like environments
- Follow Agile/Scrum development practices
- Participate in design reviews, code reviews, and sprint planning
- Collaborate with QA for defect analysis and resolution
- Maintain technical documentation and design notes
- Implement and enhance BACnet-based integrations (BACnet/IP, MS/TP, services, properties)
- Work with network protocols such as TCP/IP, UDP, IPv4/IPv6

Required Skills & Qualifications

- Strong proficiency in C and C++
- Strong understanding of memory management, multithreading and synchronization, object-oriented design and patterns
- Hands-on experience with Linux-based development environments
- Experience in embedded or systems software development

Platform & Tools

- Visual Studio
- GCC / Make / CMake build systems
- Debugging tools (GDB, Valgrind, core dumps)
- Cross-compilation environments
- Git and CI/CD pipelines
- Networking fundamentals (TCP/IP, UDP, sockets)

Preferred / Nice-to-Have Skills

- BACnet protocols and building automation concepts
- Integration with field devices or control systems
- Experience with BAS products
- Docker / containerized services
- Security best practices for embedded and platform applications
- Diagnostics, logging frameworks, and health monitoring

Education & Experience

- Bachelor’s or Master’s degree in Computer Science, Electronics, or related field
- 10-14+ years of hands-on experience in C/C++ application or embedded development
- Large, long-lived codebase experience preferred

What We Offer

Industry-leading Building Automation platforms

Large-scale, mission-critical systems exposure

Global architecture and platform collaboration

Career growth in system architecture, protocol engineering, and platform design