前言
小公司的前端团队,加班是常有的事情,996也不在话下,日常除了与后端PK,与产品掐架,与测试辩论之外还要写代码保证项目按排期顺利完结。是否有什么神仙方法能够提升一下效率,即保证项目按排期完成,同时又降低沟通成本,时间成本呢?
前端关系图谱
先来捋一下前端在项目中的关系图谱
可以看到几乎每个环节都涉及到前端的工作量,假设由一个前端负责一个项目,除了开发工作外还有各个评审会议,还有各种调优沟通,如接口对齐,字段对齐,组件场景覆盖不全,UI改版,逻辑变更等等,时间成本巨大,细节工作如麻。这还没有涉及到工作交叉,项目并发的情况
如何提效
比如我们最多时有18个项目,涉及PC,H5,小程序,技术栈包括R/V/小程序,前端8人,后端30几人,测试8人,运维6人,前端人力明显吃紧。
通过下面的几点做法并经过一段时间的实践,感觉效果还不错
内容分组
根据前端工作的特征,大致将前端工作分成如下几个部分
-
技术部分
名称:架构组
内容:所有项目的架构,技术攻坚,项目环境等
原因:这部分是基础性,通用性较强的工作,是一个长期的内部任务
优点:新技术跟进,稳定架构,降低与运维的沟通成本,稳定开发环境 -
项目页面实现
名称:公共组
内容:参与所有项目UI/UE的实现,产品路由逻辑实现及相关的UI细节调优
原因:样式调优,页面实现,公共组件等工作在一个项目中时间占比一般 >30%,ToC项目更盛,在多人项目或者交叉项目中,样式调优的时间占比往往成为拉低效率的深坑
优点:降低与设计沟通成本,统一UI,快速定位非逻辑问题,可前置开发,先实现前端标准化 -
项目业务实现
名称:业务组
内容:主导项目,一跟到底,负责产品页面逻辑实现,接口联调,字段对齐,上线部署等
原因:这一块沟通成本、实现成本较大,项目时间占比 > 50%
优点:UI开发、逻辑开发分离,接口可前置联调,可细化理解产品需求
横向分组
按端分组,以业务组人员为核心,分为PC端,移动端两个小组,每个小组选出一个组长,组长除了自身的项目,可以帮助组员进行有效沟通,降低项目开发沟通的时间成本,并帮助定位项目卡点
纵向分组
纵向分组是以项目来组建的临时团队,以横向分组为基础,由业务组人员主导项目并分配任务,排期进度。可以保证任一项目至少有3人的团队参与(业务组成员 + 公共组成员,+ 架构组成员)
技术栈平衡
要做到人人可为替补很重要的一点是要确定主要技术栈,不可避免的是公司一般都会有些二开项目,应该抽专人负责次要技术栈,这样可以降低团队学习成本,保障业务按时输出
想做到的部分
标准化落地
对于公司项目来说标准化是一个顶层设计,需要领导决心,部门间合力的项目。对于小公司来说我觉得太有难度了
微前端化
理想当中它是一个能解放前端人力的一个工具,通过各种组合来满足业务需求,但好像也需要标准化落地才行啊,哈哈
先分享到这里吧!