点击上方“CSDN”,选择“置顶公众号”

关键时刻,第一时间送达!

最近,我收到了一来自爱奇艺的高级运维开发岗面试邀请,一波三折之后也算首战告捷了。本文就来分享下我去面试的经历,希望给大家带来些帮助。

准备环节

接到 HR 的电话后,我便跟妹子约好了具体的面试时间和地点(插句题外话,我绝对没有被妹子软萌的声音酥到)。

在去之前,我看了下爱奇艺的岗位介绍,毕竟有备无份。如果成功面上了,我也是需要再考虑下的对吧(毕竟他们除了要我,还有其他选择吗)。那最爽的结果就是手握各大厂的 OFFER,然后沉浸在无法做出选择的幸福中了。

准备过程中,我发现他们的要求中需要对 ansible 熟悉,而我之前恰好有用过 ansible,但是更为熟悉的还是 saltstack。因为产品化的东西更吸引我,在工作中也用其做过二次开发,所以又对 ansible 额外做了一些调研,比如说自己动手写了几个 PlayBook,包括 Python API 调用。这里要说下,网上很多资料都是老版本 ansible 2.2 的,现在都更新到 2.5 了,其中的 API 调用也发生了很多的变化,建议大家多看看官方文档,百度搜索真的太乱。

面试那天,地点就定在爱奇艺大厦(大厂都是有独栋的,确实不一样,下次有机会在分享 bilibili、鹅厂、饿了么的面试过程)。等待了一会就有一位男同胞把我接楼上去了(可惜的是,没能看到当时打电话给我的小姐姐),领到小房间后,让我填了份表格。

填好后,领我上来的那位员工把我的单子拿走了,然后丢了句,“稍微等下,面试官马上就来”……然后我就安静地等待面试了。

初面

来初面的是位个子一般的程序猿(我胖啊,我怕谁),首先就是自我介绍。

我觉得这个很有必要说一下,自我介绍一定要强势,一定要底气足(是你们要我,不是我自己找你们的,不要搞错好伐)……

那么需要凸显的有:

  • 自己的项目介绍(运维开发岗位的话,就是 CMDB、CI/CD、K8S、OpenStack,有什么说什么,千万别不好意思);

  • 武器库(Python 什么级别?用过协程就别说多进程,用过 Tornado 就别说只会 Django)。

我还记得初面中的一些问题:

Q:Python 的列表解析式会写吗?会的话写一个,比如选出 1-100 中的奇数。

A:[i for i in range(100) if i % 2 != 0](其实这里有很多种做法,比如最简单的用切片就可以了 list(range(100))[1::2]都不需要列表解析式,但为了迎合他的问题,你得往他身上靠啊)。

Q:那 (i for i in range(100) if i % 2 != 0) 这个和你写的有什么区别呢?

A:你现在写的是生成器解析式,返回的是一个可迭代对象,不是list对象(其实技术面试呢,如果你能摸到对面的小心思,那就稳了呀)。

Q:装饰器有用过吗?用过的话,一般你是用于解决什么场景的?

A:用过。典型的用户认证,简单点的可能日志处理等,主要用来处理一类问题的时候。

Q:那你能写一个装饰器吗?用来对用户的参数进行检查,如果参数类型不匹配,就返回一个 ERROR 报文,否则返回 SUCCESS。

A:好的(这里不以代码为主,思路很简单,如果你用 py2 可能要用 attr ,但我 py3 就可以用 inspection,把获取到的参数检查一下类型就好了。但这里也有一个要求,类型是定义在函数声明时?py3.5 开始的类型注解。还是写在配置文件或者函数体里面?反正我就当做用 py3 写了类型注解)。

……(省略一些基础问题)

由上可以看出,面 py 开发,基础是很重要的。期间还问了上下文的实现原理,还有类的使用、继承、__init__和__new__的区别,实例方法、类方法、静态方法,实力属性、类属性等等,就不一一展开了。

Q:你有做过 CMDB 吧?那你们 CMDB 里,如果有多套业务同时发生,你是怎么处理的?

A:(开始问我网络和并发了,这个要能听出来)我起初用的是多线程的,后来发现在处理并发的情况下,效果并不理想,就改用多进程了。但还是会有瓶颈,比如在作业模块上(主动抛出橄榄枝,我还做过作业平台),并发比部署系统更频繁,多进程处理会直接打满服务器 CPU。后来就考虑换了协程,效果非常好。

Q:你说到了协程,能说明一下协程和线程、进程的区别吗?

A:(知道你要问,这不被我带节奏了么)……(省略百度百科),协程主要解决的还是并发的问题,以及 Python GIL 带来的并行处理能力。

接着就让我写一个协程,我就简单地写了一个生产者消费者模型。

聊了大概四五十分钟,之后还聊了 Django 和前端的一些技术。

最后了解了下,面试我的也是负责运开的技术开发。

二面

休息过后,就来了第二位面试官。这次面试的是运维知识。

