Overview
Design and deliver system software and applications for Qualcomm Automotive and Telematics chipsets on Embedded Linux platforms, as part of the Automotive Linux Systems team.
What you'll do
- Design, develop, implement, and analyze software in an Embedded Linux environment.
- Gather requirements, implement new features, and ensure high-quality deliverables.
- Collaborate with cross-functional teams across multiple domains and geographies.
What you'll need
- Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience, OR Master's degree in Engineering, Information Systems, Computer Science, or related field and 1+ year of Software Engineering or related work experience, OR PhD in Engineering, Information Systems, Computer Science, or related field.
- 2+ years of academic or work experience with a programming language such as C, C++, Java, Python, etc.
- Strong programming skills in C and C++, with good knowledge of Data Structures and Algorithms.
- A minimum of 2 years of hands-on experience in SELinux, Cybersecurity, TARA analysis, and AVB (Android Verified Boot).
- Solid understanding of OS concepts: Scheduler, Memory Management, File Systems, Locking, and Synchronization.
- Hands-on experience in Linux/Unix-based development environments.
- Experience with Yocto Project, recipe-based builds, and tools like Git/Gerrit.
- Proficiency in Linux system programming: System calls, IPC, Multi-threading, System.
- Strong debugging and troubleshooting skills: root-cause analysis, performance tuning, KPI optimization.
- Working knowledge of FOTA/OTA, streaming, software updates, recovery, fastboot.
- Familiarity with tools: GDB, Valgrind, Perf, Ftrace, eBPF, and memory leak analysis.
- Excellent communication and collaboration skills with a positive attitude.
Nice to have
- Familiarity with Python and Shell scripting.
- Experience with ARM-based embedded systems.
- Exposure to Automotive or IoT Linux software development.
- Knowledge of Linux Kernel: bring-up, upgrades, device tree, drivers, porting, and kernel configuration.
- Familiarity with Linux storage subsystems: NAND, eMMC, UBI, UBIFS, SQUASHFS, EXT4, RAMFS.
- Understanding of Linux security frameworks: SELinux, SMACK, IMA-EVM, DM-Verity, FDE, DM-Crypt, FS-Crypt, Secure Boot, TrustZone.
- Experience on peripheral Linux device drivers like I2C, I2S, GPIO and UART.
Details
- Location: Bangalore, India.
- Experience: 1 to 3 years.
Read the full description and apply on the company’s own careers page.