由于Google的服务已经集群化,系统工程师并不大量接触硬件比如做安装服务器等事情。另外大部分工作也已经自动化了,比如架设LDAP, 负载均衡等。对照而言,国内目前大部分互联网公司SA仍然要做大量重复的底层工作,比如拿一个业务的数据库过大需要拆分为例,从系统管理员的角度,需要做以下事情

1. 同技术人员沟通目前业务特点,制定拆分方案并评估程序风险
   2. 搭建测试环境,技术人员测试程序兼容性
   3. 制定实施方案,保证业务的不停机平稳过渡
   4. 深夜上线
   5. 观察1-2天运行情况

我们需要思考上面工作是否是系统管理员以及技术人员有价值的工作。像Cassandra这样解决了分布式存储自动化扩展的问题是业内一种发展方向,尽管Cassandra的稳定性还需要改进)。

Google的系统工程师怎么做?
他们会通常1周值班,响应各种问题,比如完成上述场景中的扩容业务。然后有大约5周左右脱离一线工作来自由思考将这1周内碰到的工作进行自动化改进,将那些会反复碰到的问题通过脚本及监控程序完成,或者进一步反馈给技术人员改进应用程序来实现自动化。1:5只是个大约比例,时段可以灵活安排。比如也可以按天来安排,1天值班/7天改进。当改进完成之后,下次遇到相同的场景,自动化程序会完成大部分工作。如果在其他公司,SA通常忙碌在一线机械重复上述工作,但是在Google, 给系统工程师预留了相当多的时间让大家思考改进。

这就是Google的System Administrator自称SRE(Site Reliability Engineers)的原因。SRE会不断在优化所负责的系统,一些人关注运维层面,另外一些可能关注自动化工具。所有的SA都需要具备一定程序或脚本开发能力。

因此,当遇到Google的数据规模,自动化不是是否需要,而是如何更好实现的问题。

在Google其他一些令人兴奋的工作还包括

* 与开发技术人员是协同的关系。
    * 只需关心技术,在技术领域也有职业生涯上升通道,不必转向技术管理岗位或其他。
    * 同事都非常聪明,通常会觉得自己是最逊的那一个。
    * 很多挑战,保守的估计领先行业2-10年,在这里工作就象给了你一个魔法水晶球,通过你的工作可以预见这个行业的未来。

受Google方式的启发,以下想到的一些可以研究的自动化方向
1. 程序部署

C/C++/Java/PHP/Python/Ruby/C# 等语言如何不停机自动发布
自动发布如何简洁的解决模块依赖性,比如1天需要同时更新10个有相互依赖的模块,并且不能停止服务
Web容器虚拟化,同一Web容器上可以部署多个业务,业务之间互相隔离,互不影响。
将新开发的服务程序运维自动化。一般的服务程序从数量上来说,10是一个分水岭,10台以下的服务通过人工重复操作方式来管理也问题不大,但是10台以上就需要自动化管理的方法。很多优秀的开源程序(比如Tokyo Cabinet, Redis等)在单机上表现优秀,但是大规模部署不能。大公司中很多技术人员经常提到很多开源软件不适合他们就有这方面原因。
2. 资源部署

MySQL
分布式文件存储
Cache,拿cache自动化管理举例
端口资源管理,不同业务使用不同端口,同一应用内不同的数据使用不同的端口,相关原因可以参看以前cache相关博文。
容量管理,不同的数据需要不同的容量
动态扩容,应用业务规模增长,比如从10G扩容到100G
Proxy功能,比如虚拟化端口映射,程序访问的是固定虚拟端口,这样不需要重启服务也可以随时扩充,应用也不需要一致性hash, proxy帮你做了。
3. 系统部署

OS
反向代理与负载均衡
本地分区容量,批量管理
程序发布与停止,比如一个程序一个点击部署到100台服务器
虚拟化,比物理服务器更容易部署,资源利用率更高,部署更可控

大部分国内互联网公司基础技术还是比较原始的,这跟行业过分强调“好产品是运营出来的”也有关系,基础研发通常不受重视,长此以往,只能在门槛低的领域打拼,与Google的技术差异就不止10年了。

转载于:https://blog.51cto.com/liying/968670

