About the role
- Design, develop, and optimize embedded software components using C/C++ and Java in a Linux environment.
- Work on both user space and kernel space software, including device drivers and system-level applications.
- Collaborate with hardware engineers to bring up and debug new boards and custom peripherals.
- Integrate and validate new hardware platforms with the embedded Linux OS.
- Maintain and enhance existing embedded Linux systems, ensuring performance, reliability, and scalability.
- Participate in system architecture design and code reviews.
- Write clear technical documentation and contribute to product design discussions.
- Troubleshoot and resolve low-level system issues, including kernel panics, memory leaks, and hardware/software interactions.
Requirements
- Bachelor’s or Master’s degree in Computer Engineering, Electrical Engineering, Computer Science, or related field.
- Strong proficiency in C++, with clean, modular, and maintainable code writing practices.
- Good knowledge and experience in Java.
- Expertise in embedded Linux, including: **Linux kernel internals **Device tree configuration **Custom kernel module development **Bootloaders (e.g., U-Boot)
- Experience with Yocto, Buildroot, or other Linux build systems.
- Understanding of common communication protocols: I2C, SPI, UART, USB, etc.
- Solid debugging skills with tools like GDB, strace, perf, oscilloscope, logic analyzers, etc.
- Familiarity with cross-compilation toolchains and board bring-up.
- Upper-Intermediate English proficiency.
- Strong soft skills: communication, proactivity, and a positive attitude.
- Direct cooperation with the already successful, long-term, and growing project.
- Flexible work arrangements.
- Collaborative and supportive team culture.
- Truly competitive salary.
- Help and support from our caring HR team.
Applicant Tracking System Keywords
Tip: use these terms in your resume and cover letter to boost ATS matches.
Hard skills
C++Javaembedded LinuxLinux kernel internalsdevice tree configurationcustom kernel module developmentbootloadersYoctoBuildrootcommunication protocols
Soft skills
communicationproactivitypositive attitude
Certifications
Bachelor’s degreeMaster’s degree