Minimum Qualifications :
- Bachelor's degree in Computer Science, Electrical / Electronics Engineering, Engineering, or related field and 3+ years of Hardware Engineering or related work experience.
- OR
- Master's degree in Computer Science, Electrical / Electronics Engineering, Engineering, or related field and 2+ years of Hardware Engineering or related work experience.
- OR
- PhD in Computer Science, Electrical / Electronics Engineering, Engineering, or related field and 1+ year of Hardware Engineering or related work experience.
- Summary :
- Qualcomm's SoC Validation Team (SVE - System Validation & Emulation) is part of the central SoC digital hardware organization responsible for the overall quality of the SoC silicon. The Validation team works closely with architects, designers, verification engineers, software engineers, and customers.
- We are looking for self-motivated engineers who will be part of bare-metal SoC validation team and will have the following responsibilities.
Responsibilities
Design, develop, debug system / IP validation framework to be used in bare-metal and light-weight-RTOS environment for SoC validationUnderstand the SoC architecture, new features and prepare test planDevelop / port / enhance system validation content based on system level use cases, low power use cases, find HW bugs and root cause themInterface with Design / Software teams for test plan and debugsInterface with various IP validation team and cross functional teams(Design / SW) for test plan creation and debug complex issuesUse silicon debug hooks to measure power / performance / coverage and other KPI metricsMinimum Qualification :
Bachelor's / Masters degree in Electronics and Communication Engineering / Computer Science or related field2-5 years of working experience (Candidates with less experience with good academics from premier institutes can also be considered)Mandatory Skills :
Good knowledge and understanding of Embedded SW architecture and development in C, C++, AssemblyC language expertise for low level programming, assembly language for any processor, C-assembly interworkingGood knowledge of ARMv8 / ARMv9 / x86 / PowerPC CPU architecture, Interrupt handling, Cache coherency, IO CoherencyGood knowledge of SoC architecture having Multicore / Multiprocessor with SMP / heterogenous coresKnowledge of Operating systems / RTOS / Linux kernel internals, multithreading, scheduling policies / locking mechanism, Virtual memory / MMU / paging etcUnderstanding of memory management, weakly ordered memory model / pipelining of memory systems / memory barriersIn-depth understanding of software build toolchains comprising of compilers, Makefiles, linker / scatter filesCompiler / Linker : Proficient in using compilers and linkers such as GCC, CLANG, RVDS, LLVM, Experience in optimizing code and resolving linker issues to ensure efficient and error free buildsMakefiles : Strong understanding of the makefile syntax and usage. Ability to create, modify and maintain Makefiles to automate the build process and manage dependencies effectivelyExperience in using JTAG interfaces and tools for debugging HWScripting languages such as Python, shell scripting etc.Desired Skills
Exposure to SoC architecture paradigms interconnects, power management, emulation(pre-Si) environmentExposure to working on emulation / pre-si environment is added advantageExperience working with boot code for ARM processorsSoftware development for silicon enablement, silicon validationBoard Bring-up / Bring-up of hardware-software solution on FPGA / emulation platforms and on fresh SOC designsExposure to build automation : Experience with build automations tools such as Jenkins and experience in creating automated build pipelines to stream line the development processExposure to Regression testing : Understanding of the regression testing methodologies and tools. Ability to design, implement and execute comprehensive regression test suites to ensure software quality and stabilitySource code management : Proficient in source code management tools such as Perforce, Git, SVN. Experience in branching merging and resolving merge conflictsCode Reviews : Ability to conduct thorough and constructive code reviews to maintain code quality, ensure best practices and identify the areas of improvements
Skills Required
Embedded C, arm architecture , Build Automation