【AICon】 如何构建高效的 RAG 系统?RAG 技术在实际应用中遇到的挑战及应对策略?>>> 了解详情
写点什么

舍弃 325 亿估值公司 CTO 职位:写代码才最快乐!管理只会影响我搞研发

  • 2021-07-28
  • 本文字数:3388 字

    阅读完需:约 11 分钟

舍弃325亿估值公司CTO职位:写代码才最快乐!管理只会影响我搞研发

当地时间 7 月 22 日,《2020 胡润全球独角兽榜》中排名 58 位的科技公司 HashiCorp 的创始人 Mitchell Hashimoto 发布内部信表示,他将辞去公司 CTO 的职位, 同时退出 HashiCorp 董事会,重新成为一名个人程序员。这家以他名字命名的公司如今估值已达 52.7 亿美元(约合 325 亿人民币)。

 

“我真正喜欢的是编程”

 

“我作为一名对基础工具充满热情的工程师创立了 HashiCorp。但作为创始人,我的职责有时不得不远远超出这个范围。这就是成为创始人的代价:你必须做任何需要你做的事情,即使这个角色的一些工作并没有特别激励你。在将 HashiCorp 打造为一家价值数十亿美元公司的近十年的里,我不断重申我仍然是一名工程师,如今我准备更正式地重新专注于这一点。”Hashimoto 在内部信中表示。

 

Hashimoto 从 12 岁开始编程。由于喜欢游戏,他写了一个游戏外挂软件并在网站上售卖,他的父母当时还以为他放学后回到房间是在玩游戏。不过没多久,在收到游戏方通知后,他的售卖网站关闭了。

 

“之后,我只是为了好玩而继续编程。”Hashimoto 表示。Hashimoto 曾在几家不同的公司负责过软件工程、DevOps 和咨询工作,还创办了两家公司(包括 HashiCorp),创建或参与了 75 个开源项目,而且该数量还在不断增加。

 

Hashimoto 创建的代表性项目之一就是自动化工具 Vagrant,它彻底改变了虚拟化开发环境的创建。Vagrant 也是 HashiCorp 产品的基础,能够帮助企业客户自动执行云计算运行任务。

 

2012 年,Mitchell Hasimoto 根据他 23 岁时在大学里编写的技术方案,与现任 CTO Armon Dadgar 联合创立了 HashiCorp,Hashimoto 出任公司 CEO,但他表示,担任 CEO“非我所愿”。

 

因此,2016 年,HashiCorp 聘请了在企业管理方面拥有丰富经验的 David McJannet 接掌大任,而 Hashimoto 与 Dadgar 共同担任联席 CTO。但从两年前开始,他就心心念念着要回到程序员的岗位上。

 

经过协商,公司决定批准 Hashimoto 放弃 CTO 头衔的决定,允许他继续投身于自己热爱的事业。现在 Dadgar 成为公司唯一的 CTO,Hashimoto 则向他报告。对此,Hashimoto 表示,“我终于又能亲手解决软件工程问题了,这才是我真正喜欢的事情。”

 

但他并不会离开这家公司。作为个人贡献者,Hashimoto 打算专注于 HashiCorp 旗下的各个项目,如用于帮助客户构建及发布代码的 Waypoint 等。他还将与工程及产品副总裁密切合作,尽可能发挥自己的才智与热情。与此同时,Hashimoto 将继续为 McJannet 及 Dadgar 提供战略规划建议,以顾问的身份陪伴老战友们继续奋勇向前。

 

Hashimoto 感叹道,“我希望能充分发挥自己不同于传统工程师们的优势,特别是自己对于企业背景和发展规划的深入了解。我认为很多程序员本身都相当出色,但由于对企业整体不够了解、他们距离卓越工程师还有一点差距。而我觉得自己的专长就在这里。”

 

Hashimoto 之前一直参与 Vagrant 代码的编写工作,所以在他看来自己的日常工作不会有“太大变化”。最核心的区别就是,他不用再为了参加客户会议而东奔西走。Hashimoto 表示,虽然他也喜欢跟客户会面,但无穷无尽的出差让他难以有充足的精力参与编程,他曾为此十分困扰。他还表示,自己的家人也很高兴看到他不用再做“空中飞人”。

 


Mitchell Hashimoto

“他对学习更有热情”

 

2007 年,Hashimoto 和 Dadgar 在华盛顿大学(University of Washington)大一的时候相识,当时他们都在西雅图项目(Seattle Project)工作,该项目旨在建立全球科学计算云。两人的工作是将科学应用程序容器化,以部署在数百万台计算机上。Hashimoto 则在尽可能多地实现平台和设备测试的自动化。与此同时,除了为软件设计和工程公司 Citrusbyte 定期进行咨询工作外,他还参与了多个开源项目。

 

