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.