个人介绍
我是程序员客栈的monokuma315,一名后端开发方向工程师 毕业于长春光华学院,担任过广东铭鸿数据有限公司的物联网工程师,负责过中海油自助终端开发 熟练使用C++,多线程开发,服务端开发 如果我能帮上您的忙,请点击立即预约或发布需求
工作经历
2020-07-01 -2021-03-30广东铭鸿数据物联网工程师
C端开发和终端维护:利用C++,C#和.NET知识,协助开发公司中海油自助终端项目的客户端开发,收集数据通过接口于后台传输完成各项业务交易并完成8583报文协议接入,加密算法实现,硬件DLL接入项目。与UI设计及后台开发人员团队协作,协助中海油自助终端上线,并且负责自助终端项目维护。高效优质完成产品界面和功能的实现。
教育经历
2016-09-01 - 2020-06-30长春光华学院物联网工程本科
荣誉奖项:全国大学生电子设计大赛二等奖(2018)、赛佰特杯物联网大赛二等奖(2017) 主修课程:C语言程序设计、C程序设计综合实验、操作系统、数据结构和算法、数据库(MySQL/SQL Server)、微机原理与接口技术、计算机网络、数字电路与逻辑设计、无线传感器网络、传感器
技能
项目说明:解决中海油油站没有自助消费和执行油卡业务操作终端的需求 ● 解决思路:用winfrom搭建客户端,连接读卡器,扫码枪,身份证读写器,密码键盘和打印机等硬件,执行用户的油卡操作.通过TCP将用户的业务信息传给后台执行,接收后台执行结果,显示给用户 ● 技术要点:.net,winfrom,硬件dll注入,AES加密,DES加密,ISO8583银联通信协议,支付宝*支付API,硬件卡片操作 ● 开发平台:vs2012,.net3.5 ● 工作职责: 1.协助客户端界面开发和框架开发 2. 实现IOS8583加密解密模块开发 3. 协作验证技术文档接口正确性 4. 实现硬件dll注入并且封装 5. 按照技术文档开发消费,油卡圈提,圈存,交易查询,积分查询等功能 6. 项目单元功能测试. 7. 项目上线后维护测试
项目说明:从0到1搭建类似*的服务端系统,实现用户,店家注册,登录,用户客服一对一聊天,电商群天群,创建群,关注店铺等功能需求。 解决思路:通过使用muduo搭建服务端使业务和网络IO分离,在服务端程序上通过json设计并创建私有通信协议通过解析对应的私有协议内容分发业务和执行业务。 技术要点:mduo网络库,私有协议,MySQL,STL,基于CAS的atomic的原子操作,C++11基于语言的thread库,redis,NGINX实现TCP负载均衡,nlohmann/json 开发平台:C++,gcc7.5.0,ubuntu18.04,MySQL 8.0.33,redis,vscode,CMake 工作职责: 1.基于muduo网络库作为项目核心模块,提供高并发IO服务,解耦网络IO和业务实现模块代码 2.使用 nlohmann/json库的基础上设计以json序列化和逆序列化做为私有的通信协议 3.配置NGINX基于TCP的负载均衡,实现聊天服务器集群,提高后端服务并发和负载能力 4.基于redis的发布订阅功能,实现跨服务器通信 5.使用MySQL数据库作为项目数据存储方式 6.使用数据库连接池提高数据库存取功能 7.使用单例模式的懒汉线程安全模式创建业务类和配置类,通过读入文件数据更改程序配置
项目说明:解决用户在电商平台上搜索物品名联想和物品搜索推荐模块。 解决思路:搭建服务端,通过服务端发送用户的关键词进行关键词联想搜索.将联想词推送给客户端,当用户输入完搜索词后,在服务端查询本地数据内容,进行余弦相似度计算排序,最终将排序结果推送给客户端展示给用户。 技术要点:Reactor,线程池,偏移库,索引库,倒排索引库,词典库,simhash,TF-IDF,最小编辑距离,余弦相似度,LRU,JSON,redis,多线程缓存系统,内核定时器,线程局部存储,日志系统,单例配置类,MySQL存储转移,性能分析火焰图 开发平台:C++11,g++ 7.5.0,ubuntu18.04,MySQL 8.0.33,perf,FlameGraph 工作职责: 1.基于Reactor模型,实现高性能高并发的服务端。 2.将词典库,网页库,偏移库,索引库,倒排索引库,进行数据库表设计,设计成网页库表,单词权重表,中英文词典库,中英文索引库。 3.利用最小编辑距离算法,对用户输入的检索词进行解析,求出编辑距离最小的联想词发给用户,实现关键词联想。 4.利用余弦相似度算法,解析用户检索词,利用余弦相似度算法对网页排序,将每篇网页摘要信息发给用户。 5.在服务端将查询结果以list数据类型存入redis,优化关键词查询效率。 6.利用LRU算法和线程局部存储机制,为工作线程分配两级 LRU Cache 作为网页检索模块的缓存系统,并使用内核定时器 timerfd 实现 Cache 数据的更新、同步和持久化。 7.利用perf测试程序性能,利用FlameGrap对perf.data数据生成火焰图。