Company Profile
Lennox (NYSE: LII) Driven by 130 years of legacy, HVAC and refrigeration success, Lennox provides our residential and commercial customers with industry-leading climate-control solutions. At Lennox, we win as a team, aiming for excellence and delivering innovative, sustainable products and services. Our culture guides us and creates a workplace where all employees feel heard and welcomed. Lennox is a global community that values each team member's contributions and offers a supportive environment for career development. Come, stay, and grow with us.
Job Description
- Lead software design and implementation across the full Software Development Life Cycle (SDLC), includingrequirementsanalysis, design, coding, testing, and deployment.
- Design and develop embedded software solutions inC and C++for target platforms, includingbaremetalandRTOS-basedenvironments.
- Performunit testing(preferably usingGtest),bench testing, and module-level verification for developed or modified components.
- Experience inarchitecting embedded softwareor contributing to high-level system design.
- Collaborate with cross-functional and global teams for software integration, requirement clarification, and customer interactions.
- Provide technical guidance and support to project team members andparticipatein technical reviews.
- Analyze and troubleshoot complex issues in existing codebases propose effective solutions and improvements.
- Prepare technical documents including design specifications, test reports, and release documentation.
- Ensure adherence to software quality standards, coding guidelines, and secure coding practices.
- Contribute to project planning activities such as effort estimation, risk identification, and mitigation planning.
- Support sustaining engineering activities for released products whenrequired.
Qualifications
Requirements
- Bachelor's degree inElectronics Engineering,Computer Engineering,Computer Science, or relatedfield.
- 8 to 15yearsof experience inembedded software development.
- Strong understanding ofembedded systems, including microcontrollers and (preferably) microprocessors.
- Solid programmingexpertiseinC and C++.
- Hands-on experience withRTOS,multi-threading, andinter-process communicationmechanisms.
- Practical knowledge of serial communication protocols such asRS232, RS485, and peripheral interfaces likeI2CandSPI.
- Strong debugging skills and experience working with large, complex codebases.
- Good understanding of theSoftware Development Lifecycle (SDLC)and configuration management practices.
- Working knowledge ofEmbedded Linux,MODBUS, andBACnetis an added advantage.
- Exposure toVisual Studioor PC-based application development is desirable.
- Preferred:Knowledge of automation frameworks to automate development testing
- Self-driven, with strong problem-solving abilities anda high levelof ownership.
- Excellent verbal and written communication skills, with the ability to convey technical concepts effectively to internal teams, customers, and suppliers.