什么是工程师文化?

作者 | 王尊,帷幄 Whale CTO

责编 | 唐小引

头图 | CSDN 下载自东方 IC

出品 | CSDN(ID:CSDNnews)

什么是工程师文化?

这篇文章的契机,是在 Whale All Hands 上团队成员提出的问题基础上展开的。All Hands 后我在内部沟通工具 Phabricator 上发布了这篇文章来阐释我对「工程师文化的理解」。

工程师文化是什么?

说到这个,得先说什么是工程师。我的理解,工程师是借助工程工具用理性思维来创造性地解决问题的人。「工程师文化是什么?只有工程师才配拥有工程师文化?」显然不是。只要能用理性思维来创造性地解决问题,我觉得这就很好地实践了工程师文化。这里有 3 个关键点,「理性思维」、「解决问题」和「创造性」。

▐  理性思维

理性思维是一种有明确的思维方向,有充分的思维依据,能对事物或问题进行观察、比较、分析、综合、抽象与概括的一种思维。说得简单些理性思维就是一种建立在证据和逻辑推理基础上的思维方式。

在平时的工作中,最重要的两点是:

  • 全面收集信息

不同决策判断的来源往往是不同的 Context。了解的内容越多,掌握的信息越全面,越有利于做出正确判断,这也是为什么取证对于警察破案这么重要。而工程师往往不只是拿到 Task 写代码而已,需要更多地找相关同事去了解这个任务背后更多的信息。

拿招聘来说,我们不仅需要了解面试者之前的工作履历和经验,同时也需要用真刀真枪的问题(比如 Coding)了解 TA 的实践能力,用 Behavior 问题来考察价值观,是否能和我们一同合作。

  • 客观作出决策判断

强调客观理性的判断,而不是凭谁的感觉更准、谁的 Level 更高,也不是看谁的资源更多、谁的态度更蛮横。为此,我们不说感觉,只说数据;我们不说个人的 Level,我们说每个 Team 都应该对外提供服务,我们强调正确积极沟通的重要性以及沟通工具的正确使用。这是工程师文化对于公司的影响,也是公司为了实践工程师文化做出的努力。

事实上,我们的新人主动离职率远低于同行业企业的平均水平。公司每个团队的 HC 规划,涉及到 Team 发展规划、Organization 发展规划、公司财务规划,这是一个非常理性的决策过程。

▐  解决问题

问题解决(Problem Solving)是由一定的情景引起的,按照一定的目标,应用各种认知活动、技能等,经过一系列的思维操作,使问题得以解决的过程。

解决问题的前提是,确定存在的问题是什么。如果问题本身错了,再多的技巧、再强的方法都是白费力。这个涉及到上面提及的尽量多的收集 Context 并理性分析。我们无法控制问题的判断一直是对的,只能更好地分析,比较优先级,才能提高对结果的把控能力。

工程师文化不讲意识形态,不看怎么说,只看怎么做。在工程里面,只有「这顶用」、「It works.」,没有「这正确」、「It's correct.」。工程里面大家信奉的只有一条:「实践是判断真理的唯一标准。」吹得再天花乱坠,未经实践检验,都会被怀疑。

「不管黑猫白猫,捉住老鼠就是好猫。」对此,我深以为然。对于创业公司,困难时刻远多于享受的时候。即使成熟强大如 Netflix,也几乎不招聘 3 年以内工作经验的人,这也是结合他们公司自身企业文化和实践结果作出的决策。当然,我们也见到不少刚毕业就加入帷幄 Whale 的同学,都顺利完成了学校到社会的过渡,拥有了我在同年龄时所不曾拥有的经验和能力。各位 HR 和 Leader 都在这个过程中起到了很大的作用,对于 HR 和 Leader 的自身能力也有了积极的提升。

工程师文化不在乎加不加班,不在乎是不是办公环境里堆一些非常 Geek 的东西,其关键在于,当问题出现的时候,那种「一切以解决问题为导向」的内部组织模式和思维方式。

在 All Hands 的 Q&A 环节中,有人提出了「奶牛产奶」的问题。那么我作为工程师看待这个事情,我甚至不关心他是否是奶牛,我只看我每天需要喂多少饲料,最好保持不变,能否持续产奶,并且产奶量一阶导数 >0。我作为 CTO,有太多的问题需要我去解决,而且我要持续解决更棘手影响更大的问题,很多不是几万行代码就能解决的问题。我去年 9 月回 Facebook 找前同事聊天,至今组里还没有找到填我空的人,但是不急,反正我的代码 3 个季度没有过 bug 而且留了文档,我在离职前最后一天还在和相关同事确认文档可读性。

▐  创造性

很简单,问问自己,如果面对的问题规模是 10 倍,而还是只有你一个人,怎么办。这个时候的答案,往往是具备创造性的。但是,创造性一定需要结合前面两点,为了创造性而创造性,非但没有意义,而且会给个人和公司带来意想不到的负面后果。

