
Staff Engineer, GPU Software - Edinburgh, UK
- London
- Permanent
- Full-time
Software EngineeringGeneral Summary:As a leading technology innovator, Qualcomm pushes the boundaries of what's possible to enable next-generation experiences and drives digital transformation to help create a smarter, connected future for all. As a Qualcomm Software Engineer, you will design, develop, create, modify, and validate embedded and cloud edge software, applications, and/or specialized utility programs that launch cutting-edge, world class products that meet and exceed customer needs. Qualcomm Software Engineers collaborate with systems, hardware, architecture, test engineers, and other teams to design system-level software solutions and obtain information on performance requirements and interfaces.Minimum Qualifications: • Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 4+ years of Software Engineering or related work experience.
OR
Master's degree in Engineering, Information Systems, Computer Science, or related field and 3+ years of Software Engineering or related work experience.
OR
PhD in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience.
- 2+ years of work experience with Programming Language such as C, C++, Java, Python, etc.
- Master's Degree in Engineering, Information Systems, Computer Science or related field.
- 8+ years of Software Engineering or related work experience.
- 3+ years of experience with Database Management Software.
- 3+ years of experience with API.
- 1+ year of work experience with Git, Perforce, or Source Code Management System.
- Leverages advanced Software knowledge and experience to design, develop, create, modify, and validate embedded and cloud edge software, applications, and/or specialized utility programs.
- Analyzes user needs, software requirements, and time and cost constraints to design and customize software for optimal operational efficiency.
- Designs and implements software modules for large-scale products and systems.
- Participates in and leads design, coding, unit testing, debugging, and integration efforts to ensure projects are completed to specifications and schedules.
- Performs complex code reviews and regression tests as well as triages and fixes issues to ensure the quality of code.
- Collaborates with individuals outside the software function (e.g., Hardware, Systems, and Test engineers) to ensure solutions work with other components of a specific project.
- Writes detailed technical documentation for complex Software projects.
- Works independently with minimal supervision.
- Provides supervision/guidance to other team members.
- Decision-making is significant in nature and affects work beyond immediate work group.
- Requires verbal and written communication skills to convey information. May require basic negotiation, influence, tact, etc.
- Has a moderate amount of influence over key organizational decisions (e.g., is consulted by senior leadership to make key decisions).
- Tasks often require multiple steps which can be performed in various orders; extensive planning, problem-solving, and prioritization must occur to complete the tasks effectively.