As a Software Development Engineer - Linux Kernel, you will engage with an experienced cross-disciplinary staff to conceive and design innovative consumer products.
You are someone who is passionate about consumer products, and excited about delivering final products to the public. You desire to help people’s everyday life in any way with high technology and therefore always be customer centric at daily work. You are a self-motivated individual with good teamwork spirit.
Key Responsibilities: - Participate in the full development life cycle, including from defining product requirement to supporting end customers. - Understand schematics to work with hardware engineers and provide feedback. - Read datasheets from chip vendors and develop device driver based on datasheets and schematics. - Design and implement software at both kernel and user space to support board bring-up and deliver new features. - Read existing source code to debug and fix software problems. - Identify performance bottleneck and optimize system performance. - Design test cases and help QA implement them, and debug problems reported by QA. - Function under pressure and be able to meet project milestones and deadlines. - Collaborate with multiple functional teams internationally. - Learn new technologies and apply the knowledge quickly.
- Bachelor or Master Degree in Computer Science or Electrical Engineering - 5+ year software development experience in C, C++, and/or Java - Experience with Linux kernel. - Industry software development experience with firmware and device drivers.
- Industry experience with multiple SoCs - Experience with embedded devices, preferably IoT devices - Experience with Android - Able to travel internationally occasionally - Familiar with Ubuntu development environment - Excellent leadership, verbal and written communication skills