Apple 创造了 iPod/iPhone,但不是每个人都知道 iPod/iPhone 的创造者和概念来源于还有一家硅谷的炮灰公司叫 General Magic,这家公司没有成功,客观条件是个很大的因素。

▐  好工程师

分析完了工程师文化,看起来好像并不难,反正就是理性分析,解决问题。其实并不然,一个工程师需要大量时间和经验的洗礼,才能逐渐蜕变为好工程师,促进工程师文化。

  • 好工程师在成长,他能更好地把控结果,对自己要求更高,更快地在横向和纵向上拓宽自己的能力;

  • 好工程师为自己的成长负责,好工程师持续的自驱力几乎是人人可见;

  • 好工程师持续跳出「舒适圈」,这也是很多时候「创造性」的来源;

  • 好工程师看问题更客观,更本质。比如,公司成长往往是个人成长的一个重要因素,所以好工程师考虑问题,并不是看单独一个问题,而是从公司的角度出发考虑;

  • 好工程师促进工程师文化,好工程师往往能解决那些 Block 工程师文化形成的问题,比如创造数据工具来帮助各个部门更「客观理性」分析问题。

总结

工程师文化不是企业成功的充分条件,也不是必要条件。可以看到,尽管 Ford 有工程师文化,还有关注人文,长期保持高福利,这几乎在 2008 年要了公司的命,同时也成为了美国「铁锈带」坠落深渊的罪魁祸首之一。同时,成功的苹果的工程师地位不尽如人意,工程师文化在硅谷大公司里只能排倒数。

每个成功的公司都会有很强的公司文化,至少对外宣传是这样的。对于互联网公司,很多就是「工程师文化」。但是,大家有没有去观察过,究竟是先有成功的「公司业务」,还是先有成功的「公司文化」。这个我在去年找不少人讨论过,最后我的结论是,如果两者不是同时出来的话,一定是先有前者。

本文仅为个人观点,如有不同意见,欢迎大家在评论区一起讨论分享。

作者简介:王尊,帷幄 Whale CTO,加州大学圣迭戈分校计算机工程硕士毕业,浙江大学自动化学士学位,2019 年 1 月下旬正式加入帷幄 Whale,带领产品研发团队,聚焦于软硬件体系的双向升级,强化底层技术实力,利用 AI、IoT、Data 技术,提高复用性和工程效率;2014 年~2019 年,曾就职于 Facebook Feed Ads 部门,负责各类广告产品以及相关数据框架曾就职于 Amazon Lab126,负责 Kindle 电子书内核测试框架研发。

声明:本文为作者投稿,不代表 CSDN 立场。

 

推荐阅读

  • 震惊!阿里的程序员竟被一个简单的 SQL 查询难住了!

  • 巧用 Trie 树,实现搜索引擎关键词提示功能

  • 手把手教你配置VS Code 远程开发工具,工作效率提升N倍

  • 诺基亚的百年沉浮

  • 亚马逊创始人或成地球首位万亿富豪,设计“女人流程图”找对象,不一般的贝佐斯!

  • 超级账本Hyperledger Fabric中的Protobuf到底是什么?

  • Go远超Python,机器学习人才极度稀缺,全球16,655位程序员告诉你这些真相

真香,朕在看了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/517893.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux7/Redhat7/Centos7 安装Oracle 12C_安装Oracle软件_04

文章目录一、安装准备1. 下载oracle12c2. 上传oracle12c3. 赋予权限4. vnc远程连接主机5. 解压5. 安装二、安装流程2.1. 邮箱设置2.2. 只安装数据库软件2.2. 单实例数据库安装2.3. 企业级数据库2.4. 校验依赖2.5. 依赖安装2.6. root执行脚本2.7. OK2.8. 完成安装一、安装准备 …

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

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

在 Apache Spark 中利用 HyperLogLog 函数实现高级分析

在 Apache Spark 中利用 HyperLogLog 函数实现高级分析 预聚合是高性能分析中的常用技术,例如,每小时100亿条的网站访问数据可以通过对常用的查询纬度进行聚合,被降低到1000万条访问统计,这样就能降低1000倍的数据处理量&#xf…

华为智能IP网络,加速联接智能化转型

[中国,深圳,2020年5月19日]在华为第17届全球分析师大会期间,华为“引领智能网络,加速联接智能化转型”峰会隆重召开,会上首次阐述了智能IP网络的三大特征——“智能超宽、智能联接、智能运维”,并分享智能I…

Linux7/Redhat7/Centos7 安装Oracle 12C_监听配置及DBCA安装数据库_05

文章目录一、监听配置二、创建数据库一、监听配置 # 切换到oracle用户 su - oracle# 启动监听图形化页面 netca二、创建数据库 dbca

Kubernetes-native 弹性分布式深度学习系统

