CTO训练营第二季毕设:初创团队工程能力建设

原创
新闻
CTO训练营第二季学员毕业设计作品赏析

【51CTO.com原创稿件】

导语:CTO训练营第二季已经圆满收官,作为一个学习分享和社交的平台,CTO训练营提供的不光是知识分享,还有一个属于技术管理者的人脉圈子。结课之后,第二季学员提交了毕业设计,来对四个月以来的学习进行总结与回顾,部分论文由CTO导师进行点评和打分。

初创团队工程能力建设 李德强 上海云盾高级工程师

一、公司介绍
进入某互联网金融公司时,公司成立只有创业4个月的时间,因公司定位于金融P2P对接电影产业,在不到一年的时间内研发团队从十几人迅速扩大为一百多人。工作中负责过运维,项目研发,架构等工作。
因为是初创型公司,当时很多的制度、技术、人员等不健全,主要表现为下:
团队成员以初级为主,多是工作1-2年的程序员,工作时间最长的也不超过4年
原始而笨拙的技术,FTP代码发布系统,服务器管理混乱,毫无体系可言
业务系统是基于开源及购买的商业系统,系统与业务脱节
研发中产品,测试等角色缺失
二、团队发展
在项目研发过程中,早期PHP研发是4个人,分成WEB,APP,业务、后台四个系统。后期随着业务的发展,接入多家合作方,同时将用户、票务、卡券,缓存,API等拆分成独立的子系统。因采用阿里云服务器所带来的存储性能问题,而对数据库进行了分库分表升级。电影业务相关的技术人员,包括后端研发,前端,测试,APP等扩大为近50人的团队。
业务在发展的过程中,进行团队管理,做了如下工作:
加强流程管理,规范各部门之间的工作流程,引入禅道项目管理系统,标准化各部门之间工作的输入输出。
推动运维实施自动化,标准化等工作,建立相应的运维规范。服务器的安装以脚本化与镜像为主。搭建全新的版本管理系统,代码发布系统,监控系统。
定期晨会、周会,以敏捷的方式推进工作,及时发现问题及时处理。
组建了架构组,承担基础的技术预研工作,为重大的技术升级保驾护航。
定期分享,做到知识共享。
团队拆分,根据业务的发展,将团队拆分成职责清晰的小团队。
三、问题反思
在业务发展的工作中,虽然做了很多的工作,但还是有很多不足的地方,总结如下:
项目管理中,部分工作流程,代码规范,有制定,没监督,没执行。
上线前没有做好代码质量检查,不良的代码经常导致线上bug。
系统进行拆分及分库分表升级后,与之相对应的维护成本迅速增加。
自动化运维不足,在服务器管理,环境部署,权限管理等方面相对不足。
业务发展,需求增多,研发人员增加,研发,测试,上线,线上问题排查等各环节的时间成本越来越大。
四、解决方案
根据在训练营中学到的知识,在组织管理及团队的工程能力方面都需要加强。但对于目前的问题,更倾向于用系统解决问题,组织架构管理辅助,避免过度的依赖人,因为人是有惰性的,易变的,但系统是不变的。提高团队的工程能力,针对出现的问题构建各种自动化的系统是更靠谱的一件事。工程能力就是用工具化,系统化,自动化的方式解决工作中遇到的各种问题,提高工作效率的能力。
4.1解决认识问题
工程能力与业务开发是两种不同的思维能力。业务开发侧重于满足需求,快速满足需求是业务发展的关键。而工程能力更侧重于规则,工具思维,系统性思维,自动化思维,将重复的事情交给自动化的工具来完成,用系统来减少人为失误。
工作价值问题。改变研发人员原有的工作习惯,从自身来看,极易影响工作效率,遇到抵触。首先要结合当前工作中的问题,失误,痛点讲解系统化的工程带来的好处。结合研发人员个人的兴趣爱好,将要实施的项目与个人的价值结合起来,树立共同的目标。让研发人员觉得这事值得做。
系统性认识团队及技术体系中的需要。随着团队的增大,部门之间的合作及沟通需求越来越大,沟通成本也越来越高;随着系统的拆分,扩展,各系统之间的管理,也需要通过工具化,系统化的方式来化解架构升级带来的复杂性问题。每月两次,技术团队的痛点分析,方案研讨,前景讲解会议能有效解决团队的系统性认识问题。让团队所有人明白,做什么样报系统,解决什么样的问题。
技术方案及工作前景不清晰问题。请外部的大牛到公司做技术交流,将成熟的解决方案清晰的程现给团队,提高团队在认识能力,消除团队成员在认知上的分歧。让大家了解什么样方案是好的方案。
4.2、解决人的问题
人的问题既包括A+类人才的缺失,经验丰富研发人员的不足,也包括组织架构上的不合理。
提高知名高,吸引人才加入。提高自己及公司在互联网技术圈的知名度,吸引更优秀的人才加入。提高知名度的方法有活跃于互联网技术社交网站,如到知乎答题等;进行公开的技术分享,提高外部人才对自己公司业务及技术体系的认识;开通公司及个人的技术公众号或博客,将经验输出。
从招聘入手,选择A+类人才加入。A+类人才的标准包括需要有开朗的性格,乐于沟通,高效率的工作,有良好的教育背景,有成功的项目实施经验。A+类人才不好招,宁缺勿滥。
在没有足够人才的情况下,从现有人才入手,选择次优的人,针对性的进行培养,解决当前业务中的痛点。现有人才中,虽然不及A+类人才,但在工作效率上还是很不错的,缺乏的是认识、经验与视野。有针对性的讲解,训练,提升还是很大的,而且性价比高。
在组织架构上设立专属项目组,投入资源进行系统研发。
4.3、系统方案
方案设计是以节约资源为前提,充分利用各种开源或商业的工具,联接业务及组织中的各种角色,解决技术及管理上的痛点。整个系统分为5个了系统,分别是:
运维平台:实施服务器标准化,可配置化,基于ansible实现自动化部署。日常测试使用的开发环境,测试环境,预发布环境基于docker实现,可方便进行快速部署,回归测试。基于openldap做权限管理,可便于接入各种开源系统。基于zabbix实现服务器监控。基于jumpserver实现堡垒机功能,资产管理与审核功能。基于jumpserver二次开发,扩展成自己的运维平台。
日志平台:使用 logstash进行日志数据收集,Elasticsearch进行日志数据处理,Kibana 实现数据可视化,基于Elasticsearch实现异常日志排查。
版本管理工具:选择gitlab,因其具有web界面,良好的权限控制,方便进行代码review。
持续集成工具:选择jenkins,结合git plugin与gitlab webhook插件,可实现代码的持续集成;使用sonarqube 进行自动化的代码质量检查。
项目管理系统:使用jira进行项目管理,因为jira稳定成熟,功能丰富。
4.4、方案落地
因为采用开源的工具,方案落地,相对而言不会很困难。整个项目预估3个月,分五个阶段实施:
***阶段:openldap,gitlab、jira等基础环境的安装;git迁移到gitlab;制作jira的使用教程,组织***个小型项目,迁移试用。预计2周。
第二阶段:部署elk,配置elk抽取各种日志,实现基本的日志分析处理。部署zabbix监控系统。预计两周。
第三阶段:制定服务器规范;部署jumpserver,实现堡垒机功能;基于ansible实现软件的自动化安装;基于docker,快速部署多套业务环境;配置jenkins,实现多套环境之间的代码持续集成,代码提交后的自动化检查。预计一个月时间。
第四阶段:jumpserver是基于django开发的一个可视化的堡垒机系统。基于jumpserver进行二次开发,做成自己的运维平台。集成openldap的用户管理功能,实现界面化操作;集成软件的自动化安装功能,多套环境的部署及重复部署实现界面化操作;联接ELK,实现异常定位排查。预计一个月时间。
第五阶段:持续改进运维平台,实现服务器的一切操作可视化,自动化,减不人为带来的不必要的麻烦。
4.5、管理协助
只依靠系统自动化不一定能提高团队个人的工作能力及工程能力,但系统却能将以前无法量化的工作进行量化,以数字化的形式将个人的工程能力呈现出来,以此作为考核指标,将有助于团队提高个人能力,培养以结果为导向的文化,提高执行力。可以基于两项报告作为考核的依据:
Jira的任务完成程度报告,考核员工的执行力
Sonarqube的代码质量检查报告,考核员工的工程能力
五、总结
来训练营的这4个月时间,让我认识了很多的朋友,与导师及同学的交流讨论让我开阔了视野,不同思维方式的碰撞让我看到了自己的不足,体系化的课程也让我看到自己能力的片面性,也努力的方向。感谢这么长时间以来51CTO的精心组织,感谢一起度过这4个月的导师,同学。