先从最简单的三次握手四次挥手问起来。

接着深入一点,开始问我在一次浏览器地址输入一个链接后,到显示出页面,中间经过了哪些过程?其实就是问你 DNS。

A:先找 hosts 文件,如果没有就开始 DNS 了,查询本地缓存,如果没有则向根发起查询,一层层向下请求,直到找到为止,响应给本地 DNS 服务器,再返回给客户端(个人感觉 DNS 回答得有点虚……相对 py 来说)。

Q:那你有做过类似 nginx 的配置吗?能简单说下代理或者负载均衡吗?

A:nginx 就自己用过,但没有生产维护过(没有做过的话,个人建议还是老实交代为好,其实本来技术面试就有可能遇到你不会的,完全没有关系,只要符合要求,部分技术不合规也是没有关系的)。

后来的对话中,面试官也表示,可能之前做的更多的是 DB 的工作,对于 Web 容器这块不熟悉关系也不是很大。

然后就和我聊起了 DB、MySQL 的高可用、分表、SQL 优化、监控等。这些基本也是老套路了,网上能查到很多,这里不做叙述。

技术组长

过了两轮后,竟然还有技术面,这次竟然是技术组长......然后还是首先自我介绍(不得不说,每轮都要自我介绍,每一轮我都说得不一样哈哈)。

经过上两轮基础的问题后,就开始问我算法了。嗯,这一轮确实不太一样,这里我只能说靠平时积累了,有多少货就都掏出来吧!

Q:现在给出一个列表,`[a,b,c,d,a,v,s,d,c,a]`,对其进行计数,返回出现次数最多的是?

A:嗯,我想想。然后给出了一个字典的存储方式,原因就是可以减少循环次数,尽可能降低时间复杂度。其实我一开始想说,直接用 Counter 模块不就好了么,但是没说出口,我知道会被打。

之后就对我自己做的一个 MiracleOps 问了很久,主要围绕的还是实现的方式和原理。其实就是看你是不是在编造,因为如果是自己一个人做的,那随便问什么都会知道,但很多人会把自己参与的项目说成是自己独立完成的。

整个三面大概持续了将近一个小时。

术总监

三轮面试后,终于熬出头了,到了和技术总监对吹的环节。和技术总监聊就有一个好处,你可以不用说具体的实现了,和“老人家”聊技术,你就得让他觉得你这个小伙很靠谱,思维很先进,有意思。

我充分发挥了我 12 年的语文词汇,把能说的成语都套上了技术的字给丢出去了。让我谈谈理想,我就说,我要把自己的余生交给公司,为公司开辟疆土,将运维盈利化、产业化。让我们的部门成为公司最受瞩目的 Part,让总监你成为老板的左膀右臂!

我也不知道这波侃得怎么样,反正总监是笑了。你们觉得呢?

HR

最后!接下来就是和妹子聊了。HR 小姐姐和我说完大概情况后,和我开始聊起待遇,问我要多少。

划重点了,大家在这个时候一定要稳住,千万别兜底,你自己得要有自己的底,过了咱就不伺候了。

你可以在自己的工资上面稍微加一点,把平时的奖金、福利、打车报销等等,都加在基本薪资上,毕竟涨薪和福利可没关系。

另外,HR 如果要你说期望,你就往高了说,反正不管高低都会压你。

经过一番博弈后,HR 小姐姐终于问出了那句“如果薪资没有达到你的预期,你还会考虑我们公司吗?”——小伙伴们,这句话你们应该不陌生对不对,千万不要慌,你可以委婉地告诉她,

“经过一天的面试,我觉得贵司的流程制度还是非常完善的,而我应聘的部门气氛也非常好,我相信我能为公司、部门带来看得到的提升,也相信公司会正确的给予我一个合理的范围。”

这样,HR 也就懂了。

总结陈词

好了,经过一天的面试,到家也已经 7 点多了。真得很累了……

其实各个公司的面试流程大体相同,不同的是技术问题,以及每个人对应的方式方法。给大家总结一下我的经验:

  • 技术面的时候,一定要把自己有的全都掏出来,让对面看看咱的真家伙。

  • 在和总监面的时候,尽量说得眼界大些,能给部门带来收益是最好的了,但别越界了,让领导觉得你过来会威胁到他,那估计就没戏了。

  • 和 HR 聊薪资的时候,不要过早暴露自己底线。另外 HR 想要知道你的期望都是 OK 的,但你可以多加一点,反正合不合适 HR 都会告诉你的,要你就会说再考虑下、争取下,如果不合适,你低了过去也没意思。

好了,以上就是我之前去爱奇艺面试高级运维开发岗位的经历,希望给大家带来一些帮助。

————— 推荐阅读 —————

点击图片即可阅读

