About the job role
Job Area; Engineering Group, Engineering Group > Software Engineering
General Summary
The individual creates virtual platform simulators and enables the customers with the Qualcomm hardware IPs. The role requires working on customer requirements both short-term and long-term solutions to enable the customers to develop the applications or Software stack using underlying simulators. The role is also required to optimize the simulators and also find techniques to optimize the performance to match the customer requirements. The job includes developing, testing, and validating the end-to-end flows based on customer requirements also profiling the models, and comparing the bit accuracy based on the various experiments performed on different platforms.
Preferred Skills/Experience
- Knowledge of OS platforms and experience with the runtime frameworks like ONNX, CUDA, open CL, etc
- Knowledge of virtual platform simulators
- Knowledge of neural networks ( especially CNNs and RNN/LSTMs ), with hands-on experience using ML frameworks such as TensorFlow or PyTorch.
- Experience with developing data and training pipelines.
- 1-year programming experience using Python & C/C++.
- Object-oriented design and development skills
- Debugging and analysis skills, for root causing complex issues
- Experience with Source Code and Configuration management tools, such as Git
- Experience with enhancements to Training Frameworks and/or backends
- Previous experience working in an Agile environment, and collaborating with a multi-disciplinary team
- Experience in profiling software and optimization techniques
- Responsibilities
- The responsibilities include working on virtual platforms like Qemu and developing, testing, and validating the Qualcomm SOC IPs. The person is also responsible to work with the customers and support the simulators to enable the customer application development.
- Understand the customer requirements and develop a framework that can run on the containers like Dockers
- Transforming the existing simulators into a multithreaded framework that can be run on GP-GPU using runtime frameworks like ONNX, CUDA, etc
- Develop tools for testing the Virtual platform
Minimum Qualifications
- Bachelors - Computer Science, Bachelors - Engineering, Bachelors - Information Systems
Work Experiences
- 1+ years experience with Programming Languages such as C, C++, Java, Python, etc.,1+ years experience working in a large matrixed organization. ,1+ years experience with Database Management Software. ,1+ years experience with API.
Skills
- Mathematical Methods, Object-Oriented Programming (OOP), Scientific Analysis, Software Development Lifecycle (SDLC), Software Solutions