Project Role :
Silicon Firmware & Embedded Engineer
Project Role Description :
Write the software that powers and operates a silicon chip. Develop pre-silicon firmware and software with a direct interface to hardware. Integrate and develop C tests/APIs and software build flow. Perform design and code reviews. Test and validate product implementations.
Must have skills :
Embedded C++
Good to have skills :
NA
Minimum 3 Year(s) Of Experience Is Required
Educational Qualification :
15 years full time education
Summary:
As a Software Development Engineer, you will engage in a dynamic work environment where you will analyze, design, code, and test various components of application code across multiple clients. Your day will involve collaborating with team members to ensure the successful implementation of software solutions, while also performing maintenance and enhancements to existing applications. You will be responsible for delivering high-quality code and contributing to the overall success of the projects, ensuring that all components function seamlessly together and software meets the required standards
Roles & Responsibilities:
-
Expected to perform independently and become an SME
-
Required active participation/contribution in team discussions
-
Contribute to provide solutions to work related problems
-
Collaborate with cross-functional teams to gather requirements and translate them into technical specifications
-
Conduct thorough testing and debugging of application components to ensure optimal performance
-
Document design specifications, code changes, and testing procedures to ensure clarity and maintainability
-
Strong understanding of software development life cycle methodologies
Professional & Technical Skills:
-
Proficient in C++.
-
Strong experience Embedded Linux platform/BSP development. Hands-on with U Boot, Linux kernel, Device Tree, and Yocto
-
Strong Linux internals knowledge: bootflow, IPC, memory management/MMU, interrupts, SMP
-
Good Knowledge in Custom Hardware Bring-up controllers – ARM, Power PC , X86 Hands-on SoC/platform bring-up experience
-
Optimize memory usage — stack/heap tuning, memory pools — and perform system-level profiling using tools such as perf, strace, ltrace, and Valgrind.
-
Comfortable reading low-level firmware and kernel code.
-
Strong debugging skills with GDB and at least one of OpenOCD/JTAG, Lauterbach, or similar tools
-
Good Understanding of Build Systems. Working Knowledge of Cmake, Makefiles. Exposure to Integrate embedded builds into CI/CD pipelines using Jenkins or GitLab CI.
-
Working knowledge of communication protocols – PCIe, I2C, RS232, SPI, UART
-
Exposure to Oscilloscope, Logic Analyzer, Trace32, Hardware Debugger, FPGA Fundamentals
Additional Information:
-
The candidate should have minimum 3 years of experience in Embedded C++.
-
This position is based at our Bengaluru office.
-
A 15 years full time education is required., 15 years full time education