9月11日,蚂蚁金服在 Google Developer Day Shanghai 2019 上宣布开源了基于 TensorFlow 2.0 eager execution 的分布式深度学习系统 ElasticDL。基于 TensorFlow 的支持弹性调度的深度学习系统,据我们所知,ElasticDL 是第一 个。项目负责人王…

递归(特别重要,小计算用)

递归(特别重要,小计算用) 递归就是:A方法调用B方法,就是自己调用自己。 利用递归可以简单的程序来解决一些复杂的问题。它通常把一个大型的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的…

达摩院送你100万,请坚持“看月亮”

首批青橙奖获奖者合影 30年前,随便走进一间中国的小学教室,问其中埋头苦读的孩子,长大以后要做什么? “做个科学家!” 梦想改变世界的小娃娃眼神透亮,声音也透亮。 但少有人能够真正在成年之后&#xf…

深度剖析数据库国产化迁移之路

作者 | 吴夏,腾讯云 TDSQL 高级工程师责编 | 唐小引头图 | CSDN 下载自东方 IC出品 | CSDN(ID:CSDNnews)随着国家有关部门近年来陆续出台相关政策指导文件,推动探索安全可控的金融科技产品,加强银行业信息安…

常用排序算法总结

概述 在计算器科学与数学中,一个排序算法(英语:Sorting algorithm)是一种能将一串数据依照特定排序方式进行排列的一种算法。本文将总结几类常用的排序算法,包括冒泡排序、选择排序、插入排序、快速排序和归并排序&…

4. java——多态(java巅峰设计,超越了C++的理解,取其精华,去其糟粕)

多态指的是同—个行为具有多个不同表现形式 。是指—个类实例(对象)的相同方法在不同情形下具有 不同表现形式。封装和继承是多态的基础,也就是说,多态只是—种表现形式而已。一个对象,同一个方法不同形态,方法必须重…

ETL异构数据源Datax_日期增量同步_13

文章目录一、全量同步1. 增量同步SQL2. 构建reader3. 构建writer4. 字段对应关系映射5. 构建json6. 选择同步模板7. 查询最早时间8. 修改任务信息9. 添加增量参数10. 数据清理11. 执行任务12. 查看执行日期13. 数据验证15. 查看同步脚本二、基于日期增量同步2.1. 新增新数据2.2…

如何使用 SQL Server FILESTREAM 存储非结构化数据?这篇文章告诉你!

作者 | ALEN İBRI译者 | 火火酱,责编 | Carol封图 | CSDN 付费下载于视觉中国 在本文中,我将解释如何使用SQL Server FILESTREAM来存储非结构化数据。同时,还会介绍FILESTREAM的优缺点。 在SQL Server的早期版本中,非结构化数据的…

Apache Flink 进阶入门(二):Time 深度解析

前言 Flink 的 API 大体上可以划分为三个层次:处于最底层的 ProcessFunction、中间一层的 DataStream API 和最上层的 SQL/Table API,这三层中的每一层都非常依赖于时间属性。时间属性是流处理中最重要的一个方面,是流处理系统的基石之一&am…

月活用户达7.55亿,阿里淘系如何在后流量时代引爆用户增长?

2019 年 8 月,阿里巴巴集团公布截至 2019 年 6 月 30 日止季度业绩。 财报显示,本季度阿里巴巴集团收入为 1149.24 亿元人民币,同比增长 42%。其中,淘宝、天猫在内的中国零售平台移动月活跃用户达 7.55 亿,较上一季度…

数组,三种初始化和内存分析

数组,三种初始化和内存分析 Java内存分析: 堆:存放new的对象和数组 ​ 可以被所有的线程共享,不会存放别的对象引用 栈:存放基本变量类型(会包含这个基本类型的具体数值) ​ 引用对象的变量&a…

Arthas 3.1.2 版本发布 | 增加 logger/heapdump/vmoption 命令

最近偶尔有用户反馈某些 HTTP 接口出现超时问题,而 web 服务端的 Trace 监控没有出现 http 返回值为 503 等异常情况。出现这种情况一般是web容器出现问题,客户端连 Arthas是Alibaba开源的Java诊断工具,深受开发者喜爱。 Github:h…

Linux 便笺技巧专栏

文章目录一、 vi 专栏二、固定ip设置2.1. 自动获取改为静态2.2. IDADDR获取2.3. GATEWAY获取2.4. 重新网卡2.5. 重新连接三、主机名调整3.1. 临时有效主机名3.2. 永久有效主机名四、防火墙调整4.1. 临时关闭防火墙4.2. 开机不启动防火墙五、shell脚本5.1. shell格式5.2. shell执…

刚刚,Python内幕被爆出!网友:请收下我的膝盖!

2020 年 5 月全国招收程序员 312761 人。2020 年 5 月全国程序员平均工资 14542 元,工资中位数 12500 元,其中 95% 的人的工资介于 5250 元到 35000 元。请问你拖后腿了吗?作为一名老码农,这次请收下我的膝盖!事情起因…