腾讯校招 web 后端开发面试杂记(一)

引子

2018/04/16 晴
我参加了腾讯校招面试, 期望方向是后端开发
面试地点在湖北省武汉市某酒店内, 粗略估计了一下我那一场的面试大概有 100~200 来人参加

其中 60% 左右的都是女生, 可见华中地区对于研发岗位的竞争还是相对平缓很多

整体感受

因为腾讯在武汉并没有研发中心, 行政部门又没牌面, 所以专门设置了一家酒店来进行面试

面试

流程

首先是到场扫码签到, 然后排队等候叫号, 叫到号会告诉你面试房间号, 自行前往面试
然后就是面试环节, 过程大概用时 20 分钟, 值得一提的是本次面试出现了自我介绍环节
最后就是套话环节, 我趁机了解了一下目前腾讯内部对 php 的看法
公司对外 web 项目大部分用 golang
java 主要用在大数据处理方面, web 方面还没有 c艹 用的多
php 则主要用在对内 web 项目, 比如内部管理; 或者访问量不大的站点,比如 join.qq.com
技术面完后直接闪人

技术细节

  • 爬虫如何解析返回结果
    答,正则表达式
    追问其他方法,答传统的html/xml解析
    追问xpath方法,答由于html标准不统一容易出现解析失败,而正则表达式比较灵活
  • 知道几种设计模式
    答,由于只接触了动态类型语言,特别是Python,由于邪教原因甚至认为所谓单例模式是反模式
    比如最近很火的DI,也就是控制反转,在php里面有著名的laravel,我没有读过源码实现,仅仅只是看文档写功能这样
  • 看我简历提到了go语言所以问go语言水平怎样
    答,golang水平只是模仿,比如说我用Python写了个东西我就用golang写着试试看这样

中间穿插了一道智力题, 当时没做出来很尴尬:
https://www.geeksforgeeks.org/puzzle-9-find-the-fastest-3-horses/

Q: 25匹马5条跑道需要赛跑几次可以赛出前三名

A: 首先5次赛跑,分五组进行,赛出各组第一名
则前三名只可能在从右上角往左下角数三层
也就是A1,A2,B1,A3,B2,C1
则从6匹马中赛出前三名,至少需要2次
则最终结果为5+2=7次
另外存在特殊最好情况
当第一次赛马的时候的前三名正好是25匹马里面的前三名时(A1 A2 A3)
此时只需把第三名A3单独拿出来和剩余的20匹马分别比赛,分5组,每组4+1匹马
则最终结果为1+5=6次
A5 A4 A3 A2 A1
B5 B4 B3 B2 B1
C5 C4 C3 C2 C1
D5 D4 D3 D2 D1
E5 E4 E3 E2 E1

后记

这辈子第一次面这种体量的公司, 从面试官反应根本看不出任何端倪
他是喜欢你还是讨厌你, 对你满意还是不满意, 藏得很深
就在本文写成之时收到了腾讯发来的复试邀请, 时间是今天 (18/04/17) 下午
不知道会遇到怎么样的妖魔鬼怪, 只能暗示自己稳住就行