Familiar with scripting languages like Python and Shell
Strong understanding of OS internals and memory management
Responsibilities
Develop and port Board Support Packages for PowerPC and ARM
Modify device drivers and related configuration files
Conduct board bring-ups and validate hardware
Create custom utilities for hardware benchmarking
Perform unit level tests and functional integration tests
Develop multi-threaded user space applications
Debug and configure OS extensions and boot loaders
Benefits
Confidential handling of application information
Opportunities for personal and professional growth
Work within a globally recognized company
Access to innovative projects around connected devices
Join a collaborative work culture focused on excellence
Full Job Description
Job Description
Development and porting of Board Support Packages (Boot loader & Linux kernel) for PowerPC, ARM architecture which includes developing and modifying device drivers, configuration files, I/O initialization and startup routines, memory management, OS configuration, extensions to kernels, boot loaders, etc. Perform board bring-ups and hardware validation/ debugging. Development of custom utilities which can useful for benchmarking of target hardware or help application and verification team. Performing hardware/software unit level tests and/or functional integration tests. Development of multi-threaded user space applications.
Technical Skill [Required]:Must possess detail knowledge of Linux Device Drivers, subsystems and Linux Environment. Board Bring-up. Programming language: C/C++. Operating System: Linux. Good understanding of device drivers, file systems, memory management and OS internals. Scripting language: Python, Shell. Tools: JTAG based hardware emulators, Hardware debugging tools e.g. Oscilloscope, Logic Analyzer, Protocol Analyzers, Kernel debugging tools e.g. ftrace, GIT, Subversion, GIT based code maintaining tools e.g. Gerrit, GitLab.