Linux Software Engineer
Description
About Quectel:
Quectel is one of the leading global suppliers of cellular IOT module and antennas. We exist to connect devices and people to networks and services, powering digital innovation and helping to build a smarter world. Our products and services help make life more convenient, efficient, comfortable, prosperous and secure. At Quectel, you will have a huge impact on the quality of growing suite of products and services we offer to our customers.
A career at Quectel means joining a unique global team, driving innovation, improving people’s lives, and helping to build a smarter world.
https://www.quectel.com/
_____________________________________________
About the role
Design and implement software architecture for embedded Linux systems (Yocto or Ubuntu based). Customize, tailor and optimize the root filesystem (rootfs). Develop and package communication and multimedia SDKs. Handle system-level tasks in projects, such as OTA upgrade, system crash/hang analysis, power consumption optimization, AT commands and production line tool development. Provide technical support to customers and resolve platform-side and customer-side issues.
Key responsibilities
Design and implement software architecture for embedded Linux systems (Yocto or Ubuntu based)
Customize, tailor and optimize the root filesystem (rootfs)
Develop and package communication and multimedia SDKs
Handle system-level tasks in projects, such as OTA upgrade, system crash/hang analysis, power consumption optimization, AT commands and production line tool development
Provide technical support to customers and resolve platform-side and customer-side issues
About you
Bachelor's Degree in Computer Science, Electrical/Electronic Engineering, Telecommunications or a related field
At least 3 years of experience in embedded Linux system development
Proficient in C and familiar with C++; familiar with scripting languages such as Shell and Python
Solid understanding of Linux system fundamentals, including process management, memory management, file systems and the driver model
Familiar with Yocto or Buildroot build systems, with hands-on experience in rootfs customization and tailoring; familiar with generating and using cross-compilation toolchains and SDKs
Experience in Linux application development and open-source software porting; familiar with multi-threading, inter-process communication (IPC) and socket programming
Able to analyze and debug system issues such as crashes, power consumption and stability; proficient with debugging tools such as gdb
Proficient with development tools such as gcc, make/cmake and Git
Good communication and teamwork skills; able to work directly with customers to resolve technical issues; good command of English