Software Development Engineer

TeslaBengaluru, KarnatakaOn-siteFull-timeSenior, 5–8 yearsListed 2 months ago

Apply now

About this role

Role Overview:

- We are looking for a passionate Software Engineer with 3–6 years of experience in Linux kernel development, device drivers, and hardware bring-up. The role offers exposure to the complete system software stack — from bootloaders (Coreboot, ATF) to kernel internals and HSIO subsystems — and provides opportunities to work across pre-silicon validation, post-silicon bring-up, and production flows. This position requires strong debugging skills, ability to read board schematics, and close collaboration with hardware, validation, and global teams.

Linux Device Driver Development & Debugging

- Develop and maintain drivers for HSIO subsystems (PCIe, USB, UFS, Ethernet, etc.)
- Work on feature enablement, bug fixing, and performance optimizations

New Hardware Bring-Up

- Participate in pre-silicon validation, FPGA/Emulator environments, and first-silicon bring-up
- Debug using JTAG, serial consoles, and kernel logging tools
- Read and analyze board schematics to support hardware-software integration

Linux Internals & Kernel Subsystems

- Contribute to kernel migration and version upgrades for new SoCs
- Work with Linux kernel frameworks like power management, interrupt controller (GIC), clock/PLL, memory, and HSIO IP subsystems.

Bootloader & Firmware

- Develop, debug, and customize bootloaders (U-Boot, Coreboot, ATF)
- Enable low-level initialization and bring-up of SoCs

System Performance & Power

- Support power and performance validation activities
- Contribute to enabling features like DVFS, Runtime PM, CPUIdle, and suspend/resume

Upstreaming & Collaboration

- Prepare and test patches for kernel upstreaming
- Collaborate with open-source community and global stakeholders

- 3–6 years of hands-on experience in Linux kernel and device driver development
- Strong C programming skills and debugging expertise
- Exposure to hardware bring-up on new boards/SoCs
- Ability to read and interpret board schematics.
- Experience with bootloaders (U-Boot, Coreboot, ATF)
- Familiarity with Linux kernel internals (memory management, scheduling, interrupts, device model)
- Experience in debugging using JTAG, logic analyzers, or oscilloscopes
- Good knowledge of source control systems (Git/Gerrit/GitHub) and kernel patch workflow.

Desirable / Good-to-Have Skills:

- Experience with HSIO IPs (PCIe, USB, UFS, Ethernet, etc.)
- Contributions to upstream Linux kernel or open-source projects
- Exposure to pre-silicon validation environments (FPGA/Emulators)
- Familiarity with test automation frameworks (Python, shell scripting).

Soft Skills:

- Strong analytical and problem-solving skills
- Good communication and teamwork in cross-functional, global teams
- Ability to work in a fast-paced environment and take ownership

Why Join Us?

- Opportunity to work on cutting-edge SoCs from pre-silicon to post-silicon to production
- Hands-on exposure to full software stack (bootloader → kernel → diagnostics → production tools)
- Grow into upstreaming, system performance/power optimization, and leadership roles
Work in a collaborative, innovation-driven environment with global teams.