1 month ago

Principal engineer- embedded software
Client of salarite

Location:

Udaipur

Contact Hr:

Technical leadership & mentorship
Embedded software development & architecture
Hardware-software integration
System performance & optimization

Vacancies

2

Job Type

Full Time

Salary

Not Disclosed

Job Description

A Principal Engineer – Embedded Software is a senior-level technical expert responsible for designing, developing, and optimizing embedded software solutions for hardware-based systems. They lead complex projects, provide technical direction, and ensure the performance, reliability, and scalability of embedded systems. This role requires deep expertise in low-level programming, real-time operating systems (RTOS), and hardware-software integration.


Key Responsibilities

1. Embedded Software Development & Architecture

  • Design, develop, and optimize embedded software for microcontrollers (MCUs), microprocessors (MPUs), and SoCs.
  • Write efficient, low-level code in C, C++, and assembly language.
  • Architect and implement real-time, high-performance, and power-efficient software solutions.

2. Hardware-Software Integration

  • Work closely with hardware engineers to integrate and debug firmware with embedded systems.
  • Optimize system performance, ensuring smooth interaction between software and hardware components.
  • Develop and debug device drivers, BSPs (Board Support Packages), and low-level firmware.

3. Real-Time Operating Systems (RTOS) & Embedded Linux

  • Develop and optimize software for RTOS (FreeRTOS, VxWorks, QNX) and Embedded Linux systems.
  • Work with kernel-level programming, process scheduling, and memory management.
  • Implement real-time scheduling and synchronization techniques.

4. System Performance & Optimization

  • Optimize power consumption, memory footprint, and execution speed for embedded applications.
  • Conduct profiling, debugging, and performance tuning using JTAG, ICE, and logic analyzers.
  • Implement safety-critical and fault-tolerant designs for automotive, medical, and industrial applications.

5. Connectivity & Protocols

  • Develop firmware supporting communication protocols like SPI, I2C, UART, CAN, Ethernet, USB, BLE, and Wi-Fi.
  • Work with IoT and wireless communication stacks (MQTT, Zigbee, LoRa, 5G, LPWAN).
  • Implement secure boot and encryption techniques for data protection.

6. Leadership & Mentorship

  • Provide technical leadership and guide software engineers in embedded systems design and best practices.
  • Conduct code reviews, architecture reviews, and design validation for projects.
  • Collaborate with cross-functional teams, including hardware engineers, software developers, and system architects.

7. Compliance & Safety Standards

  • Ensure compliance with industry standards (ISO 26262 for automotive, IEC 62304 for medical devices, DO-178C for aerospace).
  • Implement cybersecurity best practices in embedded security (TPM, secure boot, firmware integrity checks).

Key Skills Required

Technical Skills:

Programming Languages: C, C++, Python, Assembly
Microcontroller & Processor Architectures: ARM Cortex (M/A/R), RISC-V, x86, PowerPC
RTOS & Embedded Linux: FreeRTOS, Zephyr, VxWorks, Embedded Linux, Yocto
Device Drivers & BSP Development: Peripheral interfacing and low-level system programming
Communication Protocols: SPI, I2C, UART, USB, CAN, Ethernet, BLE, Wi-Fi
Debugging & Profiling: JTAG, GDB, Lauterbach, Logic Analyzers, Oscilloscopes
Software Development Tools: Keil, IAR, GCC, CMake, Yocto, Git, Docker
Cybersecurity & Secure Firmware: Secure Boot, TPM, Firmware Encryption

Soft Skills:

✔️ Problem-Solving: Ability to analyze and resolve complex system-level issues.
✔️ Leadership & Mentorship: Guide and mentor engineers in best practices.
✔️ Communication: Effectively explain technical concepts to non-technical stakeholders.
✔️ Project Management: Ability to manage multiple embedded projects and deadlines.

Qualifications & Experience

🎓 Education: Bachelor's or Master’s degree in Computer Science, Electrical Engineering, or a related field.
💼 Experience: 10+ years of embedded software development, with at least 5 years in a leadership role.

Skills

Technical leadership & mentorship
Embedded software development & architecture
Hardware-software integration
System performance & optimization