个人介绍
于2018年正式进入计算机行业,并且一直担任C++开发工程师,共进入两家互联网公司,在任职期间均负责公司产品的主要模块的开发,主要负责底层数据和内核通信模块。在职期间绩效良好,年终奖金均在2-4+。
在任职期间学习到了很多的技术,也攻克了不少难题,技术方面精通STL标准库、熟悉数据结构与算法、网络编程(包括socket/websocket、 i/o模型、多线程/多进程等)、调用常用第三方库和封装静态库等。可使用关系型数据库(mysql ,、oracle、Sqlite、SQL server 等)以及redis, mongdb等;掌握常见网络协议(tcp/udp、http等)。
工作经历
2020-09-07 -至今上海歆仁信息科技有限公司C++工程师
一、将已有的对sql数据库文件加密解密的Windows项目完成移植至适配Linux系统并导出为.so动态库文件。 二、【主动云提取】模块项目,是配合咱们公司的采集系统完成主动云提取模块的开发,需要基于我自己封装的libcurl类完成对市面上常用的APP内所有数据的提取。 任务要求: 1.完成基于libcurl库且可跨平台的http client类的封装。 2.根据项目及进度要求至少完成十五个以上APP的数据提取(扫码、短信验证至少完成其一方式,如果官方接口都支持,则必须全都具备)。 3.依据整体项目结构的要求,完成对既有APP的数据进行格式化导出及完成前后端交互(数据类型严格按照手机数据采集文档进行提取并导出)。
2018-02-07 -2020-09-04上海一番堂实业有限公司C++工程师
协助项目经理开展项目开发工作,明确并确认公司对软件及开发内容的需求,参与项目的需求分析工作,根据IT部工作计划负责项目某一模块的实施工作,主要负责期货交易系统中间件的开发,包括数据层面与前后端的通信和数据库的操作等。
教育经历
2012-09-01 - 2015-06-28湖南水利水电职业技术学院工程造价专科
在校期间自主学习C\C++编程及了解python,在校表现良好,曾获奖绘画一等奖
技能
开发环境:windows 开发语言:C++ 项目名称:王者之剑交易系统 开发工具:VS 项目描述:与市面上的期货及股票交易软件相似,能够完成与香港外盘期货的交互。 项目功能: 1) 行情交易系统、期货相关图表绘制、下单条件和下单指令的理解与实现。 2) K线数据的存储与调取。 3) 内部模拟交易程序(包括行情读取和多种下单、撤单指令的交互实现)。 4) 风控管理:强平线的设置、保证金的要求等。 5) 后台管理:后台搭建服务器配置数据库,开发过程中通过调用后台api获取数据,包括用户信息、权限、合约、品种、交易所等多种信息 技术实现: 1) api调用、http通讯、websocket服务器和客户端搭建、dll调用、SQL server数据库操作、多线程。 2) 整体模板设置为终端、中间件、后端,基于后台服务器为中转,完成终端与中间件的指令交互;中间件获得请求后调取Sptrader的api完成相关操作并获得数据回复至终端反馈完成后续处理。 3) 中间件调用Sptrader的api完成订阅和取消订阅产品信息异步获得行情和成交返回数据,获取到数据后进行处理转化成要求格式,通过websocket实时传输至后台转至终端显示。并且将实时数据分别转化为各种不同级别K线数据后进行分组存储至数据库。 4) 交易相关:当后台收到终端或者达到触发条件时对中间件通过http协议发送交易指令,中间件接收到指令后调用外部api进行操作,得到异步返回数据再次通过http发送至后台。 5) 模拟撮合交易程序属于中间件的分支,中间件程序建立websocket server获取中间件行情程序发出的行情数据,同时建立http server等待后台传输相关交易指令,收到指令后自主根据内存中行情数据进行判断与处理,完成一整套的交易流程。
开发环境:Windows 开发语言:C++ 项目名称:局域网视频直播平台 开发工具:Qt Creator、Sqlite3 项目描述:该项目是类似斗鱼等直播平台,即在该平台中每个人注册登陆后都可以成为主播并作为房主拥有自己的房间,主播可以打开摄像头和麦克风进行直播,该房间其他用户均可以进入并可以在房间内观看直播、群聊、发送弹幕、给主播送礼等。 项目功能: 1) 用户注册及登陆(防重复注册及登陆)。 2) 直播大厅,用户可以创建直播房间、刷新房间列表并加入直播房间。 3) 直播房间,主播可以打开摄像头和麦克风进行直播。 4) 直播房间,主播和观众可以进行文字群聊并生成弹幕显示在直播界面上,可以看到同在该房间内的用户列表。 5) 直播房间,观众有账户余额,可以充值和给主播送礼,主播收到礼物后增加余额。 技术实现: 1) 采用Tcp协议实现服务器端与客户端通信。 2) 服务器端采用多线程处理用户注册、登录,保存信息到Sqlite3数据库。 3) 所有房间列表和房间内用户列表使用QListWidget添加删除。 4) 客户端的音视频数据传输,采用的Udp组播功能。 5) 客户端与客户端通过Udp协议实现文字群聊及转发。