Emerson

Tech Lead – Embedded Software Development

Emerson

full-time

Posted on:

Location Type: Hybrid

Location: PuneIndia

Visit company website

Explore more

AI Apply
Apply

Job Level

About the role

  • Design and implement embedded real-time software that meets functional safety and cybersecurity requirements
  • Collaborate with product owners, architects, and global engineering teams to understand and translate product requirements into robust software designs
  • Contribute to system and product architecture, including system, subsystem, and user interface requirements
  • Allocate system requirements to appropriate technical areas and subsystems
  • Plan and execute software development activities aligned with sprint goals in an agile environment
  • Perform object-oriented design and development using C and C++ on embedded Linux platforms
  • Participate actively in sprint planning, backlog refinement, reviews, and retrospectives
  • Conduct code reviews and ensure adherence to established coding standards and quality practices
  • Manage source code and changes using version control tools such as Git
  • Develop and execute unit and integration tests to verify firmware and system requirements
  • Debug software and hardware/software integration issues using simulators and target hardware
  • Prototype software on custom hardware and support low-level board bring-up activities
  • Improve software quality and performance through optimization, refactoring, and continuous enhancement
  • Use lab tools such as oscilloscopes, logic analyzers, meters, and sniffing tools to diagnose and resolve hardware-level issues
  • Apply secure coding practices and perform static and dynamic analysis to identify and mitigate vulnerabilities
  • Address cybersecurity and compliance requirements, including EU-CRA or similar product certifications, throughout the development lifecycle

Requirements

  • Strong experience developing embedded software, particularly on Embedded Linux platforms
  • Advanced programming skills in C, C++, and shell scripting
  • Hands-on experience with device driver development, Yocto image creation, and device tree configuration
  • Practical exposure to boot loaders (such as U-Boot) and an understanding of Linux kernel concepts
  • Experience working with embedded processor architectures (for example ARM or PowerPC) and common peripherals such as Flash memory, ADCs, and RTCs
  • Working knowledge of communication protocols including I2C, SPI, CAN, RS-232/RS-485, or Modbus
  • Familiarity with lightweight data storage methods such as SQLite, JSON, or similar
  • Experience creating and executing unit tests, using manual or automated approaches
  • Proficiency in debugging using tools such as GDB on both simulated environments and hardware boards
  • Experience using JTAG or J-Link tools for programming and debugging
  • Understanding of secure coding practices and open-source licensing considerations
  • Experience working in agile development environments and using DevOps tools such as Azure DevOps
  • Ability to implement encryption and security mechanisms to protect firmware and sensitive data
  • Awareness of cybersecurity standards and the ability to identify and address software vulnerabilities
Benefits
  • Opportunities for continuous learning
  • Culture that values collaboration
  • Inclusive environment
Applicant Tracking System Keywords

Tip: use these terms in your resume and cover letter to boost ATS matches.

Hard Skills & Tools
embedded software developmentCC++shell scriptingdevice driver developmentYocto image creationboot loadersLinux kernel conceptscommunication protocolsunit testing
Soft Skills
collaborationagile developmentcode reviewproblem-solvingcommunication
Certifications
EU-CRA