International IT Company is seeking a Linux Kernel Engineer to join its team in the development of intelligent telemetry and cashless payment systems.
The Linux System Engineer will primarily (and initially) be responsible for development and implementation of efficient BSP layer for Alliance project (bootloader, kernel, init, scripting, recovery, partitioning, etc...)
This role will be also responsible for maintaining efficient build ecosystem (Gnu Make, Cmake, Yocto) to support Linux level development to be consistent within long time period and be integrated into common build ecosystem with applications supposed to be running over.
- Develop BSP level support needed for Alliance project
- Communicate effectively with chip manufacturer to solve all issues about support, maintenance and getting critical issues solved.
- Develop/port low level drivers for general periphery used in the project
- Solve all the issues with bootloader and kernel update
- Develop watchdog and recovery process
- Travel up to 10% (including international)
- 5+ years of experience in Linux System Engineering (config kernel, uboot, drivers, init, partitioning, low level firmware updates, device-tree);
- Experience in issue-tracking systems maintenance (Jira, Trac);
- Git hands-on experience (merge, rebase, revert, git workflow);
- Knowledge of all conventional Linux scripting languages (bash, python will be a plus.);
- Working knowledge of programming and software development concepts in C or C++;
- Ability to use JTAG, OpenOCD to debug boot time issues;
- Strong understanding of periphery interfaces (uart, spi, i2c, usb);
- Intermediate and higher English, both spoken and written. Be able to communicate directly with USA citizens.
- Ability to understand and correctly interpret written or verbal business and technical requirements and specifications.
- Must have a working knowledge of standard IT services related to software/firmware development and verification.
- Demonstrated ability to act effectively as a member of an engineering team in a fast paced, dynamic environment. Able to multi-task and adapt quickly.
- Strong written and verbal communication skills. Ability to very quickly understand and relate project status and issues via clear verbal and written means.
- Various boards bring-up experience (solving boot up issues, kernel tuning, hardware understanding and debug)
- Understanding of Linux network management systems(NetworkManager, PPPD configs)
- Experience with Linux Realtime specifics
- Experience supporting agile or scrum-based development practices.
Salary based on interviews (3000y.e.+)