导师点评:前阿姨帮CTO左文建
评分:90
评语:思路清晰,分析问题深入,方法对路。 不过知易行难,工程能力的提升,需要团队付出长期的努力。相比事而言,更难是寻找人才。在方向正确下,只要努力就会有希望,有结果。 加油!

CTO训练营是51CTO高招主办,面向中高端技术管理者的学习分享及社交平台,汇集业界资深技术高管、投资人资源,以“打造技术经理的MBA”为核心,全心全力帮助中国***潜力的技术管理者,成长为未来技术领域的***及榜样。第三季CTO训练营将在原有优质内容体系的基础上,延伸四大选修活动,满足不同技术管理者的个性化需求。

【51CTO原创稿件,合作站点转载请注明原文作者和出处为51CTO.com】

责任编辑:KOL 来源: 51CTO
相关推荐

2016-12-23 16:11:02

CTO训练营

2016-12-23 11:42:44

CTO训练营

2016-12-22 16:49:05

CTO训练营

2016-12-23 09:55:22

CTO训练营

2016-12-22 16:15:49

CTO训练营

2016-12-23 14:01:06

CTO训练营

2016-12-23 14:16:28

CTO训练营

2016-12-23 14:20:39

CTO训练营

2016-12-23 13:44:04

2016-12-23 09:23:34

CTO训练营

2016-12-22 17:11:39

CTO训练营

2016-12-23 10:50:43

CTO训练营

2016-12-23 14:35:57

CTO训练营

2016-12-23 09:34:39

CTO训练营

2016-12-23 15:00:42

CTO训练营

2016-12-23 10:47:01

CTO训练营

2016-12-23 17:11:04

CTO训练营

2016-12-23 17:30:33

CTO训练营

2016-12-23 17:52:59

CTO训练营

2016-12-23 10:39:26

CTO训练营
点赞
收藏

51CTO技术栈公众号