We are seeking an experienced firmware engineer to work with our development team & US clients. You will be directly working with cross-country elite engineers in the world. Also, you will be joining the software team that is responsible for the development, design, diagnose and troubleshooting, and bug fixing software modules to improve product performance and stability.
Key Qualifications:
- Proficiency in C programming.
- Understanding of microcontroller architecture and embedded software development workflows.
- Experience integrating and validating hardware interfaces such as GPIO, I2C, SPI, UART, and CAN.
- Hands-on experience with debugging tools (e.g., JTAG, SWD, Segger J-Link).
- Familiar with microcontroller timers/clocks, interrupts, power mode control, watchdogs, and flash memory operations.
- Familiar with version control, code review practices, and CI/CD pipelines.
- Experience with RTOS or multithreaded firmware development is a plus.
- Experience with platforms such as STM32 and SAM-C is a plus.
We are looking for a talented programmer to serve our client who is Global Top-Tier IT company. You may have to provide quality coding solutions from simple applications to complex algorithm. The ideal candidate will have a passion for software technology and customer business requirements. Attention to details and an analytical mind are essential qualities for a successful career in programming. The goal is to design and build superior and innovative software by writing clean and flawless codes.
Programmer Job Duties:
1. Collaborate with client and consultants to review program objectives and requirements
2. Design program logic and algorithm with functionality and performance in mind
3. Write quality codes and conduct testing/debugging
4. Perform software version control and revision history maintenance
5. Document technical design documents and user operating instructions.
6. Handle multiple assignment in parallel according to their priorities
Programmer Skills and Qualifications:
1. Computer Science related education background and/or proven programming skill
2. Fluent in English, including oral communication and writing. Working/living experiences with foreigners are preferred
3. Programming skills in C# and/or VB script, SQL
4. Experiences with complex algorithm design and data structure are preferred
5. Problem Solving skill with logical and analytical thinking
6. Fast learner and team player
我們正在尋找對 Linux 系統開發 有熱情、具技術實力的工程師,負責 BSP 與驅動程式的開發與移植,協助新硬體平台的整合與功能實作。您將參與完整開發流程,並與硬體團隊合作解決技術挑戰。
我們期待您具備:
- 2 年以上相關經驗
- 精通 C,熟悉 Bash/Python
- 熟悉 Linux 啟動流程、BSP、Driver 開發
- 熟悉 PCI、USB、UART、I2C、SPI、GPIO 等硬體介面
- 具備整合問題解決與跨團隊溝通能力
目前產品進入整合與驗證階段,新成員將參與測試與除錯,快速熟悉系統架構,為後續開發打下基礎。我們誠摯邀請主動積極、樂於學習的您加入團隊,攜手打造穩定且創新的產品。
Responsibilities:
- Develop platform BSP and driver software based on Linux.
- Migrate existing software to new hardware platform.
- Design and implement new features for new requirements.
- Participate in requirement review, technical research, design, implementation, testing and documentation.
- Work with hardware team in system design, software/hardware integration and troubleshooting.
- Work with support team for customer issue analysis and solution.
Prerequisites:
- Minimum 2 years of work experience and solid in C programming
- Experience in Bash/Python programming
- Familiar with Unix/Linux environments
- Experience in Linux BSP and device driver development
- Familiar with boot loader and Linux boot process
- Familiar with Linux peripheral devices such as: PCI, USB, UART, I2C, SPI, GPIO, etc.
- Familiar with Linux environment and tools
- Familiar with software development process and tools
- Proactive, independent, self-motivated and self-leaning
- Good analytical and problem-solving skills in software/hardware integration
- Good written and verbal communication skills
A. BSP Engineer * 1
1. ARM-based Board bring up and driver porting.
2. Maintain uboot, Linux Kernel and Root File System.
3. Familiar with embedded system programming.
4. Familiar with computer vision open source such as OpenCV, OpenNI, and Realsense is a plus.
5. Familiar with Networking Protocol such as TCP/IP is a plus.
B. FPGA Engineer * 2
1. According image processing algorithm and pseudo code to implement C model and RTL
2. Familiar with camera interface is a plus
3. Familiar with MCU is a plus
4. Familiar with ARM platform is a plus.