Google的系统工程师(SA)如何工作相关推荐

  1. 转:Google的系统工程师(SA)如何工作

    来自:http://news.cnblogs.com/n/74036/ 本文根据系统管理领域知名博客 Thomas A. Limoncelli 的 What is system administrat ...

  2. TensorFlow可以做什么?让Google Brain首席工程师告诉你

    编辑 | 明明 1月19日,在极客公园创新者大会IF2018的现场,Google Brain首席工程师陈智峰发表题为:<找答案从定义问题开始 --TensorFlow 可以用来做什么?>的 ...

  3. 赞!Google 资深软件工程师 LeetCode 刷题笔记首次公开

    有人说写代码就像我们平时开车,仅凭经验你就可以将车开走:但当有一天,这辆车出问题跑不起来的时候,你不懂汽车的运行机制,你要怎么排除和解决问题?所以拥有扎实的数据结构和算法,才能开好编程这辆车. 作为程 ...

  4. Google 资深软件工程师 LeetCode 刷题笔记首次公开

    BAT 等国内的一线名企,在招聘工程师的过程中,对算法和数据结构都会重点考察.但算法易学难精,我的很多粉丝技术能力不错,但面试时总败在算法这一关,拿不到好 Offer.但说实话,数据结构和算法花点时间 ...

  5. 量化系统工程师需要学什么?

    量化系统工程师需要学什么? 原创: 陈益波 FICC与资产配置 昨天 题记:作者2015年博士毕业加入一家量化私募公司,已经做了差不多四年系统工程师的工作.本文是根据这个岗位所用到的日常工作技能总结, ...

  6. 那个耍了 Google 的天才工程师,又摆了 Uber 一道

    跳槽是硅谷科技圈习以为常的事情,但近来Google自动驾驶汽车部门的一名骨干跳槽案却引发了业内关注.天才工程师安东尼·莱万多斯基此前曾是Google自动驾驶汽车项目的核心主导人员,但是"希望 ...

  7. 一位老工程师在谷歌工作十年后的总结

    点击上方"Java基基",选择"设为星标" 做积极的人,而不是积极废人! 每天 14:00 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java ...

  8. 应该成为一名系统工程师么?

    题外话 从家长到老师.从学生到职场精英,每个人都在说中国是应试教育,不是素质教育:中国是发展中国家,没有职业市场,一个人能成就什么,靠的是运气.胆量而不是技能.创造力.是这样么?历史有惊人的相似性,一 ...

  9. 工程师到谷歌_我如何在2020年通过Google专业数据工程师考试

    工程师到谷歌 Want to get this certification? Well it is not an easy one. You'll need to do the homework. F ...

最新文章

  1. 验证环境中的program为什么必须是automatic
  2. linux下clone一直运行,如何在Linux上使用clone()创建真正的线程?
  3. 点击空白处遮罩层关闭_如何手动关闭win10系统自带的windows defender
  4. 人均奖金300万,2021年“科学探索奖”名单揭晓:高会军周昆上榜,女性获奖人8位创纪录...
  5. 运营人必备的7大技能:数据分析能力是未来运营的分水岭
  6. Interview:算法岗位面试—11.07早上上海某机器人公司(上市)面试之项目考察、比赛考察、图像算法的考察等
  7. 软件项目管理0713:三级等保的重要性
  8. go语言按行读取文件
  9. Ayoub's function CodeForces - 1301C(组合数学)
  10. python期末知识点_史上最全的Python知识点整理之基本语法
  11. 每日一题(易错)丨Oracle SQL优化与调优技术
  12. ci php做记录删除,PHP CI APC 使用记录
  13. model存数据_数据库内核杂谈 存储
  14. c3p0连接池配置及实现详解
  15. 农商行JAVA笔试题_银行笔试题
  16. 【ESP 保姆级教程】疯狂点灯篇 —— 案例:ESP8266 + LED + 按键 + 阿里云生活物联网平台 + 公有版App + 天猫精灵(项目:我之家)
  17. RuntimeError: Cannot re-initialize CUDA in forked subprocess. 一个奇怪bug的奇妙解决方法
  18. 5.21 将表格恢复到排序前的状态 [原创Excel教程]
  19. OutputStreamWriter的基本使用
  20. 【anaconda创建虚拟环境】

热门文章

  1. jsp+Servlet+JavaBean+JDBC+MySQL项目增删改查
  2. GFStableList Adapter
  3. find命令中的print0和xargs -0
  4. 2016抢票软件分享
  5. dell support
  6. Lucene源代码学习之 PackedInts
  7. javascript: new Date(string)在IE中显示NaN的问题!
  8. 如何有效防止域名被电信服务商劫持(电信114弹窗广告)
  9. Nchain旗下矿池挖出首个BCH区块,“算力战争”真的要来了?
  10. 比特币大涨,如何辨别牛市是否真正到来?