软件工程44-微软、谷歌、阿里巴巴等大厂是怎样应用软件工程的?

在上一篇文章里,我带你一起了解了像 VS Code 这样的开源项目对软件工程的应用,以及如何学习借鉴优秀的项目对软件工程的应用。今天我将带你去看看像微软、谷歌、阿里巴巴这些大厂是怎么应用软件工程的,以及我们应该如何学习和借鉴他们对软件工程的实践。

我想无论你现在是否在大厂工作,都有很多途径了解到大厂是如何应用软件工程的,网上已经有很多他们员工的分享。你可能更想知道的是: 从大厂应用软件工程的实践中,你能学习什么,又该如何学习借鉴。

每个公司,都有自己的历史和文化,他们的文化又影响了各自的软件开发模式。

比如说谷歌,谷歌崇尚工程师文化,请来的工程师都是万里挑一的,开发也没有太大的进度压力,所以 Google 的工程师做项目就会不紧不慢,质量优先,有统一的代码规范,严格的代码审查和严谨的自动化测试。还会频繁地重写系统,每隔几年,就把软件重写一遍。

再比如说 Facebook,Facebook 有一种黑客精神,创始人马克·扎克伯格有句名言是“Move Fast and Break Things”,也就是说快速做出产品,不要怕犯错。所以 Facebook 的工程师做软件开发的时候不会想太多,先实现再说,做出来就发布,哪怕可能有 Bug。发布后根据用户的反馈再不断完善,真的把线上功能弄坏了,再打补丁去修复。

然而这些带有各自文化特色的部分,却是我们很难学习借鉴的,因为这样的文化都只适合各自的公司。假设让微软去学习 Facebook 的黑客精神,发布带有很多 Bug 的 Windows 系统,那么用户是不能忍受的;而让普通公司去学 Google 的工程师文化,项目没有严格的 Dead Line,系统隔几年重写一遍,那公司恐怕都要撑不住了。

所以,要学习大厂,你要多去关注大厂们对软件工程实践共通的地方,可以应用在你自己项目的地方,另外还要去看大厂对软件工程实践的变化趋势,在朝什么方向发展。通常这些大厂的很多实践都是业界的风向标,一旦一些实践大厂都在应用,那么很多中小厂就会跟风,最终变成行业标准。

在上一篇《43 | 以 VS Code 为例,看大型开源项目是如何应用软件工程的?》中,我从项目的开发迭代过程,团队的角色分工和项目开发各个阶段来分析了 VS Code 对软件工程的应用。类似的,我也将从大厂的开发团队组成、开发工具的使用、项目开发流程这几个方面来分析一下大厂对软件工程的应用中,有哪些共同点?有哪些变化趋势?有什么地方可以借鉴?

软件项目开发团队组成

软件项目开发,最终要落实到“人”上面。大厂在招人方面一向舍得投入,不仅花很多人力财力在招聘上面,同样对于员工待遇上也很大方,只为了能招到最优秀的人才。

对于普通的公司和团队来说,很难像大厂那样有一群行业内顶尖的人才,但是它在软件团队的一些管理和实践方面,还是有一些共通的地方,有值得普通公司学习借鉴之处。

1. 软件开发团队规模小

网上曾有一张流传甚广的关于各大公司的组织结构图。

(图片来源:HOW YOUR STARTUP’S ORG CHART CHANGES YOUR PRODUCT

这张图形象生动的描述了各大公司的组织结构,各具特色。然而这些大厂的组织结构具体细分到软件项目开发

  • 7
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员zhi路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值