Staff Software Engineer, BSP
Newark, CA, United States
Role Responsibilities:
Yocto Performance Profiling:
• In-depth understanding of Yocto recipes and layer.
• Utilize profiling tools to analyze and optimize the performance of Yocto Project builds.
• Identify bottlenecks and areas for improvement in the building process.
• Debug and resolve issues identified through tracing tools.
• Implement best practices for improving build times and reducing resource consumption.
Secure Boot and Arm Trust Zone:
• Implement and maintain secure boot mechanisms to ensure system integrity.
TEE Supplicant / HSM:
• Contribute to the development and integration of Trusted Execution Environments (TEE) and Hardware Security Modules (HSM).
Power Management in Linux:
• Develop and implement power management strategies within the Linux environment.
• Optimize power consumption for embedded systems
Linux Device Driver Development:
• Design, develop, and maintain Linux device drivers for seamless integration with custom hardware interfaces.
• Collaborate closely with hardware engineers throughout the development lifecycle
Advanced C Programming:
Utilize advanced C programming techniques to craft efficient, maintainable, and scalable code.
• Work on low-level system programming tasks.
Hardware Understanding:
• Understand hardware design and schematics to provide valuable insights during the design phase.
• Collaborate with hardware teams to ensure effective hardware-software integration.
Qualifications:
• Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field.
• Proven industry experience in embedded software development.
• Demonstrated expertise in Linux Kernel internals, Secure Boot, Arm Trust Zone, and related technologies.
Preferred Qualifications:
•
In-depth knowledge of Linux Kernel internals.
• Advanced C programming skills.
• Power management experience in Linux.
• Understanding of hardware design and schematics.
• Familiarity with TEE Supplicant/HSM, Secure Boot, and Arm Trust Zone.
• Experience in real-time operating systems (RTOS) is a plus.
• Knowledge of version control systems (e.g., Git).
• Familiarity with agile development methodologies.
• Strong problem-solving and debugging skills.
#J-18808-Ljbffr