腾讯实习初体验
说起来这个实习的来历还十分坎坷。在三月份的实习申请季,学院为我们推荐了华为海思的实习,可海思的实习笔试占比的绝大部分均是和verilog和验证有关的题目,而这正好触碰到了我知识的盲区😂(我们的课题组主要做的是生物与光学器件的仿真)。在被华为挂了之后,我「病急乱投医」地把阿里和腾讯都投了一遍。在选择岗位时,想到自己不是科班出身,只对运维方面的事务略有了解,于是就选择了腾讯的技术运营和阿里的基础架构开发。
面试
也许是投简历太晚没有HC了,腾讯和阿里都是在五月中旬才把我的简历捞了出来。阿里的面试被分到了云数据库部门,面试时问了许多有关Java的开发知识。很遗憾也是由于我对Java没怎么准备,以及面试官似乎认为南科大是一所野鸡学校,二面之后就没了消息。当时甚至以为,这个暑假是不太可能找到实习了。
在被阿里挂了之后,腾讯才发来了面试邀请(这时已经是五月中旬,腾讯的实习补录阶段了),从面试官那里得知我被分到了CSIG的云技术运营服务部门下的系统技术岗位。腾讯的一面是电话面试,二三和HR面是腾讯会议,不过面试官这一侧不开视频,只有面试者这一侧开。下面列举了一些每一面问到的问题:
一面
- 自我介绍
- 谈到镜像站
- 询问debug经验 https://c.cra.moe/t/topic/66
- 顺便谈到了如何「对包」(答tcp flag,seq,checksum)
- Linux权限,docker容器,不同的RAID类型
- LVM的架构
二面
- 开始之前先询问了自己对云计算有没有经验(答得一般,只说我自己有在云服务平台上搭建一些程序,可能可以说一下SAAS/PAAS这些平台的)
- 自我介绍->镜像站
- 询问我们为什么需要用RAID60,有没有遇到过故障,遇到故障怎么办(答服务降级+热备)
- 询问同步文件/状态的方式(答rsync),询问有无比rsync更好的方式(这个没想出来)
- 询问对996的态度
三面
- 自我介绍->asc超算比赛,如何监控功率和异常
- 校园巴士,具体的架构
- 如何监控集群,怎么保证不超过功率
- RAID的一些实现方式,NFS
- 询问能够来实习多久
HR面
- 自我介绍->镜像站,这次主动回答了自己经常涉及跟老师进行的「行政工作」,遂询问行政工作都是什么(拉通),怎么准备去说懂老师给镜像站开放公网的。
- 问了爱好,略微问了一下业余无线电的内容。
- 有没有让自己感觉到压力很大的事情。
- 导师允不允许实习(答导师随意)
- 询问未来的计划(读研,工作之类的)。
- 来自省份,学校(HR最开始以为南科大是广州的学校)
值得表扬的是腾讯的每一面都衔接的很紧,不会给人「感觉自己被挂了,但不知道自己是不是真的被挂了」的感觉。最后,在HR面完成之后的次周周二,我收到了Offer Call和邮件。所有的面试过程加起来,时间跨度不超过三周。
入职第一天
办理入职与分配工位
入职第一天的主要工作就是走流程了,早上十点钟去老腾讯大厦二楼领取办入职手续和领取工卡,随后就被导师带去了部门所在的办公楼。入职的时候会发一本欢迎手册,一张贴纸和一换皮企鹅公仔(之所以说是换皮,是因为我们拿到的公仔是标准的腾讯企鹅公仔外面套着一个牛的外套,根据往年其他同学写的博客,他们的公仔是套着当年的生肖外套)。
我所在的实习部门所在的办公楼是老腾讯大厦片区的松日鼎盛大厦。客观来说,松日鼎盛的环境是老腾大片区中较为不好的。具体表现与电梯较少(每13层只有4台电梯+2台消防梯),和工位的平均面积较其他楼层小。由于今年的实习生HC过多,我们较晚入职的实习生被分配到了会议室临时改造的工位进行办公(工位宽度基本和正式员工一致,但会议室不是特别透风),论人均面积,应该是和正式工位差不多大的,不过就没有工位之间的隔板了。根据这几周的参观经历,如果要为办公环境做个排序,那顺序应该是滨海>>腾大>松日=万利达
。
部门为实习生配置的台式机配置一般,从身边同学了解到的信息,大部分的开发实习生分配到的都是i7-7500,8G内存(可申请添加到16G)的台式机和24寸1080P或27寸2K的屏幕。电脑预装的是Windows10,可以自己选择重装为Ubuntu18.04。(听说还是由于实习生太多,2K和1080p的屏幕(应该是正式员工更换下来的,腾讯从今年开始为正式员工标配4K显示器)数量不足,后来的实习生分配到的显示器都变成了27寸4K,和正式员工一致了)。
在安装好电脑并入域之后,导师就向我讲解了一下本部门的工作。我所在部门全称为「CSIG的云技术运营服务部计算技术中心」,主要的工作负责对接腾讯云和自有IDC在操作系统和硬件层面的排障与研发,同时也会时常参与一些专项(如大规模的集群升级/迁移)的技术支持,用一个词来描述的话,SRE或者System Engineer可能比较合适(不过部门一般不管软件本身的逻辑,而重点负责软件运行于特定系统上发生问题的排障与研发)。部门正式员工的工作时间制度是10-10-5
。
工作
根据导师的说法和综合其他几位同在技术运维组,并且职位为「系统技术」下同学的说法,在实习阶段,实习生是基本不会被分配到需要进行「发布到生产环境」的任务的。因此的任务主要还是以「带薪学习」,具体来说,就是导师会给一些案例和学习方向,并会分配测试用的服务器给我们,我们需要做的就是分析导师给的生产环境和总结新学到的知识,并把这些东西总结成文档(有点类似于实验报告)即可,并每日发日报给导师。目前导师建议我学习的方向主要集中在Linux的IO与虚拟化这部分。导师也表示,相关的报告和总结会作为转正的参考~~(既然是「带薪学习」,也只能参考这些了)~~。
在同一个会议室内,还有其他来自区域支持(大客户服务),运维开发(开发)和生态支持(产品经理)部门的实习生,其中区域支持和运维开发的同学都表示,在第一周之后,他们也要参与一些生产环境的开发/客户服务的工作,尤其是区域支持的同学。如此看来,可能是因为技术运维的职位比较看重经验,并且容易出现运维事故,导师自然也不太敢让实习生直接操作生产环境了。不过换个角度说,由于技术运维经验越多越吃香,这可能是一个没那么具有「35岁危机」的岗位(部门里确实有不少同事都在35岁以上)。
松日每层有两个茶水间,里面有一台现磨咖啡机和若干的茶包可以自取。
权限
暑期实习生和正式员工一样都是蓝卡,不过在访问内网资源的时候,权限上略有区别。具体来说就是实习生不能访问公司的「内网知乎」和一个用于购买福利纪念品(比如T恤衫)的地方。另外,实习生的邮箱默认是不能接收外部(@tencent.com之外)的邮件和向外部邮箱发送邮件的。
食堂
在中午或者晚上,大家一般倾向于去万利达大厦和老腾讯大厦吃饭(具体的原因是松日的餐饮质量实在不敢恭维,身边的同学纷纷表示「比学校食堂还要难吃」),但万利达和腾大的食堂还是不错的。如果要把这几栋楼的餐饮质量做个排序,那具体的排名应该是腾讯大厦>万利达>>松日
。
腾讯的早餐10:00之前免费;如果当天加班到8PM之后(我所在的部门肯定是满足这个条件的),可以拿到一张夜宵券,这张券可以抵用大部分食堂的一份晚饭套餐(少数套餐需要两张夜宵券)或者楼下麦当劳肯德基的一份套餐。午餐每餐的价格则大致为20元。腾大片区的楼下有若干家7-11便利店和一家喜茶Go,如果不想中午吃食堂,也可以去7-11买饭团吃。
班车
在腾大片区,大部分的班车都会停在科技中一路上。在早上,到达的班车基本需要在这条路上等候5分钟才能到达下车的位置。不过相比于挤地铁,班车还是更舒服一些。由于我没有在公司旁边租房,还是从学校上下班,每天大概需要花一个半小时在路上。
作息
07:30起床->
08:00出校门->
08:10上班车->
08:50下班车->
09:35吃完早饭->
09:45到工位->
12:00午餐->
13:10午休->
14:10起床->
17:40晚餐->
19:00回工位->
20:50下楼等班车->
21:10上班车->
22:00回到学校
如果是在公司附近租房,每天应该能够8:30起床,下班之后也只需要9:30就能回到家中了。