概要
昨天我们聊到业务熟悉,一个高效的技术团队一定是熟悉业务,上线能通过技术手段对潜在的风险进行规避,支持业务的快速迭代。我们需要大局战略观,同样不能缺少对业务细节的管控和了解。只有综合去了解才能使团队的既有成就感,又能支持起业务的快速迭代。熟悉业务是第一步,接下来就是架构选型。为什么高效的技术团队需要聊到架构选型呢?从三点去说:技术成熟度、员工成熟度、企业成熟度。
技术成熟度
我们知道一项技术的成熟度是需要实践项目的检验,出来一种新药也需要临床试验。我们在进行架构选型时,首先需要考虑的是技术成熟度,那怎么去评估这项指标:
- 是否能支持未来3-5年的业务扩展和增长。
- 目前开发市场的占比和人才的占比。
- 是否有成熟的企业应用。
- 后续需要的持续投入人力和技术成本。
首先支持业务的高增长、高可用、高并发是必须考虑的,这些一般根据个人的实战项目经验就可以做出决定。当天互联网OTA平台都在使用的基础语言就是java。当然不只是OTA 平台、京东、阿里等电商平台也在大量使用java语言。所有当时对基本语言的确定就是否明确。Spring 和 Mybaits的应用就是更加顺其自然,不仅能帮忙我们做很好的bean 容器管理,对我们的开发效率有了很大的提升。而且市场认可度非常高,要招聘到相应的人才也比较容易。后续企业的投入也能减少。毕竟java 很多都是开源的。
员工成熟度
在开篇的序中知道一个20人的团队有核心4个员工就能组件高效的团队。这里就需要对员工成熟度的一个考量。
- 技术栈和公司背景的考虑。
- 业务理解程度。
- 喜欢创新还是能高效执行
- 编码能力的考量
一个成熟的技术经理一定是有团队基础。所以经过多年的项目经验能够团结一些核心员工。所以在核心员工的搭建上可以找原来的同事,不限于上一家公司的同事。只要有过相同经历的技术能力和执行力都不错的招聘2个以上。找出一道两个核心老员工,这个核心注意了一定不是里面的技术大神或者总监、架构师,如果让他们去接受新事物是需要的成本太高。所有找出里面中级程序员,业务理解能力强,学习能力强、执行力强的人。
企业成熟度
架构选型不是简单的看别人有什么自己用什么,还得根据公司的实际情况,如果本来公司就只有20个人的全部研发团队,业务也不是爆发增长类型,非得去搞一个多牛逼的微服务架构。需要多少台机器,切分多少个应用去支撑多高的并发。这些都是过渡设计。途家网当时是有100+的研发团队。当年做了携程、去哪儿、蚂蚁的民宿业务整合。所以马上就需要提供一个高并发、高增长的业务。必须有架构一个高可用、高并发的业务系统。
- 企业技术团队规模。
- 未来对技术的投入。
- 企业的天花板在哪里?
10-20人的研发团队,可以先不考虑系统的微服务。团队规模和业务量增长后一定得考虑项目的拆分问题。也不是越细分越好,维持10人左右的团队和业务功能点。
总结
系统架构的选型,需要从技术、员工、企业多维度去考虑,有一些是经验、有一些是实实在在的数据。熟悉高管的战略思想,对未来准确定位,才能有张有弛的进行系统架构的设计,不能太快容易扯到,更不能太慢当技术阻挡业务的发展就是罪过。
网友评论