“Hashimoto 是我见过的第一个对这么多不同的事情都如此了解的人,他对学习更有热情,并不断突破界限,”Dadgar 说到,“你很少会遇到像 Mitchell 这样对计算机科学充满热情的人,那种被它吞噬的人。Mitchell 能认识到自己知识的极限,并超越它。如果你和 Mitchell 谈论你的想法,当你下次见到他时,他已经花了一整晚的时间去这个研究问题,并且很可能已经在 GitHub 上创建了一个原型应用程序。”

 

大学期间,Hashimoto 创建了一个帮助学生注册课程的自动化系统 UW Robot ,学生们付一小笔钱就可以不用早起点鼠标抢课了。根据 Hashimoto 的说法,到他大四的时候,UW Robot 已经注册了 70-80% 的本科生,并且这个一年只花费他几个小时进行维护的自动化项目,一年就可以为他赚取大约 50 万美元。

 

2009 年 12 月,Citrusbyte 的经理跟抱怨了有客户要处理一项基本工作,他为了配置正确的运行开发环境花费了 8 个多小时,而客户只用了两个小时就完成了工作。自此以后,Hashimoto 将越来越多的时间花在了 Vagrant 项目上,并在 2010 年 3 月发布了第一个增量版本。随着 Vagrant 的势头越来越大,Hashimoto 得到了 PaaS 公司 Engine Yard 的赞助。当他开始宣传 Vagrant 来提高知名度时,下载量稳步增长到 200、500 和 1,000 多次。

 

随着 Vagrant 的发展,2012 年年中,Hashimoto 离开当时工作的 Kiip 公司,成立了 HashiCorp,并专注于 Vagrant 和其他开源项目。随后,HashiCorp 发布了一系列产品。

 

Hashimoto 学习新编程语言的方式就像多语种者掌握口语一样。他十几岁时开始使用 Visual Basic、PHP 和 C。 Hashimoto 和 HashiCorp 的大部分软件都是用 Ruby 或 Go 编写的,但他的专业和开源工作涵盖了从 HTML、CSS 和 JavaScript 到 Python、Shell 和 Erlang 的语言。

 

有件值得注意的事。2013 年,有人曾想以5000万美元的价格收购 HashiCorp,这对两个 20 多岁、没有经历过任何百万美元以上风险融资的创始人来说无疑是一个很大诱惑。Hashimoto 表示,自己内心的第一反应就是:同意,必须同意。但他们希望 HashiCorp 是可以孕育出伟大的产品的公司。经过纠结,他们放弃了这项收购计划。那个时候,他们还没有开发出 Terraform 或者 Vault。

 

CTO 的职责与写代码

 

“随着时间推移,我强烈意识到自己的热情在于参与软件工程,而非扮演技术领导角色。”Hashimoto 坦言。

 

Hashimoto 喜欢写代码,但 CTO、CEO 的身份让他不得不舍弃一些编程的时间。Hashimoto 辞任高管,重回个人开发者背后,也反映了一个被业界广泛讨论的话题:CTO 到底该不该自己下场写代码呢?

 

Domino 数据实验室的首席执行官兼联合创始人Nick Elprin认为,CTO 仍然应该时不时地编写代码。他给出了两个原因:首先,语言和工具在不断变化,不时地动手写代码可以跟上最新的编程情况。但也许更重要的是,组织在成长和扩展的过程中,可能会在系统中增加许多摩擦,导致开发人员花费过多的时间与公司的流程和系统角力。会自己写代码的 CTO 可以保持开发者的立场,清楚的知道哪些是可行的、哪些是过时的。

 

“在与客户(尤其是 B2B)沟通时,CTO 的专业知识会很有用。如果 CTO 不从内到外了解公司的代码库和架构,那将是一个低效的沟通。CTO 在参与早期的产品定义、市场需求等非技术会议时,应该作为科技前沿的代表,将企业愿景转化为具体的内部运作。”Aerendir Mobile 创始人兼首席执行官 Martin Zizi 认为,CTO 不仅需要与产品和用户保持一致,还需要弄清楚如何做到这一点。”

 

而 McPherson Oil 的系统和应用开发总监Joydeep Mukherjee认为,CTO 当然应该更多地关注 IT 思想领导力,这有助于为公司在取得成功的技术和创新方面制定 IT 路线图。“我更愿意说,写不写代码取决于您面对的受众以及他们的期望。”

 

易宝支付CTO陈斌也曾表示,CTO 更多的要关注人员、组织、文化和过程,通过技术来服务业务。业务是最高目标,而技术只是服务业务的一个手段。

 


曾任宅米 CTO 的李智慧曾表示,CTO 应该写代码,也不应该写代码。一方面,CTO 需要通过写代码对技术保持敏感,而不是一个“嘴炮 CTO ”、“ PPT CTO ”。另一方面,CTO 工作的重心并不是写代码,而是要通过代码为公司创造价值。“CTO 最好参与一些开源软件的开发,保持对技术的敏感,但最好不要写公司的业务代码,避免出了 BUG 却找不到 CTO 修复。”

 

