diwenjie

C / C++ / Qt / Python

基本信息


  • 狄文杰
  • 大专
  • 1989年
  • 固网通信
  • 天津职业大学
  • 2012

联系方式


  • 17091083852
  • dwjlw1314@qq.com
  • https://dwjlw1314.github.io/dwj
  • https://github.com/dwjlw1314

编程语言


技术栈


  • css、html、qml、python
  • oracle、MongoDB、MySQL、postgres、Redis
  • zeromq、kafka、rabbitmq
  • ffmpeg、live555、opencv、nginx、openvas、nvidia-codec
  • docker、k8s、linux运维

个人微信


教育经历


  • 天津职业大学 2008-2012

    专业是通信技术,主要方向单片机和嵌入式系统

  • 上海嵌入式培训 2012.02-07

    主要学习C / C++,windows过滤层驱动

工作经历


  • 北京盛臣技术有限公司 2013/10 -- 2014/8

    1. 负责项目的规划、流程设计以及部分子功能的实现,Http client组件库开发。后期的项目维护、BUG修改、商务云端的界面QML+QT/C++的重构
    2. 安全项目种使用开源组件openvas对漏洞扫描管理系统的扫描库二次开发
    3. 负责windows系统U盘文件过滤层驱动的开发和测试,以及一些BUG的修复

  • 北京辰安信息科技有限公司 2014/8 – 2019/8

    1. 委内瑞拉国家中心sima图像接入服务器开发,主要负责模块框架种各个组件技术方案设计,音视频接入模块开发
    2. 厄瓜多尔ANT2期开发,主要负责视频任务的调度开发,车载设备数据(指令数据和图像数据)和海事gps数据接入
    3. 安哥拉公共安全项目oracle数据库表结构设计和维护,系统维护 (运维方向)

    主要用到开源项目有redis,nginx,postgres,ffmpeg,live555,zeromq,rabbitmq,opencv

  • 北京辰安科技有限公司 2019/8 – 2025/05

    1. 森林火灾监控系统,主要负责接入无人机图像数据进行解析推送
    2. 人脸测温识别产品,主要负责摄像头图像数据接入,对人脸进行识别,推送特征值和人脸相关信息
    3. 智能图像识别产品,主要设计总体实现框架,公共组件以及任务调度代码开发
    4. AIbox智能算法盒子框架搭建,设备管理模块开发
    5. 国标GB28181协议接入与级联

  • 北京新尖科技 2022/10 – 2023/12

    1. IABP 设备上位机整体功能设计和开发
    2. RK3568和OKT507 开发板系统裁减,提高开机速度。修改设备树适配不同显示屏
    3. 对心脏相关医学图像进行绘制,同时引入AI对心电、血压波形进行动态自动识别,辅助医护诊断
    4. 修改内核实现系统开机动画
    5. 实现心电图谱打印功能

