2018/10/08 第1265期

新编程语言对社会的影响

food for thought:编程语言是一个社区,需要大量劳动力(活人);编程语言需要有众多第三方的库、需要有人经营社区问答问题。每出现一个新编程语言,都要消耗大量社会资源。

Scaling Engineering Teams via Writing Things Down and Sharing - aka RFCs

以 Uber 的工程团队的实践为例,阐述了项目之初写设计文档、共享文档、公开透明地让所有同事点评的好处。文中给出了前端、后台的设计文档的简单模板,可以参考一下。

Amazon 里的 AI

很 high level 地总结了 Amazon 公司运作以及产品里的 AI 应用。仓库工人把货物放在仓库里,要进行一系列操作、把信息存进电脑方便以后取货;他们用AI省了一个步骤,改进了工作效率(乘以几十万工人)。

Architecture Astronauts

所谓 Architecture Astronauts(像宇航员般的软件架构师,活于臭氧层之外):一般存活于大公司里,喜欢做抽象的架构、总是夸夸其谈、总是试图解决自己想象出来的问题,就是不写代码。

高级工程师的工作是什么

写代码、review 别人的代码、写文档、审核别人写的文档、帮助遇到困难的同事、对项目质量把关、清晰地沟通、明白做的项目与公司的business有何联系、不断想出新的项目、知道一个项目何时是终点。软技能很重要。

工程师大部分的工作时间不是在写代码。说话、写文档、思考,这些占了很多时间,而且这些一般都不出现在 job description,导致很多刚进入职场的人会因为把时间花在写代码之外而感到内疚。