职位描述:
工作内容:
1、负责公司商用智能WIFI路由器系统、应用层软件的开发和维护。
2、负责物联网网关、模块的相关嵌入式软件的开发和维护。
3、按技术路线分下列两个方向:
方向A:嵌入式Linux开发。基于MIPS、ARM等硬件平台进行Linux系统应用软件开发以及内核驱动模块的优化、hack、维护。
方向B:单片机开发。以ARM Cortex-M系列单片机为主,开发其裸机程序或基于RTOS的应用软件。
能力要求:
1、熟悉C/C++编程,具有良好的代码风格和编程习惯。
2、熟悉计算机体系结构及其工作原理,熟悉ARM、MIPS、AVR等处理器架构的一种或几种,能看懂其汇编代码并借助相应的调试工具进行Debug。
3、理解并能灵活运用常见的数据结构和算法。
4、对操作系统的工作原理和实现机制有一定的了解。
5、熟悉常见的版本管理系统的操作,尤其是Git的使用。
6、良好的英文阅读能力,开发涉及到较前沿的技术,一线资料均以英文为主。
(以下针对方向A)
6、熟悉Linux的操作和系统日常维护,熟练使用GNU工具链、内存分析工具Valgrind,习惯在Linux系统下工作。
7、熟悉POSIX标准和Unix/Linux API。
8、了解Linux系统内核架构及其主要接口。
9、熟悉下列至少一种脚本语言:Shell、Lua、Perl。
10、附加项:有PHP开发经验,最好有用C/C++开发PHP扩展模块的经验。
(以下针对方向B)
11、掌握ARM Cortex-M系列MCU的架构及其编程模型。
12、熟练使用一种IDE环境:如MDK、IAR、Eclipse。
13、对实时操作系统有一定的理解和使用经验,特别是FreeRTOS。
14、能看懂电路原理图。
15、注重代码性能和可靠性,最好对MISRA规范有一定了解。
注:工作年限原则上不做要求,除以上列出的能力外,学习能力也是非常重要的参考标准。上述要求如果暂时不能全部满足,只要有很强的学习能力,也可给予机会!