嵌入式固件工程师

多伦多 4天前全职 网络
面议
职位描述 职位名称:高级嵌入式固件工程师 汇报对象:固件团队负责人 部门:软件工程 就业状态: 职位概述: 高级嵌入式固件工程师将向固件团队负责人汇报,负责开发用于定制数字相机和模块的独特软件系统,集成传统相机中通常没有的功能和特性。 主要职责和责任: • 在快节奏的环境中工作,紧跟相关技术,并跟上不断变化的编程和技术趋势; • 为嵌入式设备和系统设计固件; • 使用代码和驱动程序来增强和构建新系统和产品,包括数字相机、嵌入式视频系统、无线模块(如Wi-Fi或蓝牙)、蜂窝模块、高速通信总线、带图形LCD的通用控制器等; • 在团队环境中与其他软件开发工程师合作,处理实时嵌入式通信和控制环境中的任务; • 参与下一代成像技术、系统和子组件的设计; • 使用软件设计技术和程序,按照公司指南完成一系列相关的工程任务,如调查和调试、设计、开发和测试; • 将复杂的技术和分析技能应用于现有软件,以进行增强和添加新功能; • 参与软件文档、设计、代码和测试用例的审查; • 与硬件工程师合作进行原理图审查,以确保软件资源与硬件一致; • 对开发的软件进行功能测试,以确保其正确操作和兼容性; • 指导和培训其他软件工程师学习他们需要掌握的技能和行为或应对的挑战; • 参与与潜在和现有客户及供应商的关系发展和维护。 就业要求: 教育水平 • 计算机科学或相关领域的学士学位 经验水平 • 5年以上嵌入式固件工程经验 能力和技能 • 扎实的Jira/Confluence和Git经验 • 低级Linux内核和嵌入式Linux发行版工具技能(Yocto、Buildroot、OpenWRT) • 强大的Boot-loader开发技能,U-Boot • 强大的嵌入式编程技能(C/C++(C++17)、Python和Shell脚本) • 图像和视频处理方法以及相机ISP编码经验(V4L2、GStreamer、OpenCV) • Agile开发方法论经验 • 优秀的书面和口头沟通能力 • 强大的问题解决和调试能力 • 基本思维能力 • 理解、遵循并参与软件架构政策设计的能力 • 面向对象分析和设计的理解和经验 • 熟悉AI/ML框架或在嵌入式环境中有AI/ML实践经验将是一个优势 • 能够阅读电子原理图将是一个优势 • 能够使用基本电子仪器(示波器、万用表等)将是一个优势 • 有Ambarella平台经验将是一个优势 • 以下最佳实践经验:TDD、结对编程、CI/CD实践将是一个优势 • 嵌入式项目的CI管道组织实践经验将是一个优势 • 硬件在环测试自动化项目组织实践经验将是一个优势 其他要求 • 有资格在加拿大工作