Skip to content

Latest commit

 

History

History
197 lines (124 loc) · 9.37 KB

File metadata and controls

197 lines (124 loc) · 9.37 KB

个人简历 姓名 : 张震 电话:18969186166 邮箱:[email protected] 地址:杭州市滨江区春波南苑 分布式与并行技术岗位 或 软件开发 个人信息 民族:汉 籍贯:安徽 性别:男 年龄:24 面貌:党员 工作经历

2017.2 至 今天 海康威视 软件开发工程师 海康威视季度优秀 2016.2 至 2017.2 海康威视 软件开发工程师 海康威视代码达人奖,年度良好 2015.7 至 2016.2 海康威视 软件开发工程师 海康威视最佳新人奖,年度良好 2015.4 至 2015.7 海康威视 软件开发实习生 主要项目

 VisionMaster2.0平台开发 服务以及SDK 2016.11 至 今天  智能相机 SDK开发 2016.3 至 2016.11  VisionMaster1.0平台开发 SDK开发 2015.11 至 2016.3  千兆工业相机 SDK开发 2015.9 至 2015.11 专业技能

 熟悉 C/C++,了解泛型编程  掌握 常见数据结构,基本算法,熟悉STL,了解Boost  了解 软件工程知识,熟悉软件开发相关文档设计,熟练使用uml图  熟悉 管道-过滤器模式,服务端-客户端分布式模式,以及其他C++常见代码设计模式  了解 共享内存,Socket通信,消息队列,二进制序列化,XML处理,日志处理,动态库处理  了解 并行处理,接口处理,DLL注入与HOOK,Windbg等  了解 Windows内核编程,Windows服务开发,Linux代码移植,Makefile编写 教育经历

合肥工业大学计算机科学与技术专业:排名第七(专业前3.7% 7/183) 主要专业课程及成绩: 数据结构(95分),软件工程(93分) 软件体系结构(97分) 2011-2012 国家励志奖学金 2011-2012 合肥工业大学一等奖学金 2011-2012 合肥工业大学三好学生 2011-2012 合肥工业大学第八届ICPC程序设计大赛二等奖 2012-2013 国家励志奖学金 2012-2013 合肥工业大学一等奖学金 2012-2013 合肥工业大学第九届ICPC程序设计大赛二等奖 2012-2013 合肥工业大学第九届“ROBOCUP”机器人足球赛二等奖 2013-2014 安徽省第五届机器人大赛仿真2d二等奖 2013-2014 2013中国机器人大赛仿真2d三等奖 2013-2014 2014机器人足球世界杯总决赛仿真2d 十二强

ivy

招聘者·刚刚在线 职位描述 工作地点:上海,北京,杭州,成都

  1. 负责蚂蚁内部基础技术平台的设计与实现。
  2. 调研和把握当前的最新技术,将其中的先进技术引入到自己的系统中,提升竞争力。
  3. 对基础核心数据处理流程的进行性能优化(包括算法优化,代码实现的软优化和硬优化)。 岗位要求:
  4. 精通C/C++编程,有很强的代码阅读、分析和设计能力,熟悉C++11者优先。
  5. 热爱代码,追求高品质代码,对工程质量有深刻认识。
  6. 具有扎实的数据结构和算法基础。
  7. 熟练使用Shell Script/Python/Go/Java等语言之一进行开发,有高质量、高效率代码开发经验者优先。
  8. 熟悉异步网络编程模型,熟悉异步IO模型,精通多线程、高并发系统设计知识者优先。
  9. 精通设计原则、设计模式、OOA/OOD。
  10. 熟悉分布式系统设计者优先。
  11. 熟悉 Linux 系统下进程性能调优者优先。
  12. 具有良好的沟通,学习能力,有较强的独立工作能力和解决问题的能力。
  13. 有创意,有冲劲,有团队精神。

我的:

  1. 负责蚂蚁内部基础技术平台的设计与实现。 对应的: 负责算法平台的设计和实现 各种不同算法封装成为各个功能模块,算法平台将这些模块像搭积木一样,组合在一起, 并且不同的搭法就会产生不同的算法结果。 各个功能模块几乎无耦合性,它们之间唯一的交集就是传递的数据。 这是一个可扩展平台,任何客户都可以按照我给出的一套协议进行开发,就可以自动连接到该算法平台上, 然后和其他算法模块一起进行数据交互,完成功能。

