一、岗位名称
工业上位机 C++ 软件工程师
二、岗位职责
使用 VS2017/VS2019,基于 C++、MFC/Win32 开发工业设备监控、自动化测试、产线管控类 Windows 桌面软件,负责需求拆解、界面设计、编码实现、单元自测与版本交付。
封装底层绘图模块,使用 GDI/GDI + 实现自定义控件、实时曲线、设备拓扑图、数据表格,解决界面闪烁、资源泄漏、高刷屏卡顿等渲染问题。
搭建稳定多线程架构:UI 主线程分离设备采集、通信、日志、存储子线程,合理运用临界区、事件、消息队列做线程同步,避免死锁、数据错乱、界面阻塞。
开发设备通信模块:TCP/UDP Socket、串口、USB 虚拟串口,解析各类设备二进制私有协议;支持多台设备并行连接、自动重连、心跳保活。
业务功能开发:实时数据展示、历史数据存储回放、参数配置、故障告警、权限管理、报表导出,使用 INI/XML/ 本地数据库持久化配置与记录。
配合硬件、测试工程师整机联调,定位软件崩溃、通信异常、逻辑 BUG;输出软件设计文档、操作手册、调试说明;制作安装包、软件授权加密。
长期稳定性优化:7×24 小时连续运行优化,内存泄漏排查、Dump 崩溃分析、大数据量渲染性能调优,封装可复用基础组件库。
三、硬性任职要求(必备条件)
学历:本科及以上,计算机、软件工程、电子自动化、测控相关专业;
工作经验:2 年及以上 Windows C++ 工业上位机完整开发经验,有量产工控软件落地项目;仅 Web / 嵌入式 / 移动端经验不匹配;
语言与界面能力
精通标准 C++、STL、面向对象、内存管理;
熟练 MFC 消息机制、自定义控件、对话框 / 单 / 多文档架构;精通 Win32 原生 API、GDI 绘图、窗口子类化;
多线程能力:熟练多线程创建与同步机制,掌握跨线程 UI 安全刷新方案,能独立排查死锁、竞争访问问题;
通信能力:熟练 Windows 串口、Socket 网络编程,可独立阅读硬件协议文档,编写二进制封包 / 解包逻辑;
工具调试:熟练 VS 断点调试、VLD 内存检测、Dump 崩溃定位;会 Git 版本管理,能编译集成第三方 C++ 开源库;
综合素养:逻辑清晰,具备软硬件协同调试能力,规范编写文档,能独立承担完整功能模块开发。
四、优先加分项
有自动化产线、伺服电机、机器视觉、工业检测、通信机框监控上位机开发经验;
熟悉工业标准协议:Modbus RTU/TCP、OPC UA、CANopen 等;
具备大规模点位曲线、设备拓扑可视化、批量设备巡检开发经验;
熟悉 SQLite/Access 本地数据库、Excel 报表导出、软件加密授权方案;
会 QT、C# 混合开发,有组件化、模块化框架封装经验;
熟悉多客户端并发、远程升级、自动化测试脚本开发。