Senior Software Engineer – Software Applications Engineering
Company | Qualcomm |
---|---|
Location | Santa Clara, CA, USA |
Salary | $123900 – $185900 |
Type | Full-Time |
Degrees | Bachelor’s, Master’s, PhD |
Experience Level | Senior |
Requirements
- Bachelor’s degree in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Applications Engineering, Software Development experience, or related work experience.
- OR Master’s degree in Engineering, Information Systems, Computer Science, or related field and 1+ year of Software Applications Engineering, Software Development experience, or related work experience.
- OR PhD in Engineering, Information Systems, Computer Science, or related field.
- 1+ year of any combination of academic and/or work experience with Programming Language such as C, C++, Java, Python, etc.
- 1+ year of any combination of academic and/or work experience with debugging techniques.
Responsibilities
- Ensure the stability, reliability, and performance of the Linux kernel and related systems.
- Work closely with customers for troubleshooting and resolving issues.
- Support, customize, and optimize Qualcomm software for various Linux Android products.
- Work on internal development platforms.
- Drive tasks and work closely with various technology teams while engaged on customer issues, documentation, and training.
Preferred Qualifications
- 3+ year of any combination of academic and/or work experience with Programming Language such as C, C++, Java, Python, etc.
- 3+ year of any combination of academic and/or work experience with debugging techniques.
- Proven experience as a Linux Kernel Engineer or similar role.
- Strong knowledge of Linux kernel architecture and build tools.
- Strong understanding of Computer Architecture – Caches, Bus, Memory is required.
- Familiarity with version control systems (e.g., Git).
- Strong communication and collaboration skills.
- Knowledge in the following areas: Camera, Display, AR/VR, Video, Graphics, BSP software.
- Strong understanding of system performance tuning and optimization.
- Extensive experience with Linux kernel development, debugging, and profiling tools.
- Proficiency in programming with real-time operating systems or microkernels, particularly on ARM architectures or Qualcomm’s Hexagon microprocessor.
- Advanced C/C++ programming skills with a minimum of 3 years of experience in embedded software systems. Experience in creating or managing software build environments using tools such as Make, CMake, and Git.
- Proficiency in scripting languages (e.g., Bash, Python).
- Familiarity with containerization technologies (e.g., Docker, Kubernetes).
- Familiarity with specific Linux distributions and their kernel customization processes (e.g., Ubuntu, Fedora, Rocky Linux).