负责整个框架的设计,预言,文档编写,以及底层服务端和SDK的开发。

  1. 调研和把握当前的最新技术,将其中的先进技术引入到自己的系统中,提升竞争力。 对应的: 不停地学习最新的技术,为的是使得算法平台效率更高,框架可扩展性更强,主要是在github和stackoverflow上查找问题。 比如:共享内存技术,protocolbuffer技术,zeromsg技术,nanomsg技术,DLL注入技术,EasyHook技术,读写锁技术 回调架构技术,循环架构处理技术。 循环处理模式,借鉴了操作系统中的循环指令的原理以及C预言for循环指令的原理应用。(引入能力)

  2. 对基础核心数据处理流程的进行性能优化(包括算法优化,代码实现的软优化和硬优化)。 对应的: 代码优化,github上学习protocolbuffer技术,效率优化,循环性能优化。

岗位要求:

  1. 精通C/C++编程,有很强的代码阅读、分析和设计能力,熟悉C++11者优先。 对应的: 阅读开源代码:zeromq源代码,plog日志系统开源代码,protocolbuffer源代码, msdn编程,编程设计获奖,机器人足球设计获奖linux C++。 了解C++11,但是不兼容vs2008(vc9, c99),不使用C++11,但是提供的库有vs2008,vs2013,vs2015版本 以及linux版本,使用makefile编译。

  2. 热爱代码,追求高品质代码,对工程质量有深刻认识。 对应的: 完全理解软件工程的开发周期以及软件开发规范的意义,开发设计过程中文档齐全且文档质量较高, 代码需要完全规范,且效率优化。

  3. 具有扎实的数据结构和算法基础。 对应的: 大学数据结构成绩优异,计算机算法编程比赛二等奖,熟悉STL算法,使用比较熟练,在算法平台中应用广泛。

  4. 熟练使用Shell Script/Python/Go/Java等语言之一进行开发,有高质量、高效率代码开发经验者优先。 对应的: 不会,主要使用C++语言。

  5. 熟悉异步网络编程模型,熟悉异步IO模型,精通多线程、高并发系统设计知识者优先。 对应的: 熟练使用异步UDP,TCP以及串口通信编程。使用异步接收和处理,使用数据序列号保证准确性和重发回溯。 完全并发设计,使用Pub-Sub模型,快速接收,同时处理,此为进程间的并行, 另外每个进程中根据接收到的数据量,开辟不同的线程,进行线程间并行,达到了两种并行,效率很高。

另外,在一台PC中, 全局图像指针,使得所有数据共享。 6. 精通设计原则、设计模式、OOA/OOD。 对应的: 了解多种设计模式,工厂模式(以及单例模式,接口句柄转换技术),单例模式(防止多个进程冲突),桥接模式(插件式开发,关键技术) 管道-过滤器模块设计模式作为前期架构,服务器-客户端分布式模式,以及Pub-Sub模型作为现在的设计模式,效率提升。 循环处理模式,借鉴了操作系统中的循环指令的原理以及C预言for循环指令的原理应用。

OOA只是对算法平台中的用户需求中描述的问题,进行模块化的处理,编写算法平台模块,描述问题的本质,区别每个功能的不同点相同点, 确定方案处理中基本功能以及不同模块之间的搭建方式。 OOD方法是OO方法中一个中间过渡环节。其主要作用是对OOA分析的结果作进一步的规范化整理,以便能够被OOP直接接受。 OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。 这三种方法的共同点都是以功能模块为划分,抽象出类以及基类。

  1. 熟悉分布式系统设计者优先。 对应的: 服务器-客户端作为每个算法模块连接到算法平台的模型,其中2.0版本Pub-Sub模式作为数据传输的模型,1.0版本使用管道-过滤器的模式。 分布式系统的效率优化以及数据的准确性,重传机制保证数据准确。 并行优化使用二进制化的数据进行数据压缩以及格式化,效率十分快速,是格式化和效率兼容的方式。 共享一个数据指针,使用共享内存发送大量数据, 所有客户端按照自己的规则进行运行,此时不需要服务,只需要将数据结果发送给服务端记录即可。 服务端进行客户端的链接,配置等等。 架构设计的方式,使得模块之间可以自定义协议,大大提高地算法平台可扩展性。

  2. 熟悉 Linux 系统下进程性能调优者优先。 对应的: 主要在Windows上进行开发和调试,然后在Linux上进行功能性的替换和支持,编写Makefile进行编译。

  3. 具有良好的沟通,学习能力,有较强的独立工作能力和解决问题的能力。 对应的: 主要是GitHub上以及StackOverFlow,MSDN,CSDN上查找资料 独立负责算法平台的框架设计以及底层服务的开发以及应用SDK的封装。 对需求定位较准,快速抽象为编程模型,考虑风险,日志以及dump抓取,windbag,debugview等方式进行问题解决。

  4. 有创意,有冲劲,有团队精神。