Senior Software Engineer – Kernel Services – Software Engineering
Company | Qualcomm |
---|---|
Location | San Diego, CA, USA |
Salary | $111300 – $166900 |
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 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 Programming Language such as C, C++, Java, Python, etc.
Responsibilities
- Develops, creates, and modifies general computer applications software or specialized utility programs.
- Analyzes user needs and develops software solutions.
- Designs software or customizes software for client use with the aim of optimizing operational efficiency.
- May analyze and design databases within an application area, working individually or coordinating database development as part of a team.
- Modifies existing software to correct errors, allow it to adapt to new hardware, or to improve its performance.
- Confers with systems analysts, engineers, programmers, and others to design system and to obtain information on project limitations and capabilities, performance requirements and interfaces.
- Stores, retrieves, and manipulates data for analysis of system capabilities and requirements.
- Designs, develops, and modifies software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design.
Preferred Qualifications
- Experience in C and Data structures.
- In-depth knowledge of Windows development environment and functionality and architecture especially driver module.
- Excellent debugging and problem-solving skills in Linux Kernel. Familiar with ARM CoreSight architecture will be a plus.
- Good understanding of CPU Architecture, Memory and Bus architecture and how that impacts software performance.
- Able to debug complex problems across multiple layers of hardware, OS, compiler, and drivers.
- Experience with Windows OS, Visual Studio/LLVM compiler and Windows Performance Analyzer (WPA) tools is preferred.
- Experience in Compiler and JIT technologies is a plus.
- Experience with optimizing for popular CPU software benchmarks is a plus.
- Familiarity with ETM will be a plus.
- Experience on Python/Perl will be a plus.
- Assembly and C++ language experience is a plus.