唐杰


Tel: 183-2136-9130

Email: jie.tane@gmail.com

Education


  • 2008.09-2012.06 江苏师范大学,计算机科学与技术,本科.

Skills


  • 熟悉Git,fastlane,Instrument,Charles等开发工具.
  • 了解计算机基础, 常用的网络协议, 熟悉 Object-C, 了解 Swift 语言特性, 了解 Javascript 脚本语言.
  • 擅长组件化,路由设计等移动客户端构架设计, 性能分析优化, 数据预加载, 数据缓存等调试调优.

Work Experlence


  • 2019.04 - 至今: 咪咕视频

    负责视频产品 咪咕视频 播放模块,社交模块功能预研,需求评审,实施沟通,功能开发.

    主要完成工作:

    • 咪咕视频播放模块功能预研, 业务设计评审.
    • 设计实施挂件播放模块, 开路直播的重构. 主要包括播放子视图配置加载, 视图引擎能力(层次管理,子视图懒加载,复用), 子视图解耦, Yogo 引擎优化布局; 播放业务流程的配置加载, 流程解耦, 通过 ReactiveCocoa 响应式的刷新数据. 在重构后的框架基础上开发,相同功能iOS所需工时大概是Android的 2/3.
    • 参与短图文, 长图文, 圈子等社区相关功能设计开发.
    • 设计实施剧集中台服务, 播放历史中台服务.
    • 完成广场竖屏全屏优化工作. 通过智能数据预加载, UI复用, 异步渲染, 低权限服务降级等提高用户体验. 优化后卡顿率降低20%左右, 首帧时长稳定在0.6s以下.


  • 2018.03 - 2019.04: 一下科技

    负责视频产品 波波视频 客户端及海外项目研发.

    主要完成工作:

    • 完成波波视频中游戏模块开发. 该模块使用 Cocos2d-JS 游戏引擎, 动态加载执行 JavaScript 游戏资源包. 主要完成客户端内外拉起App到小游戏各个场景, 游戏匹配, 游戏排行, 动态加载, 定制主客户端和 JS游戏 通信协议. 难点是 Cocos2d-JS 是为单进程游戏设计的, 资源回收支持不友好, 修改引擎使适配用多个游戏复用.
    • 完成新闻阅读模块功能及持续优化, 通过预加载, Web容器复用, NSURLProtocol 拦截本地下载web资源等方案提高用户体验.
    • 封装广告库, 支持GoodAd,FaceBookAd,国内广告商等数据源.


  • 2016.03 - 2018.02: 上海游戏多

    负责手游直播产品 狮吼 客户端,主播端研发.

    主要完成工作:

    • 及时了解iOS新特性, 引入 Universal Links 解决微信跳转链接屏蔽问题, 推动尝试 ReplayKit2 新的推流方案,参考LFLiveKit协助录屏服务商改善SDK.
    • 优化发布流程. 引入fastlane, 解决客户端团队证书管理问题, 快速打包上传邮件通知测试人员问题. 提供测试生产多环境切换模块, 方便后端测试调试.
    • 抽出公共库供客户端, 主播端调用, 提高开发效率. 推动异步渲染库 Asyncdisplaykit 的应用,改善UI流畅性. 用 cocopods 将三方库打包成静态库, 减少编译时间.
    • 完成客户端基础构架, 包括网络模块, 路由模块.
    • 完成直播间主要业务功能, 包括播放策略, 消息系统, 礼物系统, 权限管理系统.


  • 2014.03 - 2016.02: 上海动享网络科技有限公司

    完成运动社区App 酷动 1.0版到3.0版的迭代开发工作. 其中1.0.3版被 App Store 推荐过.

    主要完成功能:

    • 网络,缓存,本地路由,JS和本地通信等基础服务.
    • 发布系统(图片视频编辑,加贴纸).
    • socket图片或者视频上传队列.
    • 伪流媒体视频播放(类似美拍或者微视,播放完了视频已缓存好).
    • 图片EXIF处理并且地图显示.
  • 2012.09 - 2014.02: 上海银贤信息有限公司

    完成楼盘相关App定制开发(样例铂珏公馆), 产品主要是介绍楼盘区位户型等相关信息, 并加入Unity样板房场景, 实现虚拟看房.

    主要完成功能:

    • 核心动画库封装,常用工具类封装.
    • 解决图片序列帧造成bundle太大问题(将序列帧H264压缩编码成视频,根据交互取视频中的对应帧).