Qualcomm Technologies, Inc. is looking to solve the problem of delivering machine learning techniques, frameworks, and tools that enable the efficient utilization of state-of-the-art machine learning solutions over a broad set of technological verticals or designs. The role will focus on designing and implementing the evolution of development and production environments, building and supporting CI infrastructure, enabling efficient software development environments and integration pipelines, and ensuring end-to-end quality assurance and deployment of AISW commercial products.
Requirements
- Expertise with Python and in scripting languages (Bash)
- Experience in software build/release/deployment.
- Experience with Source Control Management (GIT) and CI/CD systems (Jenkins, Gitlab CI, GitHub actions, TeamCity or similar)
- Experience with Linux or Unix based OS systems software development environment
- Exposure to issues and project tracking software (JIRA) and triaging process.
- Programming/debugging skills in more than one programming language (C/C++ preferred)
- Experience with virtualization techniques and containerization technologies such as Docker
Responsibilities
- Design, implement, and maintain the CI infrastructure to ensure efficient, reliable, and functional software builds.
- Develop and optimize software build recipes to support the engineering team's needs.
- Collaborate with cross-functional teams across the globe to ensure seamless integration of development tools and processes.
- Continuously enhance the development environment and CI infrastructure while resolving any issues.
- Stay up to date with industry trends and best practices to continuously improve the development of pipelines and CI practices.
- Develop, advertise, and maintain documentation for CI processes, dev. and production environments and build strategies.
- Align with Corporate infrastructure whenever possible to leverage their expertise and support, hence enabling the team to focus on core AISW value add.
Other
- 4+ years of experience in software engineering and release engineering/devops
- Effective English communication skills (verbal, presentation, written)
- Previous experience working in an Agile environment, and collaborating with multi-disciplinary teams
- Ability to collaborate across a globally diverse team and multiple interests
- Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience. OR Master's degree in Engineering, Information Systems, Computer Science, or related field and 1+ year of Software Engineering or related work experience. OR PhD in Engineering, Information Systems, Computer Science, or related field.