Qualcomm Software Engineer - Bluetooth in Cambridge, United Kingdom
Software Engineer - Bluetooth
Qualcomm Technologies, Inc.
CDMA Technology at http://www.qualcomm.com/about/businesses/qct
Engineering - Software
United Kingdom - Cambridge
Job Overview - Dept Description and Job Duties:
The Bluetooth Technology department is responsible for developing Bluetooth firmware for IoE, Voice & Music and Automotive wireless devices. You will be joining a successful department whose deliveries can be found in over 2 billion Bluetooth products. Bluetooth continues to evolve and the department is now focused on development of the Bluetooth 5.x standard which will further enhance the Bluetooth experience. The department provides opportunities for Engineers to develop their careers whether it be in the area of future standards evolution or cutting-edge product development.
The role of the Engineer is to develop Bluetooth software IP for Qualcomms range of wireless chips typically embedded software running on the on-chip processors or associated protocol stack software running on a host processor. For the embedded software, this involves coding in C and assembler within a resource constrained multi-processor environment. Host software is written in C. In both cases, some use may be made of scripting languages such as Perl, Python or Tcl/Expect for test purposes or general utilities.
The engineer will join an agile team responsible for delivering software IP for Bluetooth specification features and controlling the Bluetooth radio. This work requires that implementation work on the Bluetooth protocol software proceeds whilst the Bluetooth specification is still being written by the Bluetooth SIG. The team also undertakes engineering of challenging Bluetooth use cases to maintain a competitive advantage in Bluetooth, in a highly dynamic environment where requirements may be uncertain or subject to change throughout the course of the project. Mentoring will be provided from more experienced engineers. Tasks will be well defined and the Engineer is expected to work with moderate supervision.
Collaborate with team members to achieve team goals
Contribute to requirements capture and refinement
Contribute to task definition and work breakdown including size estimation, e.g. using story points
Contribute to the Bluetooth specification and standardization process
Software architecture and hardware/software interface definition
Design, develop, document, test and deliver resource constrained software of moderate scale and complexity under moderate supervision, in accordance with priorities established with the Product Owner and the departments processes Conduct peer design reviews and code reviews. A working knowledge of a design methodology (e.g. UML) would be an advantage.
Assist with occasional external inter-operability and compliance test events such as Bluetooth UnPlugFests (UPFs). Note that whilst such events are often overseas, this role will be based at one of our Cambridge offices. This role will not involve frequent travel
Maintenance of existing software including defect investigation & resolution, sometimes to challenging timescales as part of 3rd-line engineering support. This may require debug of issues affecting Bluetooth ROM products in mass production and the preparation and release of patches to resolve issues, regardless of whether the Qualcomm device is actually at fault.
Bachelor's degree in Engineering, Information Systems, Computer Science, or related field.
1+ years experience with Programming Language such as C, C++, Java, Python, etc.
*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 fulfil the principal duties of the role and possesses the required competencies.
Commercial experience of software design and architecture using C and assembler in embedded applications
Proven understanding of programming languages
Proven commercial or equivalent experience of C in embedded applications
Good understanding of software design techniques
Understanding of software architecture
Understanding of debug techniques
Understanding of configuration management
Keen interest in software development
Effective team player
Good problem-solving ability
Some experience of software design and architecture in protocol stacks
A demonstrable appreciation of Systems Engineering
Member of a professional institution such as the IET
Previous experience of continuous integration and automated unit and soak testing
Understanding of processor architectures and peripherals, or prior experience of SoC technology
Understanding of python
Some experience of wireless communication protocols such as Bluetooth or Wi-Fi would be beneficial; alternatively, aspects of other communications protocols (possibly wired) are transferable.
Some knowledge of radio architectures
- Bachelor's degree in Engineering, Information Systems, Computer Science, or related field.
EEO Employer: Qualcomm is an equal opportunity employer; all qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or any other protected classification.