The point where experts and best companies meet
Share
Job Area:
Engineering Group, Engineering Group > Software Engineering
Ideal candidate has background to understand and identify/implement software optimizations across multiple layers of Software, Windows Operating System, Kernel, Compiler, Drivers, Assembly Language, CPU microarchitecture and SoC/Memory/Bus architecture.
As a Windows Performance Developer, you'll be owning and driving analysis of complex system level performance aspects and coming up with solutions to optimize performance without impacting power consumption to deliver best in class software performance for next generation of Windows on Snapdragon desktop devices using Qualcomm SoC’s. In this role you will work closely with software architects, OS and kernel developers, CPU architects and SOC architects to define performance optimization strategies to deliver the best performing Windows on Snapdragon desktop devices.
We are looking for a self-starter, with excellent people and leadership skills to drive analysis and optimizations with senior technical members from broad set of teams across Qualcomm and external partners. Should be able to self-manage and work through ambiguous issues and requirements. The candidate should have strong written and verbal communication skills.
Responsibilities:
In-depth analysis of key software benchmarks and applications to identify optimization opportunities
Implement software optimizations to ensure performance criteria is met
Develop and enhance analysis tools and instrumentation to assist in analysis, identifying performance gaps and optimization options
Collaborate with internal teams and external partners for analysis and optimizations
Identifies risks associated with designs, approaches, and other work efforts.
Solves complex technical problems that affect significant areas of products.
Makes decisions based on incomplete, contradictory, and ambiguous requirements and information that affect policies and multiple teams in the software development process.
Acts as a tech lead on projects and owns the outcome of the project.
Leads others with technical credibility.
Minimum Qualifications:
• Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 8+ years of Software Engineering or related work experience.
Master's degree in Engineering, Information Systems, Computer Science, or related field and 7+ years of Software Engineering or related work experience.
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 Language such as C, C++, Java, Python, etc.
Preferred Qualifications:
Master's Degree in Engineering, Electrical Engineering, Computer Science or related field.
15+ years of Software Engineering with focus in Power/Performance or related work experience.
Experienced in C/C++, ARM assembly
Familiarity with C#, Java, Javascript, Python is a plus
Strong familiarity with ARM architecture
Good understanding of CPU Architecture, Memory and Bus architecture and how that impacts software performance Experienced in performance characterization and software optimization techniques
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
Qualcomm expects its employees to abide by all applicable policies and procedures, including but not limited to security and other requirements regarding protection of Company confidential information and other confidential and/or proprietary information, to the extent those requirements are permissible under applicable law.
Pay range:
$180,000.00 - $270,000.00
These jobs might be a good fit