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.
As an SDK (Software Development Kit) developer, you develop, and maintain SDKs, that allow developers to build applications for a specific platform or framework. Responsibilities include collaborating with cross-functional teams, documenting SDK usage, and troubleshooting issues.
The ideal candidate will have extensive execution experience, and a proven track record of building highly scalable systems. You will be responsible for development, delivery and support of large-scale, multi-tiered, distributed software applications. In addition to strong technical knowledge, you will be someone who thrives in a fast-paced environment, and is passionate about solving ambiguous, challenging problems that have not been solved before. This role offers wide scope, autonomy, and ownership.
Basic Qualifications
Bachelor’s degree in computer science or related field
3-6 years of computer science fundamentals (object-oriented design, data structures, algorithm design, problem solving and complexity analysis) experience
3-6 years of professional front end development experience
Demonstrated passion for user experience and improving usability
Excellent communication skills, both written and verbal
Ability to work in a fast-paced and agile development environment and to learn new frameworks/stacks
Self-directed and capable of quickly shipping code in a dynamic environment
Preferred or Additional Requirement:
Bachelor's degree in Engineering, Information Systems, Computer Science, Electronics
At least 3 years of experience in below areas
- Prior work on embedded products
- Knowledge of building continuous integration pipelines
- Understanding of bug databases and how to use them, for example Orbit
- Experience with git, A thorough understanding of software configuration management especially using Git
- Good understanding of build systems
- Good understanding of debug techniques
- Good Understanding of Linux software architecture
- Good understanding of configuration management
- Designing and optimizing deployment scripts and processes
- Good knowledge of GNU/Linux Shell scripting
- Proven success in taking ownership of CI systems for embedded products that require extensive hardware testing infrastructure
- Good understanding of embedded software, this will help understanding the CI system for the products
Skills:
C, Python scripting, bash script programming
Linux System concepts,
Linux Kernel Internals and driver concepts.
Exposure to distributions: , openwrt, yocto
SCM tools: git, repo
Automation development experience with Github, Jenkins
Prior experience in Continuous Integration and Build System is a plus
Strong debugging and problem-solving skills
Passionate about the Build and Integration and software automation
Knowledge in managing source control systems, software versioning, Git branching strategies and integrations on multiple projects and repositories.
Excellent communicative, interpersonal and leadership skills with ability to work efficiently in both independent and teamwork environments.
Key Responsibilities:
Collaborate cross-functionally with stakeholders to gather and understand the requirements
Participate in setting standards for various stages in project lifecycle.
Lead the team to deliver a high-quality product on a defined schedule.
Highlight risks and gaps early in the project life-cycle to identify the correct path forward.
Evaluate new tools and technology to ensure an automated and stable environment
Doing Impact analysis (arch, tech teams, baseline), providing inputs to leads, propose Branching strategy & interim milestones.
Ensure meeting release criteria for key customers - Sanity, Stability, Conformance Test Suites, Power, Performance, fine-tuned testing based on need.
Task definition and work breakdown including time estimation.
Ability to work with minimal requirements and manage multiple tasks.
Collaborate closely with Software and Test Teams.
Excellent understanding of CI systems.
Maintain the current CI system including defect investigation.
Enabling a world where everyone and everything can be intelligently connected.
Get notified when new jobs are added by Qualcomm