Title3Funds 的 CTOKim LaFleur表示,CTO 需要知道他们的时间花在什么地方才能发挥最大价值。随着业务不断发展,他们的职责会就不仅是写代码,但他们应该与开发人员保持紧密的互动,因为 CTO 要有足够的背景和知识来有效地领导他们进行编程工作。

 

这个问题并没有标准答案,但 Hashimoto 找到了自己的答案:“最重要的是在企业成功、个人幸福感等重要因素之间取得平衡,我的选择就是个很好的案例。”

 

2021-07-28 15:537024

评论 2 条评论

发布
用户头像
舍去职位又不是舍去股份
2021-08-02 10:50
回复
用户头像
先不说写代码和做管理获得的收入,写代码是以一件务实的事情,你写一行代码就知道一个反馈,就知道对和错,管理是一门务虚的学问,你做的决策很长时间才知道反馈。
2021-07-30 09:52
回复
没有更多了
发现更多内容

【Java难点攻克】「NIO和内存映射性能提升系列」彻底透析NIO底层的内存映射机制原理与Direct Memory的关系

洛神灬殇

内存映射 用户态 内核态 12 月 PK 榜 直接内存

纯干货,不愧是阿里顶配版Spring Security笔记,面面俱到太全了!

架构师之道

Java spring 架构师

理解Java的强引用、软引用、弱引用和虚引用

钟奕礼

Java 程序员 java面试 java编程

我不写单元测试,被批了

钟奕礼

Java 程序员 java面试 java编程

第十届MTSC上 OpenHarmony与开发者共话开源操作系统发展新格局

Geek_2d6073

GBase 8s 之数据存储空间划分

@下一站

数据库优化 国产数据库 12月日更 12月月更

FLStudio水果2024中文免费版下载

茶色酒

FL Studio FL Studio21

发布!第五届“强网”拟态防御国际精英挑战赛精彩抢先看!

科技热闻

易观分析苏筱芮:数字科技创新场景应用为王,驱动金融与实体经济同频发展

易观分析

金融

Verilog 编译指令

攻城狮Wayne

Verilog语法 Verilog编译指令

还在用Jenkins?试试这款面向DevOps的自动化部署工具吧,贼带劲!

架构师之道

开源 编程

基于ANTLR的Mysql语法解析

BeyondLife

MySQL ANTLR 语法解析

【工具使用】eclipse来回切换项目的JDK版本的方法(最全的)

No8g攻城狮

eclipse jdk jdk8 JDK7

使用声网 SDK 构建 Piloteer 助盲服务平台的最佳实践

声网

音视频 人工智能’ SDK 教程

CleanMyMac2023mac电脑清理磁盘软件

茶色酒

CleanMyMac CleanMyMacX CleanMyMac X

作者推荐 | 【分布式技术专题】「架构设计方案」图解学习法总结集群模式下的各种软负载均衡策略实现及原理分析

洛神灬殇

分布式架构 负载均衡算法 12月日更 12 月 PK 榜

分布式计算MapReduce究竟是怎么一回事?

JAVA旭阳

Java 大数据

Python抓取B站"卡塔尔 世界杯"的视频数据

勇士

Python 爬虫 B站 世界杯

太卷了!5年Java程序员竟然答不出应届生字节二面?

小小怪下士

Java 程序员 字节跳动 面试

易观分析《中国智能客服供应商实力矩阵2023》研究报告正式启动

易观分析

智能客服 易观分析

easyrecovery2024永久免费版数据恢复软件

茶色酒

EasyRecovery15 easyrecovery2023

CleanMyMac2024值不值的下载安装?

茶色酒

CleanMyMac X CleanMyMac X2023

不掌握这些坑,你敢用BigDecimal吗?

钟奕礼

Java 程序员 java面试 java编程

深入理解RBAC

俞凡

架构 网络安全 rbac

2022-12-10:给你一个由小写字母组成的字符串 s ,和一个整数 k 如果满足下述条件,则可以将字符串 t 视作是 理想字符串 : t 是字符串 s 的一个子序列。 t 中每两个 相邻 字母在字

福大大架构师每日一题

算法 rust 福大大

同事跳槽拿下阿里P6Offer,程序员:会点基础还真不行

钟奕礼

Java 程序员 java面试 java编程

没有二十年功力,写不出Thread.sleep(0)这一行“看似无用”的代码!

钟奕礼

Java 程序员 java面试 java编程

流处理基础概念-延迟和吞吐

穿过生命散发芬芳

流处理 12月月更

在 Ubuntu 上安装 Discourse 开发环境

HoneyMoose

模块二作业

Ryan

高性能 构架

SpringBoot+Mybatis+Mysql项目构建

@下一站

程序设计 12月日更 12月月更 springbootdemo

舍弃325亿估值公司CTO职位:写代码才最快乐!管理只会影响我搞研发_语言 & 开发_褚杏娟_InfoQ精选文章