合同制 C++ 开发工程师 - 伦敦混合办公
AND Digital 合同制 C++ 开发工程师职位,负责为安全关键型医疗技术构建可靠的嵌入式 Linux 软件。 工作涵盖 C++17 应用组件、报警、持久化、监督和故障管理。
描述
- 根据硬件和操作系统遥测数据开发技术报警条件
- 为患者传感器、信号质量和外部监测实现报警
- 集成硬件报警接口,包括静音控制、报警级别验证和遥测
- 构建故障处理与恢复机制
- 开发上电、硬件兼容性、GPU 和系统自检功能
- 实现故障安全状态、故障管理、看门狗和系统监督
- 支持中断会话检测与恢复
- 开发应用日志、审计日志和日志轮换功能
- 构建支持原子写入和校验和写入的存储接口
- 管理固定存储分区中的读取、删除和会话列表
- 开发患者数据的打包、排队、刷新、保留和检索功能
- 支持数据回填和历史数据展示
- 创建后端数据与 GUI 之间的版本化接口
- 管理患者传感器和会话生命周期
- 支持会话元数据、恢复和优雅关机
- 开发电源按钮处理和受控断电流程
- 支持 USB 数据导出、服务工具和设备服务处理程序
- 支持软件更新、确认和回滚流程
- 实现日志提取和审计日志记录
- 负责一个独立的应用领域,从设计到代码合并、测试和文档编写
- 与软件架构师及负责相邻组件的工程师协作
- 为高度监管的安全关键型医疗技术产品作出贡献
任职要求
- 具备在嵌入式 Linux 上开发现代 C++17 应用的丰富经验
- 熟悉 RAII、定宽类型、std::atomic、多线程以及无锁或有界队列
- 具备开发确定性行为和可靠性至关重要的软件的经验
- 具备无分配或低分配运行时环境的经验,包括预分配内存和固定容量容器
- 具备端口与适配器架构或六边形架构、接口和依赖注入经验
- 具备丰富的 Linux 系统集成经验,包括服务、看门狗和系统级故障管理
- 具备 IPC 和序列化技术经验,例如 FlatBuffers、Unix 域套接字或命名管道
- 具备 CMake、自动化测试和 CI/CD 流水线经验
- 具备交叉编译经验,最好熟悉 aarch64 平台
- 具备扎实的单元测试、代码覆盖率和质量门禁经验
- 能够在正式工程流程中工作,包括同行评审、可追溯变更和有文档记录的设计决策
- 具备开发安全关键型、任务关键型或高度监管软件的经验
- 具备开发医疗器械或其他安全关键型系统的经验(理想条件)
- 具备在受监管环境或生命科学领域工作的经验(理想条件)
- 具备较高的 AI 应用能力(理想条件)
- 了解 IEC 62304、ISO 13485 或同类受监管软件开发标准(理想条件)
- 具备医疗报警系统或其他报警与故障管理系统经验(理想条件)
- 了解 IEC 60601-1-8 或同等安全标准(理想条件)
- 具备状态机驱动的监督器和故障管理系统经验(理想条件)
- 具备 NVIDIA Jetson、CUDA 或 GPU 加速处理经验(理想条件)
- 具备 Yocto 和嵌入式 Linux 板级支持包经验(理想条件)
- 具备 systemd、sd_notify、D-Bus 和 journald 经验(理想条件)
- 具备 OpenSSL、TensorRT 或类似外部技术经验(理想条件)
- 具备使用 Docker 构建开发环境的经验(理想条件)
- 具备 GoogleTest、行为驱动测试或 Gherkin 经验(理想条件)
- 具备用于工具开发和部署脚本的 Python 经验(理想条件)
- 具备参与软件 FMEA 活动并实施风险控制的经验(理想条件)
福利待遇
- 致力于打造包容性工作场所的平等机会雇主
- 如有需要,招聘流程全程提供合理便利