个人项目


  • IABP(心脏辅助)

    软件环境:Eclipse、QT,QML

    开发工具:Eclipse、QT

    责任描述:负责上位机程序规划、设计以及功能的实现
    产品描述:三类医疗器械国产化创新,实现国内心脏辅助设备落地,产品包括有源和无源两大部分,有源包括上下位机和气路; 上位机显示屏实现心脏、血压、球囊相关波形数据展示,实时绘制心脏数据。上位机控制屏主要负责所有控制指令和告警信息处理 可导出供医护人员使用的pdf图形数据报告

  • SOC(Security Operations Center)

    软件环境:Liniux Debian 6.0、Windows 7

    开发工具:Eclipse、Slickedit、Visual Studio 2010

    责任描述:负责项目的规划、流程设计以及部分功能的实现,日志regex解析规则的编写
    项目描述:通过对系统内所有的资产信息进行收集、范式化、对资产进行管理的功能

  • 终端与内网安全管理系统

    软件环境:win2000、xp 、services2008、Windows 7

    开发工具:Visual Studio 2010

    责任描述:U盘文件隐藏驱动的开发和测试,一些BUG的修复
    项目描述:采用过滤驱动程序,开发实现基于FAT32/NTFS格式的U盘下的文件读写功能。实现过程如下:截获系统(windows)的文件创建和修改,使用windows系统API来实现隐藏指定后缀文件的功能。 截获系统(windows)的读写操作,如果是策略指定的后缀文件,则进行文件读写过滤。驱动层返回相应信息

    漏洞扫描管理系统:中间层模块开发和测试,单机补丁扫描器开发。通过openvas源码了解其扫描漏洞的方式和参数格式,Interlayer是一个承上启下的功能模块,通过接受java特有的指令格式, 转换成openvas识别的指令格式,返回的数据通过进步一加密生成xml文件发送至java,调用补丁服务下载补丁包安装

  • 云端平台界面重构

    软件环境:Windows7

    开发工具:QT Create

    责任描述:负责云端平台用户节点界面的qml重构
    项目描述:实现用户登录的规划和底层数据的通信,采用C++和qml语言,通过QT信号和slot来实现数据的响应,采用xml和http通用模块进行数据格式规范

  • sima视频接入模块

    软件环境:Linux RedHat6.1、Windows 7

    开发工具:Eclipse、Visual Studio 2010

    责任描述:
    1. linux下负载均衡(nginx,keepalived)和分布式缓存(redis)的集群部署
    2. 视频服务器的开发(进程内部使用sockerpair实现多路数据的并发)
    3. 音视频编解码(接入g726和h264音视频流,通过ffmpeg转换g726到aac,转换时间戳实现音视频同步)
    4. 使用zeromq开源项目实现模块数据之间的解耦
    5. live555开源项目二次开发,接受视频模块送入的ts格式数据包,进行封包处理,上层ocx控件拉流播放

  • ANT二期数据接入开发

    软件环境:Linux RedHat6.1、Windows 7

    开发工具:Eclipse

    责任描述:车载MDVR设备图像的接入,MDVR数据接入的二次开发(moduo库实现数据的实时接入),底层数据接入与平台交互实现(rabbitmq开源项目),oracle数据库主备中心数据维护 项目描述:通过TCPCopy组件实现的数据流复制,实现开发环境和生产环境的数据一致性测试和压力测试。通过海事平台提供的gps设备实现GPS数据接收和解析处理,提取坐标和预警信息,通过平台进行实时追踪

  • 安哥拉公共安全项目

    软件环境:Linux RedHat6.1、Windows 7

    开发工具:Eclipse

    责任描述:现场实施,集群测试环境部署,现场授课,讲解项目整体实现以及使用手册,postgres数据库集群搭建,为开发和测试部署docker环境,现场github私有代码管理部署,其他时间负责linux系统运维实施
    项目描述:AI人脸识别工程化,使用python端训练的模型进行前向识别,人脸识别采用mtcnn(112*112)进行检测,后续改进为retinaface(56*56)进行检测,使用5个关键点进行仿射变换,通过mxnet进行人脸特征提取和人脸相关属性的获取, 实现一帧2k图片 20ms的检测速度。 改写人体追踪为人脸追踪,使用tensorflow模型,实现连续帧的人脸追踪,提高检测性能和友好性。 工程化应用中,使用QT设计窗口集成人脸算法,实现实时识别。使用mongoos库实现HTTP检测服务,实现公司内部刷脸测温的算法支持。工程化中采用docker模式基本实现了快速部署演示的能力

    计算机视觉中,用到 mxnet和tensorflow,TensorRT以及ncnn开源框架

  • AI智能分析系统

    软件环境:Linux ubuntu18.04

    开发工具:vscode

    责任描述:系统架构设计,二期方案重构以及可行性验证,开发进度管控、任务调度逻辑实现,开发和测试部署相关docker环境和镜像,gitLab私有代码库部署和管理

    项目描述:产品核心为AI识别工程化,使用c++对不同算法的模型进行集成,利用dockerfile生产算法镜像,通过k8s服务创建独立运行的算法容器,容器内部启动完整的任务调度、AI分析、视频编解码、分析结果和告警信息入库并推送代理服务、视频流二次推送。 任务调度使用标准的protobuf协议对指令数据进行统一封装,通过kafka中间件实现数据中转,最终实现前后端数据实时处理

    1. 计算机视觉中,用到yolo开源框架
    2. 视频编解码使用ffmpeg拉流+nvidia硬编解码
    3. 代理服务器使用zeromq框架搭建

  • AIBOX智能盒子算法分析服务

    软件环境:Linux ubuntu20.04

    开发工具:vscode

    责任描述:系统架构设计,设备管理模块开发,测试整体服务合理性

    项目描述:产品核心为AIBOX算法工程化落地,使用c++对不同算法的模型进行集成,通过内置http服务接收任务消息,启动视频编解码、AI分析、分析结果和告警信息入库并推送nats 同时对设备资源进行收集,管理以及服务调度

    1. 设备资源收集与管理
    2. http通信服务
    3. 算法纳管

开发技能


  • 1. 熟练掌握掌握C/C++/,以及常用的数据结构和基本算法,具有10年的开发经验
    2. 掌握Linux下应用程序的开发过程,具有良好的编程风格
    3. 掌握OSI七层协议,熟悉串口和socket网络编程
    4. 掌握Visual Studio、eclipse C++、Slick Edit、QT Creator等开发工具的使用
    5. 熟悉QT与QML开发技术
    6. 熟悉docker容器化部署和运维
    7. 熟悉postgresql以及oracle数据库
    8. 熟悉嵌入式平台开发过程
    9. 熟悉linux系统下的redis+nginx+keepalived高可用分布式服务维护 10.熟悉cuda相关的深度学习

自我评价


有良好的代码习惯,对开源项目有参与的爱好