Skip to content

Instantly share code, notes, and snippets.

@jianghaoyuan2007
Created May 8, 2018 01:30
Show Gist options
  • Save jianghaoyuan2007/f16b063421069d1f68cab7a62f652639 to your computer and use it in GitHub Desktop.
Save jianghaoyuan2007/f16b063421069d1f68cab7a62f652639 to your computer and use it in GitHub Desktop.

联系方式

工作经历

北京沃趣互动科技有限公司 (2017/08 - 2017/12)

小友

  • 主要参与 iOS 混合式开发,礼物模块业务开发及相关的单元测试和 UI 自动化测试。

  • 由于项目初期对处理和加载 H5 的页面没有统一的规范,导致了每个开发人员随意处理参数和状态控制。默认 H5 的资源打包在其中,导致发布到 App Store 和下载包的大小变大。通过对 H5 相关的部分进行重构,规范了调用和加载方式,以及新增了页面 URL 路由选择的功能,在本地相关版本资源不存在时候访问其服务器资源。

  • 在项目的不断迭代过程中,对以下三个方面比较满意:

  1. 对 H5 相关的部分做到了规范统一调用,使用起来方便又易于维护;

  2. 采用了 MVVM 模式,使得单元测试的覆盖范围变广;

  3. 对项目中相对稳定的模块进行 UI 自动化测试,减轻了开发人员测试的工作。

北京易教空间教育科技股份有限公司 (2014/09 - 2017/04)

好学生

  • 主要负责整体框架的设计,核心功能(网络请求模型/数据库模型/Socket等),以及试题与用户模块的开发工作。

  • 在核心业务服务的实现上,由于使用了函数响应式编程,使得上层调用变得简单和清晰。

  • 遇到的最大问题是模块之间的严重耦合。通过添加了一个中间层的方案,使得耦合性降低。同时,也尝试在部分功能封装成 Pod 组件,在编译速度上也略有提升。

  • 在项目的开发过程中,有三个方面比较令人满意:

  1. 使用了 Git flow 和 Merge Request 使得开发新功能和修复问题的流程变得规范。

  2. 使用了 RxSwift。函数式编程解决了功能调用清晰安全和回调地狱的问题。响应式编程解决了在开发过程中一个状态关联多个控件和事件复杂与易出错的问题。

  3. 使用了 fastlane 自动化编译发布工具,大大简化了发布 App 的繁琐工作。

技能清单

以下均为我熟练使用的技能

  • 开发语言:Objective-C/Swift/C
  • 语言功能:ARC/Block/GCD/Runtime/RunLoop
  • 开源框架:RxSwift/SDWebImage/AFNetworking
  • 基础知识:Algorithm/Design Patterns
  • 数据库相关:SQL/Core Data/Realm/SQLite
  • 单元测试:OHHTTPStubs/OCMock/Quick
  • 效率工具:Alfred/Slate/CheatSheet/Dash

教育经历

  • 黑龙江林业职业技术学院(应用电子技术) 2007/09 - 2010/07

致谢

感谢您花时间阅读我的简历,期待能有机会和您共事。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment