导读:近期业界有大量有关什么是一个好的 CTO 的讨论,本文是最近一周在美国码农圈热议的文章,高可用架构翻译转载如下。

如果你还在整天写文章辩论 PHP 是最好的语言,那说明你还没有成为一名真正的 CTO。

CTO 并不是团队中最疯狂的黑客,编写代码是 CTO 最不重要的工作。 在我看来, CTO 是一个能够与其他技术人交流技术并引导他们更好的完成项目执行的人。 另一方面, CTO 是一个保护技术团队免受外部干扰的人,并勇于在需要时承担错误责任的人。

在很多缺乏技术人员的创业公司里,成为 CTO 并非难事。然而 CTO 在这样的公司里,很大程度上只是这个公司严重过度疲劳的码农。我主要想讨论 CTO 这个位置需要什么样的能力,并且如何养成这样的能力。

我讨厌技术部门只是实现了他人所设想的功能。 这样技术部门与其说是公司的部门,不如说是一个技术外包团队,因为它独立于决策过程。 正如 Camille Fournier 在“ CTO 的作用”一文中所说,“ CTO 必须保护技术团队不要成为一个不表达自己的需求和想法的纯执行部门

如果公司需要一个 CTO,那么这个人定义了对技术的长期影响的愿景。现在越来越多的企业不是使用技术,而是被技术定义。现代的一切都是建立在技术的基础上,从零售电子商务到移动应用程序,当有人从内部推动技术发展的时候,公司就会因此获益良多。 CTO 不能让技术团队仅仅成为实施者。

我曾经和不少 CTO 讨论过关于如何让公司的其他部门尊重技术开发的过程。例如,如何推广单元测试。我会告诉他们:“这是我们要走的方向,这就是它将如何工作。”

总之,无论 CTO 说什么,就应该做成什么样。如果 CTO 没有这样的技术决策权力,那他就不是 CTO,而是工程师小组长。

CTO 是一个业务战略的工作,它定义了公司内部的技术方向。如果你讨厌会议,讨厌跟非技术人员交流,并认为所有经理都整天坐在一起,什么都不做,那 CTO 可能并不适合你。任何会议都是关于公司业务发展方向的讨论,以及技术如何能够帮助达到目标,或者有时技术如何为增长创造新的机会。

因此, CTO 必须了解企业和客户的需求。从我的经验来看,很多技术人员喜欢远离“商业的东西”。然而,作为首席技术官,这却是第一要事。技术决策不会在纯粹的软件或硬件问题中产生。大多数时间 CTO 应与产品经理同步,以保证产品战略与开发进度一致。

最终, CTO 会创造一个允许团队做牛逼事的环境。现在很大的问题是找不到足够的工程师,每个公司都在寻找工程师,高质量工程师从来都很少,因此一个好的环境很重要。 CTO 应该知道如何构建好的环境,因为他们曾经是其中之一。如果团队想要做 TDD,或配对编程或临时服务器, CTO 都应该批准。由工程师来衡量这些变化带来的影响。

思考技术研发的财务影响也很重要。一个创业公司可能允许自己使用最新最酷炫的技术,而一个更大规模的公司则多半不会如此选择。这一切都应该在投资回报的基础上权衡,看看它给客户带来多少价值。因此,在大多数情况下,它是关于现有优势和更新已有的基础设施的平衡,而不是花费大量精力去做很难实现的工作。根据 80-20 规则,找到能通过 20% 的投入获取 80% 的回报的那部分工作。

我曾经对未来的 CTO 候选人进行过访谈,他们会问:“为什么你坚持这个老版本,为什么你没有用 React.js 重写?”

对不起,我认为这不是一个好主意。有时候,老的遗留程序确实更难管理,但是重写几乎总是为客户提供不了价值。

CTO 需要平衡团队力量,好钢用在刀刃上。建立一个只想要触摸新技术的团队是不可持续的。

构建一个阶段来实现你最重要的事情。例如,我认为可靠性和安全性是任何软件的两个最重要的功能。因此,业务目标的任何变化都与之相称。对于一个非技术人员来说,掌握安全相关的知识显然是不可能的。然而这样很可能会导致公司追求的目标会侵犯别人的隐私(安全性有问题)。 CTO 的工作的一部分是处理这个,并确保他们不会犯错。

虽然我做的是技术,但是我认为技术应该是用户不可见。 PHP 是否是最好的语言,对于很多开发者是一个令人兴奋的话题,但对于一个组织(公司)却不是。我相信, 不关心这类事情是成为 CTO 的踏脚石——不过分关注技术细节,而是寻找团队和其他一切。

成为 CTO 是关于实现更大技术影响的途径,如何定义业务和如何帮助客户。它有助于理解技术本身,但不仅如此。

本文由高可用架构翻译自 Juozas "Joe" Kaziukėnas 的 Becoming a CTO,原文地址:

https://juokaz.com/blog/becoming-a-cto

-END-

欢迎关注“互联网架构师”,我们分享最有价值的互联网技术干货文章,助力您成为有思想的全栈架构师,我们只聊互联网、只聊架构,不聊其他!打造最有价值的架构师圈子和社区。

本公众号覆盖中国主要首席架构师、高级架构师、CTO、技术总监、技术负责人等人 群。分享最有价值的架构思想和内容。打造中国互联网圈最有价值的架构师圈子。

  • 长按下方的二维码可以快速关注我们

  • 如想加群讨论学习,请点击右下角的“加群学习”菜单入群


再谈如何成为一名优秀CTO相关推荐

  1. 如何成为一名优秀CTO

    如何成为一名优秀CTO 如果你还在整天写文章辩论 PHP 是最好的语言,那说明你还没有成为一名真正的 CTO. CTO 并不是团队中最疯狂的黑客,编写代码是 CTO 最不重要的工作. 在我看来, CT ...

  2. 浅谈如何做一名优秀的WEB前端工程师

    浅谈如何做一名优秀的WEB前端工程师 随着近两三年来RIA(Rich Internet Applications的缩写,中文含义为:丰富的因特网应用程序)的流行和普及,前端开发这个行业也开始备受关注. ...

  3. 一个15年的架构师谈“如何成为一名优秀的解决方案架构师”

    摘要:且听有着15年软件研发.架构经验的华为云MVP魏群娓娓道来,如何成为一名合格的解决方案架构师? 架构师,这是一个在技术人员,特别是软件开发人员眼中具有神圣色彩的岗位. 团队中有了架构师,就是有了 ...

  4. 从校招生到核心架构师,支付宝研究员李俊奎谈如何成为一名优秀的程序员

    校招进入支付宝,11年时间,从一线工程师成长为支付宝安全核心架构师,这个技术牛人就是李俊奎. 李俊奎一直聚焦风控平台的技术和架构发展,并着手搭建了中国第一家云上的商业银行--网商银行. 在2016年双 ...

  5. 支付宝核心工程师谈如何成为一名优秀的程序员?

    支付宝研究员 李俊奎 作者 | 蚂蚁金服科技 责编 | 伍杏玲 出品 | 程序人生(ID:coder_life) 校招进入支付宝,11年时间,从一线工程师成长为支付宝安全核心架构师,这个技术牛人就是李 ...

  6. 成为一名优秀的CTO,要具备哪些能力模型?

    链接:https://mp.weixin.qq.com/s/FRrNjZMH5FbvoJ749LVtrg 上周,老K跟几位互联网公司的CTO朋友小聚,本来约了12位,实际只来了8位.有4位没来的原因, ...

  7. 依图又斩获10冠!AI芯片拿下创新技术大奖,朱珑再谈智能密度

    乾明 李根 发自 厦门  量子位 报道 | 公众号 QbitAI 依图的AI芯片究竟怎么样? 今天国内规格最高的技术评选给出参考. 8月9日,由工信部.公安部及网信办三部委指导主办的"中国人 ...

  8. 再谈编程范式-程序语言背后的思想

    link link 编程范式 托马斯.库尔提出"科学的革命"的范式论后,Robert Floyd在1979年图灵奖的颁奖演说中使用了编程范式一词.编程范式一般包括三个方面,以OOP ...

  9. 一名优秀的初创企业员工怎么做好工作计划

    PMCAFF(www.pmcaff.com):互联网产品社区,是百度,腾讯,阿里等产品经理的学习交流平台.定期出品深度产品观察,互联产品研究首选. 外包大师(www.waibaodashi.com): ...

  10. 再谈软件测试-工作感悟

    软件测试,一个即将要崛起的行业,却也是一个充满着争议性的行业.谈到崛起,是因为我们发现,我们身边的客户开始越来越关注软件的体验性了,如果你的软件还有功能问题,他们可就不那么待见你了.同样,在国内的公司 ...

最新文章

  1. 面试:数据量很大,分页查询很慢,有什么优化方案?
  2. BZOJ-1036-树的统计Count
  3. 广西大学计算机技术复试题库,2018年广西大学计算机与电子信息学院408计算机学科专业基础综合之计算机操作系统考研基础五套测试题...
  4. 2apt-get命令,deb包安装,源码安装
  5. 这是一个我面试某公司的算法题目:对一个字符数组进行排序,根据给定的字符,大于它的,放在数组的左边,小于它的,放在数组的右边,且数组中的元素之间的相对位置要保持不变。...
  6. 50道编程小题目之【兔子数量】
  7. 巧用Linux 命令来拆分Windows下的大文件
  8. [转载] Python 内置函数 lambda、filter、map、reduce
  9. 没事学学docker(三):配置阿里云镜像加速以及解决docker起不来的问题
  10. ajax zlib,jQuery递增地读取Ajax流吗?
  11. uniapp实现头像上传
  12. java堆的特点_java栈的特点是什么?java的堆和栈的优缺点介绍
  13. Linux sleep exit abort函数
  14. Unity bug error CS1703: Multiple assemblies with equivalent identity have been imported...
  15. HTML——3D移动、3D透视、3D效果、3D呈现案例效果
  16. WGS84坐标系转为西安80坐标系的解决方式
  17. 国产LIN收发器芯片SIT1028,PIN to PIN替代TJA1028
  18. 西班牙足球联赛体系介绍
  19. FlexHex分析MP4格式的文件
  20. LeCun指明下一代AI方向:自主机器智能

热门文章

  1. 第3/24周 区_SQL Server中管理空间的基本单位
  2. 寻找不设防的无线局域网——战争驾驶全接触
  3. Java反射机制总结(实例分析)(一)
  4. Oracle中备用查询语句
  5. 基于SOCKS的IPv4向IPv6过渡技术
  6. 「leetcode」763.划分字母区间【贪心算法】详细图解
  7. ## 2018-2019-1 《信息安全系统设计基础》 20165232 20165231 20165235 实验五 通信协议设计...
  8. 电商系统设计之商品 (上)
  9. 公共技术点之 Android 动画基础
  10. stm32cube和sw4stm32开发