Jon先生是一位在一家软件公司负责软件开发团队的技术负责人。
他正为客户开发一个新款在线教育软件。
他准备用最新的服务器编程语言,但是他对可选项存在一些困惑,他想用Ruby on Rails,Django,Laravel,甚至是C#。
这是一个比较难的决定。
另外团队是新招人员,新手众多,能力参差不齐,彼此磨合默契较少。此时对CTO或技术总监来领导一个团队开发一个新的应用,此时的压力比较大。
Jon先生必须做出快速的决定,坚持做正确的事和强大的内心。与所有人一样,他未必具所有的素质,以敏捷的方式帮助客户的梦想成为现实。
1、超越代码
是的。CTO应该知道什么时候参与编码。但是,这一切取决于团队中有多少人,一些CTO写代码的时间要占管理团队80%的时间,一些占40%,而有的只占10%,而有的可能不再参与编码,这个比例将非常少。
然而,项目的成功并非Coding,而是取决于超越代码,深度思考的能力。毕竟,还有配合的其它部门,CEO,最重要的是应用实际争夺市场的时间,时间的早晚,软件的体验与成熟度等因素。因此,CTO必须站在公司的整体目标前,深度思考未来。
2、快速决断最佳质量的决策
整个项目开发团队的成败,取决于CTO在困难的情况下做出高质量的决策能力。
CTO可以按80/20的原则进行决策,在做出决定之前收集团队每个成员的意见,80%的决策来自CTO收集到的信息,余下的20%取决于CTO本人快速决策的能力。
3、有效沟通
一个有智慧的CTO要擅于与他的团队沟通,避免摩擦,永远以合作的方式与每位成员沟通,做正确的事。如果他觉得一个策略不适合在项目中,他应该能够有效的传达原因,而不是只直白的说“不可能”或者说“你的想法不行”。
同样,CTO的另一个职责是与利益相关者同样要具备有效的沟通。
想想,项目的利益相关方都有谁?
4、站在战略高度思考
具备良好素质的CTO须具有优秀的产品感觉和愿景。虽然在产品运营和商业、业务方面与技术方面同时考虑并不那么容易,但是这种双重眼光确定公司的DNA和方向,从长远考虑能够获得成功。
他能够从全景角度来看待产品,然后指导自己的团队,从项目准备、产品设计到 MVP (最低可行性产品)创段。
5、具备核心竞争力
做为整个公司技术的领导者,CTO必须了解最新的创新和技术,不断获取有关趋势的最新信息。
CTO 必须要掌握相关的核心技术,例如人工智能、系统架构或者是UX相关领域的专家。
因为,在产品研发中,有相关的技术问题需要深入研究,为大家提供咨询和支持。总体来讲,CTO 必须是在编码技能上最高的人士,他必须是公司技术的大牛。
6、管理好团队
CTO 必须成为团队管理者和团队合作者。他必须保证有正确的人在自己的团队,包括设计师,开发者,测试人员,产品经理等。
CTO 必须熟悉敏捷实践,因为敏捷方法事关协作和团队协作。如果说产品是以用户为中心,CTO的作用就是发展自己的团队,营造人们好的发展文化。
事实上,如果产品做得不好,项目进行的不顺,他也必须承担责任。想要推动创新并取得成功的CTO,必段能够无缝承担多方面的能力。
7、维护强大的网络
释放自己网络的力量,通过周边的人物。CTO 必须能够创造一个促进协作和沟通的环境,良好的氛围让企业蓬勃发展。
当产品上线或进入市场,进入到迭代阶段。CTO 将通过项目跟踪,继续收集数据,检查产品状态与客户评价。客户有可能是甲方,也可能是BD,运营,市场等相关部门。
CTO 须时刻了解自身专业领域的趋势,通过自身主动曝光,积极参加各种技术会议、论坛、活动等。在这些组织中,你可以认识更多的新朋友,学习到更多的新鲜事物。
比如TechSPO,RAN World、WMC等,这些会议每年举行一次。WMC是移动世界大会的缩写,是世界上最大的移动电子产品贸易展,每年在巴塞罗那兴办。
WMC提供了与技术领域巨头建立连接的最佳平台,可以了解和体验最新的工具,同时也会接触到其它创新的技术巨头。
但是,最重要的还是:
8、为客户投入时间
一个众所周知的格言:“客户为王”,任何工作均是如此,包括科技行业。产品必须解决客户的需求和痛苦。为了实现这些,有时候不需要使用最新的技术,重点是客户的价值。
一个优秀的CTO也必须是一个优秀的技术人员,同时还是好领导者,一个强有力的沟通者。一个又一个的角色有木有?
CTO必须把自己与现实世界联接起来,事实上,在这个世界,他知道什么人是需要的。
小结
CTO 绝不是坐在办公室里宣传技术思想的人,他必须是一个非常有才华的人。他要创造一个内部技术文化,一种符合公司目标和战略的好方法。
他必须清楚自己公司的竞争对手,并且努力提高公司在市场上美誉度。CTO必须成为真正的领导者来扩大和管理好自己的团队。
本文作者:麦田农夫 来源:21CTO
CIO之家 www.ciozj.com 微信公众号:imciow