熟悉 Android 相关 SDK,理解 MVC 、MVP 、MVVM 架构,使用过 Glide、EventBus、RxJava、Retrofit、GreenDao(SQLite)、ButterKnife、AMap、ARouter 等技术框架,并理解框架的基本运行原理;熟悉 Apk 包体积优化、熟悉内存泄漏处理与内存监控调优、熟悉界面绘制优化;有模块化 、组件化迁移改造经验。了解 Kotlin 基本语法与使用。了解 Jetpack 部分库与 Jetpack Compose 的使用方法。
熟悉 Flutter 开发,熟悉 Flutter 与原生通信,理解Flutter Widget思想,使用过多种三方框架并根据实际需求进行代码本地化改造。
具有一定的自学与适应能力,上手快,对于新接触的项目有一套快速熟悉的方法论;责任心强,对于自己负责的项目能够认真对待,在业务迭代的过程中能够持续对项目架构进行调整,对腐烂的代码进行优化重构,对于遗留问题和复杂问题持续跟踪;对新技术保持兴趣,能够在项目的低风险区域对新技术进行安全尝试。
超级账号是一个基于会话功能,以企业管理为主,同时包含了部分ToC业务的综合类App。
企业管理方面,超级账号包含了企业注册与认证、人员添加与组织架构管理、岗位管理、审批流程与权限控制设置、考勤管理与绩效管理、项目管理、文档管理、任务管理、文件管理、物资管理、资金与财务管理、客户管理等一系列功能;
除此之外,超级账号还面向教育、餐饮行业进行了一些定制,提供了校园共享雨伞、大学论文送审、餐厅点餐、餐厅交易管理等功能。
我在项目中主要完成了以下工作:
1.参与项目的需求评审、设计评审,对任务工时进行评估,确定任务分配方案;
2.对项目进行 MVP 架构改造,建立模版代码;对项目尝试组件化改造(因后期迁移到 Flutter 停止);
3.进行业务开发,对接后端,编写用户界面,功能自测,问题修复;
4.调研测试第三方库与新技术的落地方案:采用 Glide 替代 Picasso、项目引入 Kotlin 开发等;
5.会话相关重点功能方案制定: 按序发送与接收、可靠消息、会话列表与消息本地化存储、消息三端同步、失败自动重发、图片视频压缩与缓存、文件断点续传等;
6.界面渲染用户体验优化:制定先跳转后请求的规则,避免跳转前等待;针对不同页面特性,采用本地缓存或骨架图优先展示,减少进入后等待;
7.内存优化:使用 Leak Cannary 进行内存泄漏检测并修改;使用 Android Profile 进行异常内存监控与排查;
8.运行性能优化:记录函数或接口执行时间,对返回慢的接口反馈优化或拆分,对执行慢的函数进行代码评审和重构;
9.Apk体积优化: 第三方库的移除与替换、转换图片格式,动态下发图片资源等方式;
10.编写通用组件:会话 Websocket 的维护(建立、收发、重连)、文件上传下载组件、文件预览组件(下载、缓存)、消息发送组件(发送、缓存、重试、策略设定)、本地数据库查询与更新组件(主要是会话列表与消息相关)
11.Flutter 混合开发方案选型,迁移计划制定与分工;
12.应用打包与各应用市场上架、隐私合规等平台问题处理;
13.协助组内其他成员解决复杂问题。
超级账号是 Android 与 Flutter 混合开发的一款 BC 融合的企业管理App,融合了创建企业、建立组织架构、设置审批、发布与追踪任务、文档编写与展示、文件管理等企业相关功能;与此同时,也支持了个人信息展示、个人动态发布、个人空间、校友圈、智慧餐厅等个人用户相关功能。
极酷运动是一个可以记录用户运动轨迹的App,其中也包含各种活动和场地的列表,可以通过App参与各式各样的活动,通过App查看各个运动场地的详细信息。