说说网易的实习面试

写在尘埃落定之后

由于种种原因,最近几个月以来精神状态实在是非常的糟糕,我一直对自己没有一个靠谱的定位甚至是评价,也许是因为认识的小伙伴都很优秀,也许是进入大学之后所见所闻都颠覆了以往建立起来的评价体系,不得不在此再次感叹出身和视野对人影响之大。

我还是非常感谢有这样的机会,把我从自怨自艾的深渊里拎了出来,逼着我去准备这些,也很感谢最后能有这样的结果,最开心的还是自己这两年的成果总算是得到了一点点的认可。其实原本没抱太大希望,虽然从结果上来看怎么也算不上差,总之暑假有实习的地方而且待遇比预想的要好不少,应该算是意外的收获了(笑)。

本来想面完就总结一下的,但是转一想还是等结果出来吧,于是等到了现在,希望本蒻的一点经验能为后来者提供些许的参考,这便是写下这篇文章的我最大的荣幸。

概况

简要介绍一下我在 QQ 群里水群多日得到的大致了解,网易的业务在北京、上海、广州、杭州有办事处,有道和门户等业务主要在北京,游戏部门(分雷火和互娱两个事业群)在杭州和广州都有业务,杭州办公面积较大,很多主要业务在杭州(包括杭州研究院),运维岗位不是每个事业部都有,比如考拉海购部门的运维技术是杭州研究院提供,部门内只有 QA 没有 OP,有道也没有独立的运维岗位一般是运维开发或者运维测试,而游戏部门就有独立的运维岗位。

关于办公环境应该是杭州最好,根据和面试官的简短的几句闲聊得知杭州的办公环境比广州要宽松(稍微查了一下广州2万平米,杭州有13万,这个差别还是很明显的),至于我为什么选了广州啊哈哈我也不清楚。

面试之前

  • 简历: 实际上大厂提供的简历模板是比较具有参考价值的,能让你知道公司想看什么样的内容,为自己制作简历的时候增加对比的对象。简要介绍自己的项目(然而网易的简历模板并不能给你写这些,建议写在项目简述里)让看你简历的人不用去猜这个项目到底是干什么的,注意一点就是面试官提问会根据简历内容进行提问,务必实事求是地写简历,被问起来一问三不知这就是药丸的节奏。填邮箱什么的最好不要用 QQ 号,也不要使用 Gmail 这种容易丢国内邮件的邮箱。
  • 笔试: 网易游戏运维岗位内推是免笔试的(也许是运维岗位本身就没有笔试,但是据我所知北京互联网的运维测试岗位是有笔试的,而互娱绝大多数实习没有笔试环节),研发岗即使内推也有笔试环节。网易的笔试比较简单,偏向基础,据说鹅厂的笔试题很难,由于我并没有投所以没有见识到,但是鹅厂笔试模拟的时候倒是见过一道后端方向的题,大致是假设业务遇到性能问题,给出大致的症状(CPU 满负载、IO 迟缓等)要求判断问题所在并给出解决方案,算是综合性很强而且非常考验实际项目经验的题,问了几个小伙伴都没有把握答的完整。
  • 时间安排: 大致情况是简历筛选的时间是不确定的,可能很快也可能需要一个月以上,通过简历筛选之后会有 HR 电话一面具体时间,一面后三到五个工作日进行二面,二面后等通知并没有具体时间上的保证,全部筛选结束后才会有拒信。HR 表示没有收到拒信都可以认为是暂未处理结束。

面试准备

关于电话面试,在一面之前在谷歌搜了一圈电话面试的注意事项,百度出来的结果都什么鬼嘛,得出的一个主要结论就是一定要安静。对在校生来说,如果有工作室或者办公室之类是最好的,如果要在寝室务必和室友沟通请他们回避,有人在背后会带来无尽的情绪上的影响。

信号要好,最好在电面开始前和小伙伴通个电话感受一下现场信号情况是否可以接受(一般电面都是长途,通话质量也会受到影响,请注意这个因素)

使用带麦的耳机,首先长时间握着手机会很累,耳机的通话效果也会比举着手机好的多,另一个原因就是使用耳机可以解放双手记笔记或者拿资料。

电面的一个优势就是面前可以放任意资料,手边可以有纸和笔,甚至是电脑,至于要不要现场查这个问题在知乎前辈看来意见是有分歧的,我个人的感觉是能立刻获得答案的简单问题,手速够快的话可以试试,但不要发出哗啦哗啦的翻书声音也不要发出啪啦啪啦敲键盘的声音。在手边放一份自己的简历,面试官关于简历内容提问的时候要清楚自己简历上到底写了什么。手边准备纸笔,有什么问题一边说一边写一写有助于思路整理,也有利于事后反思。

冷静这个问题地球人都知道然而实在是不好做到,总之就算是舌头打结磕巴了也要和面试官问上午好/下午好,尽量口齿清楚(实际上我一面二面都被面试官问到了请重复一下,大概是自顾自说话没注意音量和语速)记得问面试官能不能清楚的听到说话,相对的如果有问题没听清楚也可以让面试官再说一次(实际上我 pardon 说的还是比较多的···)。

