Principal Embedded Software Development Engineer
Role details
Job location
Tech stack
Job description
- Define scalable multicore architectures and communication stacks .
- Lead design reviews, safety assessments, and cross-functional architecture decisions.
- Architect and develop PLC firmware (Embedded) ensuring SIL compliance and safety lifecycle documentation.
- Architect, implement and review device drivers, board bring-up, bootloaders, and diagnostics.
- Collaborate with hardware, systems, and test engineering to ensure safety compliance.
- Lead major R&D initiatives and strategy evolution.
- Mentor engineers and coordinate with cross-functional teams.
- Direct collaboration with certification bodies (TÜV) for audits and compliance reviews.
- Interpretation of datasheets, Safety Manuals, diagnostic coverage requirements, ECC, and hardware safety mechanisms.
- Creation of architecture documentation, design specifications, and traceability matrices.
Requirements
Education: M.E / B.E. in Electronics, Electrical, Communication, Instrumentation, Computer Engineering, or related field
- 12 + years of embedded firmware architecture and engineering experience working with remote teams. ( Like India mostly, Germany and France at times)
- Expertise in embedded, real-time, and RTOS-based firmware architecture for industrial systems, including Bare-Metal, FreeRTOS, Zephyr, and VxWorks/QNX.
- Strong background in multicore and multi-processor system architecture.
- Extensive experience with Functional Safety PLCs aligned with IEC 61508 / IEC 61511.
- Proficient in C, C++, and assembly language.
- Strong hardware-software integration experience, including device driver architecture and development.
- Expert knowledge of industrial communication protocols.
- System-level design experience in Process & Industrial Automation or Automotive.
- Experience with safety-certified RTOS and redundancy architectures.
- Must have board-bring up experience and strong troubleshooting skills with root cause analysis.
- Experience with FMEDA development/review, fault injection analysis, safety assessments, and safety case preparation.
- Experience with Design of redundant and diverse architectures, fault-tolerant systems, safe-state mechanisms, watchdog strategies, and advanced diagnostics.
- Experience with security and IEC 62443-2/3.
Secondary Skills:
- Familiarity with Agile, V-Model, and formal development methodologies.
- Experience with UML/SysML modeling tools and system Engineering.
- Expertise with JTAG, ICE, scopes, and analyzers.
- Knowledge of CMMI, MISRA, CERT, and static analysis tools.
- Experience with TFS, Git, Synergy, or Perforce.
- Strong communication, self-motivated and leadership skills.
- Experience with Protocol Analyzers, Fuzz Tools, Debuggers
Benefits & conditions
Military leave, 401(k) matching, Paid time off, Vision insurance, Dental insurance, Life insurance, Opportunities for advancement, For this U.S. based position, the expected compensation range is $178,000 - $213,600 per year, which includes base pay and short-term incentive.
The compensation range for this full-time position applies to candidates located within the United States. Our salary ranges are determined by reviewing roles of similar responsibility and level. Within the salary range, individual pay is determined by several factors including performance, knowledge, job-related skills, experience, and relevant education or training. Schneider Electric also offers a comprehensive benefits package to support our employees, inclusive of medical (with member reward points), dental, vision, and basic life insurance, Benefit Bucks (credits to apply towards your benefits) flexible work arrangements, paid family leaves, 401(k) + match, well-being and recognition (including service anniversary) programs, 12 holidays per year, 15 days of paid time off per year (pro-rated in the first year of employment based on start date), opportunity to purchase company stock (eligibility depends on start date), and military leave benefits. You must submit an online application to be considered for the position. The Company will accept applications on an ongoing basis until the position is filled.