11 | 研发环境:Facebook怎样让开发人员不再操心环境?
该思维导图由 AI 生成,仅供参考
- 深入了解
- 翻译
- 解释
- 总结
Facebook在研发环境配置方面展现出色,致力于提高开发人员的效率和体验。他们通过优化开发机器、持续投入IDE、提供高效的开发过程工具和环境,解决了开发人员因环境问题导致的效能低下。采用机器池的方法,为开发者提供自助式服务,极大地缩短了获取环境的时间。在开发过程中,他们重视开发体验,将开发流程中常用步骤的自动化做到极致,例如提供了端测的截屏工具,大大提高了效率。在测试环境、类生产环境的管理上,Facebook使用了内部系统进行管理,以IaC的方式进行管理。他们的实践经验可以总结出一套提供高效研发环境的原则,包括舍得投入资源、对环境的获取进行服务化、自助化、注重环境的一体化、一致性等。这些原则对其他公司的环境配置也具有借鉴意义。 Facebook在研发环境配置上的实践经验值得其他公司学习和借鉴。
《研发效率破局之道》,新⼈⾸单¥59
全部留言(19)
- 最新
- 精选
- 小名叫大明我看到了个人认为比较重要信息: Facebook认为人力成本更高,这个意识比较重要,很多公司没这个意识,有这个意识的确是通过延长工作时长来补,加班及长期加班又降低了非工具和环境造成编码效率,恶性循环。 慢慢理解招聘时多研发自驱,兴趣等能力的重视的原因了。哈哈
作者回复: 很高兴能启发大家一起思考!这才是最重要的 :)
2019-09-16216 - 寒光想问下老师,“一图胜千言”的解决方案有没有对应的开源产品呢?现实中这个问题太烦人了,好多流程管理系统对图片不友好,word文档又太麻烦,不好管理。
作者回复: 这个我没有找到开源的方法 :( 当时我在一个小公司是这样做的: * 图像存储是Google Drive * 截屏上传工具是Share Bucket (https://apps.apple.com/us/app/share-bucket-image-sharing/id611078158?mt=12) 它支持上传到指定的Google Drive,同时存储URL到剪贴板。
2019-09-166 - 我来也我办公用的电脑,显示器,键盘,触控板都是我自己花钱买的。 公司配的比较差。
作者回复: 我最近公司也是自配 😎
2019-10-263 - Phoenix说到痛点了,换过两家公司,都是考虑低成本,仅仅勉强提供可用的电脑配置,又以网络安全为由不准员工自己带电脑,结果就是下面的开发机器卡,慢,死机,领导天天在讲敏捷开发,高效,请问这种情况老师有什么破局之道吗?
作者回复: 我在你的另一个问题里回答了。祝好运!
2020-07-282 - 大磊Facebook的IDE没有使用那些商业的软件吗,比如jetbrains的,免费的vscode等,我感觉这些很好用啊😂
作者回复: 代码仓太大,导致IDE太慢。比如JetBrains的系列。另外后端代码都在数据中心的服务器上,使用IDE+远程文件速度也不行。 VSCode因为不是IDE,速度很好,远程编辑文件也不错,所以现在转向vscode了。
2020-01-262 - 技术修行者关于研发环境的高效性,我目前的工作中是用资源池的方式,可以在几分钟内获取一套自定义的虚机,通过加载项目维护的Docker镜像,可以在半小时内搭建一套完整的环境。 但这种方式对于小型公司来说,有没有成本来创建和维护这样一套环境?从技术人员的角度来看,这样做很有价值,从公司长期发展的角度来说,也是有必要的。但是很多公司 不是互联网公司,它们可能是很传统的软件公司,平时没有高并发之类的需求,例如政府相关的项目,这种类型的项目,很多时候在现场开发,机器都不是自己提供的。这种情况很难保证研发环境的高效。 当然,这也许只是一个借口,用来发牢骚,我们应该抓住工作中任何机会去改善和提升。 关于思考题中的截屏,这是非常有价值的一个做法,特别有时涉及到不同组沟通讨论的时候,截图是很好的证据。我们的解决方案和你说的差不多,涉及到不同的工具,处理方式不太一样。 1. 如果工具本身支持图片存储,例如ZenHub或者JIRA,我们用工具本身来存储图片。 2. 如果工具本身不支持图片存储,我们用公司提供的网盘来存储图片,在工具中引用相关的链接。
作者回复: 写得非常好,可以看出你们团队,以及你个人,平时是比较关注研发效能,也关注研发人员技能成长的。这样的工作环境,应该很不错!
2019-09-222 - 寒光截图的这个处理方法的确很赞👍
作者回复: 是呀,我个人超级喜欢 :)
2019-09-162 - 技术修行者做到研发环境的高效性,一个基本的前提就是要意识到人的价值,人比软硬件更有价值。 如果认识不到这一点,文章中说的这些内容,会很难推动。
作者回复: 是的是的。软件研发因为灵活性和创造性,人的价值更重要了。
2019-09-2221 - Joe Black其实做到这样还是需要公司自己内部有个为开发服务的运维团队的,至少要有几个岗。感觉这个在大部分中小公司不现实....
作者回复: 在中小公司,比较好的方式是不用专职人员,但是从政策和绩效方面鼓励高效的研发实践固化和推广。实际上Facebook等公司一开始也没有专门的团队。但是这些高效时间是一直受重视的。
2020-02-15 - oillie我一般都是在jira里贴图的,然后把jira链接放到commit message里
作者回复: 这样做步骤比较多。不过也还可以 :)
2019-10-13