一面

一面问的都是技术细节,实际上我准备并不算充分,加上很长一段时间处于比较游手好闲的状态很多技术细节都不是记得很清楚,还是有几次被问懵了的情况。

开场就让做自我介绍,一下就懵了,有啥好说的啊简历里不都写了吗,还好简历摆在旁边,瞄了一眼大致自己写了什么,按照类似的思路简单介绍了两句。

面试官询问了一下常用的服务器大致情况,然后问了一堆基础问题比如:平时都是怎么管理服务器(当然是 SSH),追问 SSH 是如何进行用户认证(基于密码认证和基于公钥认证),文件传输使用什么(答曰 scp 和 rsync,至于为什么不用 FTP?学校机房封端口我有什么办法(╬▔皿▔)~),scp 和 rsync 的区别,为什么使用 scp/rsync(提了一下 rsync 在服务端没有 rsyncd 的情况下实际上使用的是 ssh,需要断点续传等高级需求的时候使用 rsync),TCP 建立连接三次握手流程和断开连接的流程(基础知识不多说,不过当时有点不记得断开的时候具体发的什么包),DNS 查询的流程(答了基于 UDP,在熟知端口53,递归查询特性,本地缓存,差点忘记了是先查询本机 hosts,面试官追问是先向本地 DNS 服务器查询吗我才想起来先查 hosts),用户管理相关命令和文件有哪些( /etc/passwd /etc/group /etc/shadow 这些,命令 useradd usermod 等),

  • SSH 公钥鉴权的流程:没完整的把公钥鉴权的流程记住,不过大致的说了一下原理(也提了一下 ssh -v可以看到具体信息),事后也重新查过,参见 SSH 原理简介
  • 常见 HTTP Status Code 的含义比如 200 403 404 500 502 504(基础问题一搜就有,会追问什么情况会遇到这些 code)
  • 硬链接和软链接的区别:这个问题跪了,并不是没看过相关问题但是实际上硬链接使用的太少,以至于忘记了有什么区别,只记得一个有独立 inode 一个没有,事后专门去查过:理解 Linux 的硬链接和软链接
  • 常用的哪些发行版,发行版之间的区别:(回答常用 Ubuntu Debian CentOS,桌面也有用过 Arch 和 Gentoo,谈了一下红帽系在软件方面的更新速度较慢,但是红帽相关的安全补丁给出相对较快,举了一下 Heart Bleed 漏洞的情况。)追问你在使用中有没有发现这些发行版的区别:答了一下在就业网迁移的时候遇到的 php-fpm 在打包的时候默认路径有一个字符的区别以至于 session 文件无法正确写入的情况,还提了一下 init 系统不同引起的一些服务脚本的修改。
  • 维护学校网站时候怎么进行监控:谈了一下 zabbix/cacti ,还有第三方成品服务比如听云等。
  • 你在维护过程中是怎么解决问题的:答先模拟访问,查看浏览器 F12 输出和 curl 结果,基本判断出现问题的是前端还是后端,然后查阅相关日志
  • 你遇到了哪些坑:举了一下 nginx 在解析配置文件的时候 listen 参数写法引起的顺序覆盖问题,详见记一次 nginx 多站点配置错误导致301跳转的 debug
  • 你对开发的理解:(提了一下 Python/Go 这种语言,提了一下 C 网络编程),面试官追问如果让你学习一门像 Python 这样的新语言你会怎么安排时间(懵了,开发是我短板,只能说自己的计划,先看语法后看实例,找常用第三方库,改现有项目练手等等,感觉要是对着凤凰那篇 the start 会好很多)
  • 你使用过哪些 VPS?(实在是太多以至于我都不知道举什么例子好,说了一下 Azure SLHK Linode 这几个比较有代表性的)说说你对虚拟化技术的了解(简单说了一下 KVM XEN OPENVZ 的区别,主要说了完全虚拟化/半虚拟化/容器的特点和性能问题,详见李博杰:虚拟化大观
  • 你最深刻的一次经验是什么?:这个我确实是纠结了一下到底说哪次,因为我还确实是没想过哪次算,最后还是答了就业网迁移工作,毕竟那是实打实的生产环境,本菜鸡接触生产环境的机会实在是少得可怜。
  • 你平时都怎么关注业界的信息?:回答了 V2EX HackerNews 还有其他社交网站。
  • 最近操作系统方面有什么新闻?:实际上这个问题问出来我又懵比了,说了一下 CoreOS 和 docker,竟是没想起来说 Windows10 最近发布的 Ubuntu 子系统(亏我面试前两天还玩过,感觉之前说自己看 HN 现在又没想起来 Ubuntu 子系统简直是在打脸)。

总体而言,一面给我的感觉就是套路很强,事先稍微看看运维常见面试题能覆盖一半的基础问题,像 SSH 公钥鉴权流程、三次握手流程这些都属于套路很强的问题,不过没特地准备也有点好处就是知道了自己遇到问题到底能想起些啥。

二面

二面和一面的面试官不是同一个人,之前问到过的问题并不是没有再问的可能,所以在二面前我查了很多常见的基础问题(然而基本问的都是主观性的问题,全都没用上),由于小伙伴说我是个记忆只有三秒的人,下面问题列出的顺序不一定完全和当时一致。

二面的问题相对主观,而且套路比一面少很多,基本是跟着你回答走,感觉说话前最好思考一下怎么接自己的话。

  • 又是开场自我介绍,和之前一样不多说。
  • 讲讲你的运维经历:还好每次跳坑都会写下来,这个问题主要还是对着博客的记录回忆情况。涉及到的很多细节问题面试官会追问,实际上和一面的很多细节问题是重复的。
  • 开发与运维的关系:当时想的是开发和运维需要互相沟通理解,运维要懂点开发,开发要懂点运维才能比较流畅地合作,举了个学校就业网开发连 systemd service 都不会重启的反面例子(对不起我真不是故意要黑学校),后来一想这个回答实在是太肤浅,看了那么多大道理都被狗吃了,真是所谓功夫在平时,紧张的时候想到的还是平时接触的多的情况而不容易想到那些看来的东西。现在要我回答,我大概会回答 DevOps 的目的是让开发不需要顾虑开发,对大公司而言开发适合自己的云技术体系才是运维的终极目标。
  • 你对职业的看法和规划:(根本完全没有正式从业经验这你让我怎么详细说嘛,大致说了一下云计算的趋势,运维自动化)面试官追问你对运维自动化的理解,于是答了一下 ELK 和批量部署(感觉没有提到访问控制是一个失误),关于运维职业发展,推荐阅读小米运维部的 NoOps 理念运维职责思考
  • 你要如何学习开发语言:(和一面一样不多说)
  • 平时在学校的作息安排:(听到这个问题又是懵的,不知道这个问题想问什么,状态不佳期间颠三倒四的作息也不好拿出来说,于是还是按上学期状态比较正常的时候举的例子:上课+完成工作室的任务+看自己想看的书和技术网站+课余娱乐,不玩游戏),面试官追问就这些吗?(啥?除了这些还能有啥,于是直说没有,感觉这样算过的比较充实)这个问题实在是问的我很虚。

二面接近结束的时候问到了有没有投其他公司(答曰没有,实际上就是没有),为什么选择网易(工作环境、业界地位等方面讲了讲,顺便提到运维岗位需要大公司比较方便锻炼,面试官表示实际上各有优劣,我还提到了杭州的小伙伴说的食堂很好,面试官对此尴尬的表示可能只有杭州那边好吧广州这边不一定有那么好,我连忙表示无所谓主要是看氛围啊哈哈 orz),面试官提到我对运维自动化的理解太浅(冷汗下来了),告诉我面对公司几百上千的服务器的时候的模式和面对学校几台服务器的情况是完全不同的。

最后有一个向面试官提问的环节,基本没怎么想就问了面试官对职位的理解。

没有第三面

网易的实习生只有两轮技术面没有 HR 面(互娱事业群、互联网业务技术岗位都只有两次电面,现场面可能多一轮,据说雷火事业群有五面以上感觉很辛苦)。

结语

事后和小伙伴交流了一下,感觉面试还是非常经验性的事情,多来几次大概就不会紧张的出一手汗。稍微有点后悔在三月到四月上旬这段春招的集中时间没有多投几家,笔试面试的经验实在是很宝贵。

关于面试本身,小伙伴是这么说的

至此我已经知道面试这件事的大概方向,并不是考查你能做什么程度的事情,这个也很难考查。而是看你对原理多了解,学习欲望多强烈,逼格有多高。 不然你问应届生这些,他很可能一年内都用不到。

确实可能面试这个事情很难系统的考察一个人的能力,感觉运气成分也很大,但是至少经验是不能造假的,吹比与否还是很容易问出来,另外就是认知水平这种比较玄学的东西(?)了,总之自我感觉那些只是看看而没有得到实践的东西是很难在这种情景下脱口而出的,甚至你都不会想起这事情你看过。

纸上得来终觉浅,绝知此事要躬行。

总之暂且写到这里,

感谢室友对我这些日子的包容,考研加油了。

感谢安学长的内推,没有内推很可能我直接挂在简历或者笔试上,希望我能留任广州以后还有机会做前后辈。

感谢和我分享经验的小伙伴们,也祝你们都能有所斩获。

也感谢父亲对我的否定,没有你的否定我也许不会这么想要证明自己不是底层的校园渣滓。

总之以此为新的起点,加油吧。

7条评论


  1. 来看前辈面经。(封端口这个真是深有体会。

    回复

  2. 从https://www.starduster.me/2015/08/21/say-goodbye-to-ss/ 这篇文章进来的,文笔太好了。发现还是校友,而且我也要去网易了,好巧,不过是杭州

    回复

  3. 电科的竟然没去华为= =网易加油~

    回复

  4. 1,MBP 的键盘摇摇晃晃,真的不如 ThinkPad 舒服。
    2,第一次用 markdown 写长文,确实舒服。

    回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.