Company:
Qualcomm Technologies International Ltd
Job Area:
Engineering Group, Engineering Group > Software Engineering
General 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 host-based software, applications, and/or specialized utility programs that enable launches of 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.
This role is for a Senior Software Engineer in a fast-paced and dynamic development team responsible for the designing, implementing, maintaining, and supporting of a key system tool for communicating with, modeling, debugging, developing, and testing our voice and music firmware.
The tool is a key component in our embedded debug tools chain solution, used internally by multiple development and validation teams, as well as externally by our customers. Essentially it is a Python class library designed to make it easy to access, debug and model a variety of Qualcomm chips in various ways. It is mainly focused on Voice and Music chips, but a few other chips are also supported. It provides interactive access via the Python console as well as programmatic interfaces for autoed test, build and integration systems.
Principal Duties and Responsibilities
Collate and evaluate requirements.
Develop software solutions from agreed requirements, within schedule
Debug complex object-oriented software implementations
Debug complex multi-core embedded firmware software implementations
Specify, Implement, and execute unit tests
Perform code quality reviews
Provide system and user facing documentation
Provide verbal and written progress information
This is an onsite role with flexible working, applicants will be expected to manage time to meet deadlines, comply to office hours, attend required meetings at specified times. It demands strong analytical Skills and the ability to gather, integrate, and interpret information from several sources. Delivering the required solutions will require strong collaboration and communication skills, including using a technically sound communication style both verbally and in writing. Continuous learning combined with a creative approach would also be beneficial as we are always looking to update and improve our system in new and interesting ways. The ability to attack work activities with drive and energy, understanding the impact of work, making, or escalating necessary decisions in a timely manner and driving work tasks to completion.
