Job
Description
Job Area: Engineering Group, Engineering Group > Software Engineering
General Summary:
10+ years of experience in the embedded domain to design, develop and support software solutions on multi-core ARM (V7A or V8A)/CPUs, Strong C/C++ programming skills.Embedded Platforms experience including low-level firmware, kernel (Linux or QNX), Hypervisor/Virtualization and user-space components.Design and development of software for heterogeneous compute platforms consisting of ARMs, GPUs, DSPs, and specialized hardware accelerators in an embedded SoC systems with J-TAG or ICE debuggers.Experience in real-time SW development for embedded products.Hands-on experience using JTAG to debug real-time problemsHands-on experience using different version control systems like perforce, GITExpertise in Development of PCI RC/EP Device Driver.Expertise in writing kernel space device drivers in areas of MMU, Power(clocks/thermal).Solid understanding of Linux/QNX boot flow on embedded systems.Solid understanding of computer system architecture (core, cache, memory models, bus architecture, etc.). Experience in Board Bring-up, Device drivers, peripheral buses (SPI, I2C, USB), Memory controller DDR, eMMC, UFS and Performance.Solid understanding of different debug methods offered by Linux Kernel/QNX.Motivated self-starter with excellent verbal and written communication skills, demonstrated ability to work with engineers/partners/customers across different geographies.Hands-on technical lead who is not hesitant to dig into the details where needed to get first-hand knowledge of the issues and play an active and personal role in steering team success
Minimum Qualifications:
Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 4+ years of Software Engineering or related work experience. OR
Master's degree in Engineering, Information Systems, Computer Science, or related field and 3+ years of Software Engineering or related work experience. OR
PhD in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience. 2+ years of work experience with Programming Language such as C, C++, Java, Python, etc.