Design and implement embedded software solutions to address business needs
Develop firmware in C/C++, ensuring efficiency, reliability, and safety
Involve in all aspects of the system software development process – concept, design, reviews, coding and validation
Drive code quality initiatives through best practices including code reviews, unit tests, functional/integration testing, and CI/CD integration
Provide software designs and documentation to the team
Participate in product cybersecurity reviews
Participate in Change Control Board (CCB) meetings to prioritize new features & defects
Perform debugging, troubleshooting embedded systems using emulators, JTAG/BDM debuggers etc.
Stay current with emerging technologies and apply relevant innovations as appropriate
Work with embedded system development methodologies such as agile, and related project and repo management tools such as JIRA, Confluence, GitHub etc.
Mentor and coach junior and mid-level engineers, providing technical guidance, knowledge sharing, and review feedback
Requirements
Bachelor’s degree in Engineering, or Computer Science, or a technical discipline degree
7+ years of experience in the design and development of embedded firmware
Strong proficiency in C/C++ programming skills for embedded systems
Hands-on experience in RTOS, multithreading and bare metal programming
Solid understanding of microcontroller architecture, interrupts, timers, memory (Flash/RAM/EEPROM), and low-level drivers
Knowledge of embedded development workflows, version control, and build systems (CMake, Make)
Experience with hardware debugging tools and test equipment
Experience with common wired messaging architectures and protocols (UART, RS232/485, I2C, SPI, Modbus)
Demonstrated knowledge of firmware development best practices (AGILE design, code reviews, design documentation, unit testing)
Experience with IoT / Embedded systems’ standard design elements
bootloaders, OTA firmware downloads, and firmware updates
Understanding of cybersecurity technologies and best practices (encryption, key management, certificates/exchanges, Secure Boot)
Experience with hardware/electrical with knowledge how to evaluate if your firmware is working as expected by probing the hardware (e.g., oscilloscope, logic analyzer, etc.)
Experience in the use of Jira, Confluence, Azure DevOps, or other software development tools
Experience with HVAC Controls Systems
Strong analytical and problem-solving skills
Organized with strong attention to detail, while managing multiple priorities
Ability to lead a small team of software developers and collaborate with cross-functional teams
Proven ability to implement continuous improvements and standardize processes.
Tech Stack
Azure
Cyber Security
Flash
IoT
RTOS
Benefits
Health Care Benefits: Medical, Dental, Vision
Wellness incentives
Retirement Benefits
Time off and Leave: Paid vacation days, up to 15 days; paid sick days, up to 5 days; paid personal leave, up to 5 days; paid holidays, up to 13 days; birth and adoption leave; parental leave; family and medical leave; bereavement leave; jury duty leave; military leave; purchased vacation
Disability: Short-term and long-term disability
Life Insurance and Accidental Death and Dismemberment
Tax-Advantaged Accounts: Health Savings Account; Health Care Spending Account; Dependent Care Spending Account