每天推送5篇优质英文文章 · By makers, for makers

运营 1109 天, 推荐好文 4,970 篇, 原创简评 1,020,321 字, 原文总阅读时间 43,472 分钟, 138,846 人订阅

这是Edmond Lau写的。前面几期也有推荐过他的文章。 去年他来我们公司给talk,就是讲这个topic:what makes a good engineering culture。他总结了10条:
  1. Optimize for iteration speed.
  2. Push relentlessly toward automation. 去年在他的talk里,我第一次知道quora一天能部署代码50多次,当时叹为观止。
  3. Build the right software abstractions.
  4. Develop a focus on high code quality with code reviews. 很多时候我们写代码都是在模仿别人写的东西。如果公司里代码质量高了,新来的人就能模仿高质量的代码;如果代码一团糟,新来的人就只能模仿差代码,然后代码质量就越来越差。
  5. Maintain a respectful work environment.
  6. Build shared ownership of code.
  7. Invest in automated testing.
  8. Allot 20% time.
  9. Build a culture of learning and continuous improvement. 这一点是关于勤写文档、勤办技术讲座的。好的工程师一般都很重视文档,而不好的工程师只注重写代码。好的文档可以为整个团队省去很多时间:如果招了新人,他们可以从读文档中去学很多东西,而不用专门安排其他工程师面对面地辅导。
  10. Hire the best.
去小公司的一个好处是,你可以参与到定义公司工程师文化的过程中。比如你刚进去的时候,公司还没有把测试自动化,你就可以自己搭起来,变成这方面的专家;或者你刚进去的时候发现code base里有很多重复的代码,你就可以把那部分代码抽象出来,变成一个library。好的工程师文化中,公司里的每个人都会有很强的ownership,看到什么不完善的,都会主动花时间(晚上、周末、假日)去改善;当大部分人都这么有责任感了,新进来也会受到感染。
分享到: