千人技术团队背后的CTO:CTO培训远不止技术培训团队从7年前的不到10人发展到千人技术团队。谈起这7年的经历和故事,远比纸上谈兵“CTO要不要写代码”来得精彩。CTO在现实中面临的挑战不仅限于技术挑战,还有业务挑战、团队挑战、愿景挑战等等。9月9日,国美互联网CTO训练营第四期开班课上,国美互联网CTO于斌平为40位技术经理分享了在国美7年CTO经历及对CTO七大基本能力的理解。地点。了解一下,从这些经历中我们也可以窥见一些感悟。能力1核心目标管理:明确公司目标,充分了解业务,使技术目标与公司目标相匹配。作为CTO,必须时刻明确公司的目标,实现公司的目标才是重中之重。二是配套的技术目标。充分了解业务,比业务更熟悉业务,如何让业务成长起来,是每个做技术管理的人必须考虑的问题,也是最根本的价值体现。每个小团队的业务/技术人员只需要了解他们所负责的业务即可,但是作为CTO,他们必须比这些人更了解业务。计划是什么。支撑业务,推动业务发展互联网行业常说技术要支撑业务,但支撑业务正常发展才是基石。只有在业务正常发展的基础上,才能站在未来、放眼当下,才能进一步通过技术创新驱动/优化业务发展。核心目标下的实质内容是企业愿景与战略目标、经营目标、技术战略、产品规划、行业分析等战略层面的部分,以及系统架构、系统建设等战术层面的部分。如果CTO和公司/CEO的目标不一致,只有两条路,要么调整一致,要么离职。技术经理在充分了解公司的目标后,必须建立非常明确的技术目标。主要列出以下几点:总体技术战略目标当前要做的事情&近期要做的事情&中长期要做的事情技术路线&实施方法技术架构建立与团队领导标准、体系、过程考核方法当然,这些内容并不是一成不变的,而是一个不断修订的过程。能力二项目管理:精细化是“基本功”,合理分解是“基本规范”,沟通是核心不管有多少部门,不管是瀑布/敏捷开发,还是各种大小目标,一切都可以分解成小事,一切都可以看作一个项目。如下图,左边是九大项目管理,右边是四个关键环节。左图所示的技术经理必备的常用基本技能,大家已经很熟悉了,这里就不一一展开了。右侧是抽取需求、分解需求、沟通、如期上线四个关键环节。提炼需求。面对老板和业务提出的诸多需求,核心目标是提炼出“基本功”。当然,只有充分了解业务情况,才能做出清晰、正确的梳理和判断。分解要求。提取核心需求后,将需求按照优先级进行合理拆分,分解为多个项目阶段,就是“基本规范”。这相当于敏捷开发过程中的合理迭代,但记得先推出一个简单易用的版本,然后再纵向切入,逐步推进。交流。沟通是项目管理的核心。在管理过程中,沟通对最终的结果起着决定性的作用。如期在线。项目的最终目标是“如期上线”,否则之前所做的一切都将白费。“如期上线”并不是简单地上网完成任务。质量和成本缺一不可,尤其是质量更不能忽视。更不用说为了上网而上网了。从表面上看,该项目表面上已经完成,但实际目标与最初的目标相差甚远,甚至用户无法使用。其中,沟通、资源整合、成本控制这三个方面贯穿于整个管理过程,无论项目大小,对于大多数技术管理者来说,都会在一定程度上遇到一些困难,分享一些方法以下。沟通前面说过,沟通是项目管理的核心,但是很多技术经理并不擅长沟通。如何与不同的人交流?与地位高的人。提倡跨级沟通,但需要采用一些技巧,如发送邮件、抄送直属领导;比如汇报前向直属领导打招呼;如果是非正式的,“巧合”,随便提一下;人们进行交流。同等级的人。与同级别的人交流,需要将技术语言翻译成非技术语言,让业务、金融等不懂技术的管理者能够更好地理解。与团队和下属。创业/互联网公司与下属沟通比较开放,职级的概念比较少。但对于大型和传统公司,下属会不自然地防御/尊重上级。技术管理者需要做的是先放宽心态,然后像朋友一样坦诚交流。与合作伙伴。与合作伙伴沟通时,一定要时刻记住,你代表的是公司,然后合作共赢,找到利益的平衡点,先把可能出现的情况讨论清楚,以免日后出现不必要的麻烦。资源整合一个项目无论完成与否,资源都会在其中起到很大的作用。大多数资源在整合之前都是分散的。为充分发挥其全部效能,转化为竞争优势,为企业创造价值,还需要采用科学的方法,对不同来源、不同用途的资源进行配置和优化,使有效的、有价值的资源成为可能。综合发挥“1+1>2”的放大效应。业务、营销、财务是企业内部资源,合作伙伴、市场、投资人是企业外部资源。每个人都知道这一点。这里需要注意的是,领导/领导的直属领导是很好的内部资源,用好会事半功倍。成本控制很多人觉得技术管理跟成本无关,采购只考虑成本。它不是,例如:时间和人力。比如一个项目如果管理不好,因为工作效率或者其他原因,不仅会加班加点完成,还会招人太多。这是一种无形的总成本浪费。比如一个项目开发了三个月,最后没有放弃,也是一种成本的浪费,也可能失去机会。招贤纳士。招当前需要的人,有些技术人才可能不适合现阶段。小型创业公司不需要人才,只需要成熟的技术来支撑业务,保证业务的正常运转。当业务达到一定规模时,就必须招贤纳士,否则就是浪费成本。先进的技术。很多时候,时间和人力的浪费是因为招聘人才和研究先进技术造成的。因此,在每个阶段,都需要考虑技术是否合适。技术解决方案。不要迷信最好的技术方案,根据实际情况用最快的方式达到自己的目的。综上所述,上述核心目标和项目管理是技术管理最基本的能力。分享一下CTO必备的看家本领。如下图所示,一个合格的CTO必须具备四大看家本领,即架构搭建、产品能力、研发能力和基础设施建设。能力三架构构建:CTO要精通大架构,而不是只提架构的单一技术架构。很多人认为是代码的结构,涉及的方向也是用什么框架,是开源还是自研。这里分享的架构是一个CTO应该精通的大架构,如下图:业务架构。业务架构是CTO首先要了解的,即所在公司的业务构成和发展规划,以及具体的业务以及它们之间的关系,是相关的还是独立的。应用架构。对应业务,决定使用什么样的系统配套支持,是采购还是自研,是纵向独立划分,还是横向逻辑划分。数据架构。一定要了解数据流的现状。许多技术专家会忽略数据架构,他们对数据如何存储、如何传输和安全机制了解不多。通常,信息安全问题是由数据流的状态引起的。技术架构。下面介绍一些系统架构,比如代码框架、中间件、服务治理等等。运维架构。开展运维建设、安全建设等工作,做好风控工作,做好系统、账户、财务的安全保障工作。从业务、应用、数据,到技术,再到运维,是一个CTO应该有的视角。请记住,这不仅仅是一个单一的技术架构,那是架构师或研发主管应该做的。下图是电商行业的基本技术架构:如图所示,用户层/流量入口、业务单元、应用系统、业务服务、中间件、平台层非常清晰。电商行业有一个比较通用的架构。作为CTO,需要了解每一层的数据流向和运行机制,谁是负责人,谁是关键负责人。下图展示了架构设计的原则:开发者对这个图很熟悉,可用性、可扩展性和成本这三个原则大家应该也很熟悉,这里就不展开了。作为首席技术官,您必须走在潮流的前面。如何在扩展性、成品和可用性的约束下构建架构?建议遵循DID原则,按照20倍量进行设计,因为会出现双十一等流量激增的情况。案件。之后,开发将以3倍的体积实施,部署将以1.5倍的体积部署。能力4产品能力:交互和业务逻辑是基本功,理解技术实现和项目管理是升华。作为CTO,首先要非常清楚自己开发的系统/产品,最终用户是谁?根本的诉求是什么?之后是用户体验、业务和产品设计以及产品创新。一定要记得从用户、业务、运营三个角度来设计产品。用户体验产品整体要简约而不简单。它应该为用户提供视听体验并强调舒适性。在操作上,尽量满足易用性/usability。目标信息应尽可能醒目、贴近,便于用户识别和表达内心情绪。业务设计需要充分理解产品背后的业务逻辑,梳理业务流程,绘制业务蓝图,设计业务场景和功能,结合市场目标和公司业务需求分析优化流程。业务、财务、数据、用户运营的设计尽可能形成一个闭环。产品设计是基于软件产品的业务蓝图和功能设计。最重要的是如何让用户“爽”。***的输出就是PRD(结果不是目标)。在产品创新创新方面,要根据潜在需求开发差异化或全新的产品,激活潜在需求转化为真实市场,实现产品价值,带动业务发展。需要明确的是,产品的上线只是一个开始,还需要以数据作为持续运营和优化的检验标准。这里需要提醒的是,有些产品经理注重交互,但对业务逻辑不是很清楚。有的产品经理很懂业务逻辑,但是交互能力很弱。对于一个合格的产品经理来说,交互和业务逻辑是两项基本技能。最重要的是,还必须知道产品在技术上是如何实现的,并具有一些基本的项目管理能力。一个产品经理,走得比较远,比较顺利,一定是高层懂CEO,对外懂市场和用户,中层懂业务,在执行上也懂一些开发逻辑。能力5研发能力:不是某个技术专家,而是团队整体的调整和标准的制定。说到研发能力,很多人会认为我是技术专家,一个人可以撑起几个人。但是项目多的时候,能顶几个呢?因此,要从技术专家晋升为CTO,需要在关键技术、交付效率、代码规范、开发模式等方面做出很多调整和标准。关键技术。作为开发负责人,您可以亲自制定代码框架,并确定使用哪种技术框架或解决方案。时刻保持学习最新的技术和信息,至少在理念上与行业同步。还需要不断研究技术。代码管理。制定合适的代码管理规则,制定合适的分支模式,建立代码管理规范。标准规范。项目前期需要建立一系列的编码规范、接口规范、中间件使用规范、加密规范、密码规范、字符集规范等。发展模式。是用敏捷还是瀑布,要看实际情况。对于轻量化需求,或者研发人员较少时,可以采用敏捷开发模式。业务量大的时候,选择瀑布模式,把项目规划清楚,把细节拆分好,可以避免出现需求不匹配的情况。发展质量。要实行代码审查机制、单元测试机制、持续集成、自动构建和自动发布。能力六基础管理能力:从传统的响应式服务到自动化、可持续集成,提升基础管理能力,更多体现在运维上。服务器宕机、网络故障、如何配置/部署/监控等都属于运维范畴。运维早期是ITSM(ITServiceManagement),它以流程为中心,是帮助企业有效管理IT系统的规划、开发、实施和运行的一套方法。部署主服务台进行监控。故障发生后,服务台负责通知相关开发人员,响应机制与性能挂钩。ITSM的整体流程流畅严谨,但缺点是事后管理。现在提倡ITOM(IT开发、运维、运营管理),专注于IT运营管理。从开发设计开始,就考虑上线后如何运维,如何设计代码架构,部署架构,如何发现问题,发现问题后如何自动故障转移。修复,包括申请资源,搭建配套的CMDB-DCMS等,ITOM更侧重于一种IT运维或运维的管理思想,以持续交付和自动化运维为目标。整个运维流程大致由四个步骤组成,分别是服务监控、配置和变更管理、硬件管理、运维机制。服务监控。自动监控硬件、软件、流量、数据和故障。搞好问题和故障反馈机制、故障响应机制、处理机制。此外,还需要设计故障预案,实现预案的自动执行。配置管理。包括集群、部署、变更管理等硬件管理。网络和服务器架构、VM、资源分配机制。运维机制。自动化部署和自动化运维是基本目标。还需要搭建日志平台、告警机制和相应的处理机制。如下图,就是我们的基础设施(GCP):能力七团队能力:在具备团队能力的基础上,还要了解和学习一些领导艺术团队能力。主要概括为六点,如下图所示:作为一名CTO/技术经理,除了具备团队的能力外,还应该懂得一些领导艺术。这个时代的竞争,不仅仅是兵与兵的较量,更是将领与将领的较量。只有不断放大领导的能量,才能提高团队的整体竞争力。也可以说,领导力是现代竞争的核心要求。领导艺术主要体现在三个方面:多部门协作、工作效率的提高和快乐工作。跨多个部门的协作。合理选人,知人善任;扬长避短,以宽待人;合理利用,积极培育;用人要积极激励人才。提高工作效率。统筹兼顾,抓住重点,明确指示;及时做出决定;有想象力、洞察力、应变能力,善于调动他人的积极性。快乐的工作。平等待人,尊重他人,讲究方法;简化语言,积极倾听,控制情绪;主动;创造相互信任的环境。***,什么样的人可以晋升为CTO?在我看来,CTO的晋升主要看三个方面:懂技术、懂管理、懂培养。懂技术。CTO/技术经理必须自始至终懂技术,不断研究和学习新技术,才能带领技术人员前行,给团队提供高超的建议和合理的技术架构和技术方向判断。懂管理。技术再好,如果不懂管理,不懂核心目标,不懂业务,不懂管人,就不是优秀的CTO/技术经理.实践。技术和管理是基石,培育是长期的过程。个人的眼界和能力修养可以通过不断的历练得到升华。站在山脚下和站在半山腰上不一样,在山顶看到的景色和感受也不一样。从山脚到山顶的路,绝对不是一帆风顺的。不仅是汗水和辛苦,更重要的是不经历风雨如何去做。见彩虹。这一切的过程,都是经历,都是修炼。“横见岭,侧见峰,远近高低不一”。“五神山归来不看山,黄山归来不看山。”这个形象体现了一个人的境界。总之,不会打仗的士兵,不是将军;只会打仗的士兵,当不了将军;CTO/技术经理的晋升之路,是一个不断学习、历练、升华的过程。祝你成功!于斌平,国美在线、国美互联网CTO,公司技术和产品负责人,全面负责国美互联网技术和产品。2010年8月带领5名技术人员从“零”开始搭建国美互联网技术体系。到目前为止,团队规模已达到1000人。成功确立了国美互联网的产品、技术和大数据战略,建立了配套的年销售额超500亿的技术体系,主导建设的国美互联网技术架构在中国电商互联网行业处于领先地位。CTO训练营,作为中高端技术经理人的学习和社交平台,邀请一线互联网公司CEO、CTO和知名投资人做客,提供企业战略、业务运营、团队针对从业10年以上的技术经理管理等内容分享。【原创稿件,合作网站转载请注明原作者和出处为.com】
