DevOps infra | 互联网、软件公司基础设施建设(基建)哪家强?
国内公司普遍不注重基础设施建设,这也是可以理解的。吃饭都吃不饱,就别提什么荤素搭配,两菜一汤了。但也不能全说是这样,还是有很多公司投入大量的人力物力去做好公司的基建,比如很多阿里和美团的小伙伴对公司的基建还是很认可的。
为什么工程师都很在意公司的基建
有人说再好的磨盘也只是提升了驴拉磨的效率,便宜了资本家,要那么好的磨盘干什么呢?有必要讨论和对比么?还是有的,这就好有一比:比如我们都是个给老板开货车的司机,除了老板给我们发的薪资待遇外,开什么车,车况如何还是挺影响心情的,有的开沃尔沃,有的开福田, 还有的开三轮。
我们每天都在公司工作,工作环境和工具对于我们的工作效率有很大的影响,对我们的工作心情也有很大影响,如果每天郁郁寡欢,长期影响寿命啊。
什么是基建 infra
基建,主要是指一个公司的软件基础设施 infrastructure,比如:
通用的协同协同办公软件,比如通信沟通软件im,文档,邮件
通用的 IT 基础设施:vpn、跳板机、SSO
项目管理工具和工单:任务管理与流转
服务端的产研平台 devops, gitlab, nexus, k8s等等
APP端的Mac/android打包,提测,发版,线上apm监测,crash统计,合并代码lint监测,app加固,统一的三方库封装,跨平台框架基建
数据库,存储,监控日志告警,限流熔断中间件,消息队列,任务调度,服务注册发现,配置中心
自动化测试平台,测试环境隔离(包括服务和数据的隔离)
私有云infra,开发、测试、线上生产环境快速获取、部署以及方便使用和管理
如果以上的所有工具和服务如果能友好的接入和使用,并且稳定性强,那么就说这个公司的基础设施建设(基建)合格,如果大多数的工具和服务能超出部分人的期待那么这样的基建就值得一个大大的赞。
硬件基础设施
一些硬件infra比如WI-FI,工作笔记本,独立显示器等,我们一般视作硬件基础办公环境,这些公司投入一些很容易达到,软件的基础设施其实更重要,也更难建设一些。
一线大公司的基建
之前写过一篇文章《一二三线互联网公司划分标准和榜单》,里边介绍了互联网公司的划分标准以及给出了这个标准下的国内 Top10 公司
一线互联网公司:腾讯、阿里、字节跳动、百度
二线互联网公司:美团、京东、网易、拼多多、快手、携程、贝壳、滴滴
三线互联网公司:B站、微博、爱奇艺
本文主要是讨论这些典型的互联网、软件公司的基础设施建设情况。
典型互联网、软件公司基建排名
我们主要从1)工具链完整性,2)功能完备性和易用性,3)支持和服务以及4)员工满意度四个方面来考虑。「非常主观地」得出如下的一个顺序:
阿里(蚂蚁稍逊)>美团.........>滴滴>拼多多(Java侧)>京东科技>携程=去哪儿.....>字节>京东商城......>oppo>Shopee,网易,B站
从上面我们把这些公司从基建这个角度分成了四个阶梯
阿里和美团绝对的在第一阶梯,这里不但有各种各样的工具,而且提供了方便的接入和服务,让你可以很快上手用起来。员工非常认可公司的基建建设。
第二阶梯的工具链在以上几个方面的某一个方面有所缺失,但员工对工具的满意度还可以。典型的如拼多多在C++侧的工具链就需要再完备一些。
第三阶梯的工具链在以上三个方面除去有需要改进的方面,更体现在员工对基建的满意度差。典型的反馈就是「又不是不能用」
第四阶梯员工对公司的基建非常不满,比如 shopee的员工对 git 服务器卡顿的「愤怒」
这里有个比较让我吃惊的地方是「腾讯」,很多从美团去腾讯的同学反馈,腾讯的基建相对于美团来说还是有很大改进空间。讲道理说以腾讯的体量和资源,建设起一流的基建不但对自己有益,又可以输出到投资的很多公司,还可以放到云上售卖,自己做的非常好才是,但是的确是反馈不佳。鉴于反馈的差异较大,暂时没有排名。
百度的排名也比较有争议。有个粉丝说百度EE yyds,应该放到第一位。结果下边立刻有人质疑他去了一个假百度,回复只能说功能都有,称不上好。也有人觉得放到第三梯队比较合适。鉴于反馈差异较大,暂时也没有排名。
本文总结
上面的排名相对来说,因为信息有限,难免有失偏颇,而且比较「主观」。但大家应该也能从中看出一些问题。基础设施建设团队一定要到一线团队去多走走多转转,去舍身处境解决一线同学的问题。很多团队在那里无情地卷着自己还卷着别人,自嗨到不行却没有顾及用户的感受。
欢迎大家反馈,给基建好的公司和自己用到的好的工具打call,比如美团的 cargo,阿里的 odps,滴滴的 Lean。
我的其他文章
DevOps infra | 互联网、软件公司基础设施建设(基建)哪家强?的更多相关文章
- 上海洋码头(www.ymatou.com)急招技术人才(职位:互联网软件开发工程师,.NET网站架构师,Web前端开发工程师,高级测试工程师,产品经理)
对公司招聘职位有兴趣的童鞋可以把简历发送到zhangzhiqiang@ymatou.com,我们HR会快速给你答复. 互联网软件开发工程师 岗位职责: 1.参与洋码头各个平台(www.ymatou.c ...
- 报表软件公司悬赏 BUG,100块钱1个的真实用意
上一篇文章我讲到,报表软件FineReport一反常态,做了个<提BUG,拿现金>的活动,1个BUG,100块钱.纵览软件行业,如金蝶用友浪潮IBM微软等国内外巨头,均没有这样的举动去征集 ...
- 传统IT公司/创业公司/互联网大公司的offer如何选择?[转载+原创]
背景介绍: 第一家工作的公司是一家跨国外企安全公司, 骄傲的称自己不是互联网公司而是传统软件公司, 第二家公司是当下最热的知识分享社区, 创业公司. 第三家公司是挤走谷歌, 曾一度称霸中国的搜索引擎公 ...
- Atitit.研发管理软件公司的软资产列表指南
Atitit.研发管理软件公司的软资产列表指南 1. Isv模型下的软资产1 2. 实现层面implet1 3. 规范spec层1 4. 法则定律等val层的总结2 1. Isv模型下的软资产 Sof ...
- 4.2w起步的软件公司创业历程
调查说,中国民营企业的生命期平均是2.8年,如今我的企业已走过近四年,而这一年却是我的迷茫期,不知道何去何从,现在写下 来与大家一起分享一下,写得较为凌乱,大家将就着看一下吧:) 先交待一下自己,我来 ...
- 技术总监和CTO的区别 浅谈CTO的作用----软件公司如何开源节流(一)[转]
我一直在思考软件公司如何开源节流.当然,老板也在思考开源节流.当然,老板思考的开源节流在公司运营层面上,而我作为CTO,我考虑的则是在产品运营角度上来思考这个问题.否则,一个软件公司,它的生存与发展就 ...
- [转]美国的软件公司是什么样?---- 以Fog Creek为例
作者: 阮一峰 日期: 2009年2月15日 Joel写过一篇文章,关于软件公司如何雇到优秀的程序员. 他说,软件公司的头等大事,就是找到第一流的人才.不同于其他行业,软件是一种纯智力产品,你有什么样 ...
- 软件公司的两种管理方式 总体来说,这个世界上存在两种不同的软件公司的组织结构。我把他们叫做 Widget Factory(小商品工厂) 和 Film Crews(电影工作组
软件公司的两种管理方式 一个简单的回答应该是——“因为在我们的社会里,我们总是会认为薪水和会和职位的层次绑在一起”.但是,这个答案同时也折射出一个事实——我们的薪资是基于我们的所理解的价值,但这并没有 ...
- Atitit.互联网 软件编程 数据库方面 架构 大牛 牛人 attilax总结
Atitit.互联网 软件编程 数据库方面 架构 大牛 牛人 attilax总结 Coolshell 称号.理论与c++ 阮一峰:: 理论高手与js高手 王银:理论高手 赵劼,网名老赵,c#高手 与理 ...
- 生意经:凡是现今比较会赚钱或是规模比较大的软件公司大都属于开发"消费型软件"的公司(而且登广告,应该定低价进行销售)
c#之父是Anders Hejlsberg, 一个丹麦天才.他和idsoft的John Carmack都是自学成才的典范. 他对语言和汇编的理解全世界没几个人能超越. (今天偶然从网上了解到这个大牛, ...
随机推荐
- gulp技术:自动化构建工具
作用:压缩css.js.img,合并文件,改名字,编译sass,拷贝 使用步骤: 1.安装node环境,下一步,下一步,安装C盘: 2.在你的根目录下,在地址栏输入cmd回车: 3.检测node和np ...
- postcss-px-to-viewport适配屏幕大小
1.postcss-px-to-viewport适配的介绍 postcss-px-to-viewport是一个插件,用起来非常方便,安装一下插件,搞个配置文件就可以直接用了. 2.postcss-px ...
- nodejs 利用URL和querystring获取get查询参数
为深入理解request的get url信息及参数传递,利用URL和querystring获取对应的信息,测试成功,记录如下: 1.编写server.js文件 http=require("h ...
- org.xml.sax.SAXNotRecognizedException: SAX feature 'http://apache.org/xml/features/allow-java-encodings' not recognized.
tomcat启动服务后,解析xml等文件会报错org.xml.sax.SAXNotRecognizedException: SAX feature 'http://apache.org/xml/fea ...
- thread互斥测试
thread互斥测试 实践代码 #include <stdio.h> #include <stdlib.h> #include <pthread.h> //linu ...
- TAP 交换机
首发第一篇,就想分享一下TAP交换机的网络设备,为啥要谈这个呢,因为是一个冷门产品,大厂一般都没有,有也不作为重点产品推介,所以关注的人少,希望能给有这方面需求的人,又苦于找不到介绍资料的人以帮助.在 ...
- Qt打包win应用的流程(转载)
基本就是命令:windeployqt 目标文件.exe 一定要新开一个文件夹再执行这个命令. 参考网站: https://blog.csdn.net/weixin_39504048/article/ ...
- GDB使用详解
来源:GDB使用详解 - 知乎 (zhihu.com) 1. 概述 GDB 全称"GNU symbolic debugger",从名称上不难看出,它诞生于 GNU 计划(同时诞 ...
- MySql数据库的两大引擎InnoDB和MyIsam的区别
事务方面 InnoDB支持事务,MyISAM不支持事务.MySql的默认存储引擎为InnoDB 外键方面 InnoDB支持外键,MyISAM不支持,对一个包含外键的InnoDB表转为MYISAM会失败 ...
- python selenium 操作文件上传,并发操作时,文件选择窗口混乱解决方案
上传文件 使用的是 python + autoit 模块,这种方式有一个问题,当出现多条任务同时选择文件上传的时候,无法判断那个文件选择窗口的归属,从而出现上传了错误的文件! 解决方法: 要上载文件而 ...