skills & requirements :
- 2-5 yrs embedded system development experience
- strong c and c++ programming skills and product development experience
- strong background in software methodology and full-cycle development (design, implementation, testing, and debugging)
- experience in the computer networking industry is a plus, especially with routers, switches, wireless access points, firewalls, etc is a plus.
- knowledge of arm, x86, and equivalent embedded microprocessor architectures.
- experience with linux environment and operating system. inter-process communication, threads, sockets, mutex, and networking.
- experience with openwrt is a plus.
- source code management (git, svn, perforce etc.)
- familiarity with linux, cli, shell scripting, make files, and cross compilation.
job responsibilities :
- design and develop firmware for products and services.
- perform design and code reviews and recommend improvements.
- perform testing to validate product architecture and design.
- collaborate with other engineers on technical and design issues.
- develop firmware algorithms to handle exceptional conditions and errors.
- install and verify the firmware on embedded system.
- troubleshoot system, performance and functional issues with firmware.
- evaluate technical specification for correctness and completeness.
- prepare reports on project status, issues and risks for management.