四面轻松突围!我是如何斩获高级运维开发一职的?相关推荐

  1. Python高级运维开发面授课程本周末隆重开课

    老男孩教育Python高级运维开发面授课程本周隆重开课 浏览地址内容或下载地址内课件,查看最新Python2.0课程,全新讲解,Python版本升级,并增加云计算开发内容,猛戳详细了解! http:/ ...

  2. 【王老师说运维】:高级运维开发工程师在线评测

    智一面小编曾说过,运维开发是IT运维的未来发展趋向之一,由于docker和kubernetes的兴起,越来越多的企业把自己的核心业务容器化,而容器引擎目前又以docker为主,管理容器集群kubern ...

  3. python的运维开发课程_老男孩python高级运维开发课程

    L老男孩培训-python培训二期lesson01(11节) 01-第一天内容介绍及课前思想 02-python介绍及发展 03-python 发展 04-python安装 05-python编程风格 ...

  4. Python高级运维开发2016年7月第14期隆重开课

    下载结尾附件可看详细课程表 Python自动化开发课程2.0版 看看这两年内运维领域里最热的词吧,肯定是非"运维自动化"莫属,为何运维自动化这两年如此火热,以至于每个公司都在探讨如 ...

  5. python运维系统开发_Python系统运维开发实战

    课程主题: Python 高级运维开发实战 课程讲师: Alex 老师, triaquae python 开源运维管理软件创始人,知名 IT 公司运维开发架构师 课程安排: 每周六一天全天(早 9:0 ...

  6. 最通俗的运维开发工程师招聘解析

    因为最近我接到客户的一个高级运维开发工程师的岗位需求,索性将这个职位最近接触到的知识做了一次整理. 一般这类岗位,与我们普通人的日常肯定是非常少见的,理解的难度相对比较高. JD 岗位职责 Linux ...

  7. python运维开发做什么_想做运维开发工程师,Python Django学的很迷茫,怎么办?...

    不只一个想要转型成为运维开发工程师的小伙伴问过我,Python语法学起来那么简单,为什么一个Django框架就那么难? 学Python的小伙伴往往会有这样的困惑: 我看了100多个小时的教学视频,为什 ...

  8. 5年运维经验分享:一个小白走向高级运维工程师之路

    我是Freeman,88年的,老家河南,来上海4年,O2O行业高级运维工程师,拥有5年运维经验. 我目前维护上千台服务器,熟悉大型网站架构,熟悉集群高可用,熟悉数据库.对大并发场景下的业务稳定性可用性 ...

  9. 亲爱的,我是一条Linux运维技术学习路径呀。

    根据我的经验,人在年轻时,最头疼的一件事就是决定自己这一生要做什么.在这方面,我倒没有什么具体的建议:干什么都可以,但最好不要写小说,这是和我抢饭碗.总而言之,干什么都是好的:但要干出个样子来,这才是 ...

最新文章

  1. redis内部分享ppt
  2. keras回调监控函数
  3. 那个被捧上天的GPT-3要开始收费了!网友:天价,溜了溜了
  4. 让英文版windows 8支持非Unicode程序的语言方法
  5. Python+Selenium练习篇之11-浏览器上前进和后退操作
  6. python函数做菜单_PYTHON图形化操作界面的编程七__创建菜单
  7. 自己写的一个抢票加速的Python小程序源码分享-----纯属娱乐
  8. POJ1195Mobile phones
  9. 利用django中间件CsrfViewMiddleware防止csrf攻击
  10. 微软遭遇滑铁卢,chrome成为最受欢迎浏览器
  11. python画建筑_专题 | Python 绘图入门
  12. 如何将Java应用程序置于Apache HTTP服务器之后
  13. php扑克牌排序,PHP实现判断扑克牌5张连续
  14. 产品经理这个梗是怎么来的?
  15. 电商购物网站 - 需求与设计
  16. 阶段5 3.微服务项目【学成在线】_day01 搭建环境 CMS服务端开发_14-MongoDb入门-文档...
  17. 树莓派4支持多大tf卡_树莓派raspberry4B入坑指南 part-0
  18. 淘宝装修:1920全屏海报(源代码免费下载)
  19. 天堂2经典服务端源代码ver2.0-2.7
  20. 19年的两篇多标签文本分类 + 一篇层级多标签文本分类论文分享

热门文章

  1. 窗口潜水面罩行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  2. matlab循环输出图像,运用matlab实现循环语句中的多幅图像显示
  3. 2020级C语言大作业 - 小球进框
  4. plsql中oracle定时任务日志,速掌握一个简单的Oracle定时任务
  5. 为什么说 Rust 是编程的未来?
  6. @开发者,第二届“马栏山杯”国际音视频算法大赛高分攻略请查收,心动大奖等你来战!...
  7. 当推荐系统遇见知识图谱会发生什么?
  8. 云智慧完成D3轮6000万美元融资,继续领跑智能运维市场
  9. 一年翻 3 倍,装机量 6 亿台的物联网操作系统又放大招!
  10. 如何像高级开发人员一样思考?