# 简历-赵志浩

## 赵志浩

* 年龄：27
* 性别：男
* 手机：18535150851
* 邮箱：<zhaozhihao@outlook.com>
* 毕业院校：太原工业学院 | 本科 | 2014年毕业
* 工作经验：5年
* 求职意向：**Android开发工程师**

## **北京恺跃科技有限公司（2019年3月-2019年11月）**

职位：Android工程师（北京）

### **项目：高格证券**

> 为投资者提供股票衍生品交易的平台。包含资讯、股票交易、期权交易、货币兑换、礼品卡等功能。
>
> 链接：<https://www.toweringsecurities.cn/>

职责：Android端合作开发；参与架构优化；负责期权交易、推送消息、截屏分享等功能模块的开发；搭建CI平台提升团队合作效率

技术点：

* 项目采用MVVM架构，RxJava、Retrofit实现接口数据获取，WebSocket接收资讯消息和订单推送消息
* 通过优化图片资源、编写Gradle插件对资源进行7z压缩等手段实现30%以上的包体积减小
* 通过Splash页指定特殊Theme、第三方库加载优化和类加载优化等手段，优化应用的冷启动速度
* 使用Jenkins搭建CI平台，编写pipeline脚本，结合内网服务器实现每次构建自动生成下载二维码
* 接入阿里云推送SDK实现外部移动推送功能，支持各国产系统推送通道
* 使用团队自研的路由框架Rabbits，结合注解处理器，实现原生页面和H5页面的统一跳转

## **福州必全网络科技有限公司（2018年6月-2019年2月）**

职位：Android工程师、Java服务端工程师（北京）

### **项目：BQEX交易所**

> BQEX是一个数字资产交易平台，提供市场行情、币币交易委托、OTC交易、资产管理、随机红包、口令红包、区块链金融等服务。
>
> 链接：<https://my.bqex.pro/>

职责：Android端负责所有模块的实现及优化； 服务端负责部分模块的接口开发，以及管理后台的维护和Erc20上币功能开发

技术点：

* 项目采用MVP架构，RxJava、Retrofit实现接口数据获取，SocketIO接收行情和交易信息，使用Kotlin和Java混合开发
* 抽取通用的网络框架，优化调用方式，减少冗余
* 拆分业务Module和通用工具的Common Module，优化代码层次结构，减少耦合
* 为了加快H5页面的渲染速度，实现了H5资源的离线包机制，拦截WebView请求加载本地资源，并使用基于BSDiff算法的工具实现H5资源离线包的增量升级功能
* 针对接口域名被屏蔽导致客户端无法访问的问题，通过预置备用域名结合OkHttp拦截器实现接口域名的动态更换
* 使用DiffUtil实现行情列表RecyclerView的局部刷新，解决频繁刷新数据时导致的滑动卡顿问题
* 使用SpringCloud、SpringBoot等开发后端接口，使用Laytpl开发管理后台

## **山西晋能集团信息工程有限公司（2016年9月-2018年6月）**

职位：高级软件工程师（太原）

### **项目：企业云信息化平台**

> 为晋能集团开发的一款办公信息化系统，有在线党建和煤炭贸易两个子系统，包含外网门户、任务管理、代办事项、消息管理、报表管理等业务模块，以及用户管理、角色管理、系统设置、流程设置等系统配置模块

职责：参与技术架构和项目需求调研讨论；负责部分模块的开发；解决团队成员遇到的技术问题

技术点：

* 项目采用Spring、SpringMvc、MyBatis进行开发，外网部分采用开源CMS系统实现，工作流使用Activiti实现，报表部分使用FineReport
* 完成任务管理、重点工作管理模块的设计与开发
* 完成平台与CMS系统的用户整合，配置权限的同时自动在CMS中生成用户，实现两端同时登录
* 使用自定义JsonSerializer解析日期数据，解决前端日期解析错误的问题

## **深圳正态逻力科技有限公司（2014年9月-2016年8月）**

职位：Android工程师（深圳）

### **项目：巧课力**

> 一款面向早教培训机构CRM(客户关系管理)软件的APP端。提供名单的录入分配、跟进签约等功能，以及会员的约课、排课、请假续约操作
>
> 链接：<https://www.chocloud.cn/index.html>

职责：Android端独立开发，负责所有功能模块的设计与实现

技术点：

* 项目整体采用MVP架构，降低耦合，封装OkHttp工具类实现网络请求
* 接入腾讯互动直播sdk实现视频直播会议功能
* 编写自定义控件，自定义测量过程和布局过程，实现标签自动换行的效果
* 接入百度sdk实现定位及搜索功能

### **项目：扫地机器人**

> 针对大族锐视公司的扫地机器人开发的配套APP，提供自动全局清扫、手动清扫、按地图分区域清扫、定时清扫等遥控功能

职责：Android端独立开发，负责所有功能模块的设计与实现

技术点：

* 项目使用SocketIO和Java原生Socket，根据预定的指令协议，完成数据的打包与解包，分别实现指令数据和地图数据的传输，使用HttpClient实现网络请求
* 针对地图绘制的需求，选择了基于OpenGL ES的libGDX，在一周内通过Udacity上的英文视频和官方英文文档快速上手，实现了地图的绘制，以及地图分区域变色和双指缩放等功能
* 使用Star-UML工具制作UML类图， 编写技术文档

### 专业技能

* 熟练掌握常见的数据结构和设计模式，熟练使用Java开发Android应用
* 熟悉JVM垃圾回收与内存分配，熟悉类加载机制
* 熟悉Android多线程开发和网络编程，熟悉Handler、AsyncTask、RxJava、OKHttp、Retrofit实现原理，熟悉JMM模型
* 熟悉Gradle构建的整体流程，以及自定义插件通过Transform操作class文件
* 熟悉Android事件传递机制，Activity启动流程和界面绘制流程，熟练编写自定义控件
* 熟悉TCP、HTTP、HTTPS协议，熟悉非对称加密、数字证书等机制
* 熟悉Linux常用命令，编写简单的shell脚本
* 了解常见的Android包体积优化和内存优化技术
* 了解插件化、热修复
* 英语无障碍阅读(CET-6)，偶尔翻译一些文章(Medium、Google官方文档等)
* 熟练使用SpringBoot、MyBatis、Redis等进行Java后端开发
* 了解Python，PHP，node.js，有简单二次开发经验


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://251614599.gitbook.io/resume/master.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
