Logo
Qualcomm

Linux Kernel Developer, Principal

Qualcomm, Oregon, Illinois, United States, 61061


Company:

Qualcomm Technologies International LtdJob Area:

Engineering Group, Engineering Group > Software EngineeringGeneral Summary:As a Linux Kernel Developer, you are responsible for working within a distributed team of fellow engineers that are developing solutions for our next generation custom CPUs. You will collaborate both internally, and externally with upstream communities (including the Linux kernel, boot firmware and low-level libraries), as well as with appropriate standards bodies. You will have an opportunity to engage broadly with our hardware and software development teams to ensure leading performance, efficiency and security for our custom CPUs both pre and post-silicon. The role includes ensuring that existing software performs well on our CPUs and new architectural features are enabled in open source software.Role and ResponsibilitiesAssist in the definition of future high performance SoCs and platformsLead the creation of optimizations and drivers for high performance platforms, focused on ensuring that existing Operating Systems run well, while identifying strong opportunity for enhancements that can improve performance on our hardwareCollaborating with the performance team to understand areas of hardware optimizationMinimum Qualifications:Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 8+ years of Software Engineering or related work experience.OR Master's degree in Engineering, Information Systems, Computer Science, or related field and 7+ years of Software Engineering or related work experience.OR PhD in Engineering, Information Systems, Computer Science, or related field and 6+ years of Software Engineering or related work experience.4+ years of work experience with Programming Languages such as C, C++, Java, Python, etc.What We Would Like to SeeStrong grasp of Computer Architecture concepts, including high performance architectures, weak memory models, server platforms and the hardware/software interfaceSelf-starter who takes initiative and engages well with upstream communitiesProficient in C, assembly language, and build systemsStrong experience of systems programming in Python or similar languagesGood understanding of distributed revision control systems and modern software development best practicesDevelopment of software virtual platforms, low-level boot firmware and debug toolsPreferred Qualifications10 years+ of experience in building software stacks for high performance systemsExperience in working “upstream first” with the Linux kernel communityExperience in maintaining server class platform support upstreamStrong grasp of Computer Architecture concepts leveraged by modern high performance server-class platforms, knowledge of performance tradeoffsDeep expertise in UEFI, ACPI, PCIe, and other related server specs*References to a particular number of years experience are for indicative purposes only. Applications from candidates with equivalent experience will be considered, provided that the candidate can demonstrate an ability to fulfill the principal duties of the role and possesses the required competencies.

#J-18808-Ljbffr