淘宝面试记

引言

过去三个星期的面试旅程,人生的第一次转折终于尘埃落定。虽然过程相对平坦,但回首往事,仍颇有感慨。

有喜就有悲,期间我拒绝了四个公司的 Offer。其中有一家实在是不情愿放弃,自己也有些失落,但为了目标,最终选择前往杭州淘宝。人生就是这样,很多东西似乎是缘分注定的。

个人背景

先介绍一下我自己的情况:本人毕业于一所普通二本院校,非计算机专业,因个人兴趣而走向 Java 这条路。期间也经历过培训机构的学习,但个人感觉培训机构教的内容较浅,且更多是教会大家如何“忽悠”,导致了很多人心浮气躁。

学习终究要靠自己,如果不去多写代码、多思考,肯定在技术这条路上会出现瓶颈。当然,这不仅针对技术路,这个社会本来就是浮躁的,当然也有一批浮躁的人成功了。在这两年的学习路上,我给自己定了无数个小目标,然后一一去实现、去研究。再加上兴趣和激情,感觉这两年对互联网及 JavaOO(面向对象)已积累了不少知识。感觉时机已经成熟,所以开始了为期三周的漫长而又煎熬的面试旅程。

面试历程

初期积累

面试是从一个创业公司开始的。刚开始就是想积累面试经验,毕竟本人属于内敛型,心里虽有千言,有时也无从娓娓向面试官道来。所以就先锤炼一番,然后再向心中的理想公司——淘宝进军。

第一个创业公司的面试官是个博士,理论型的,他研究分布式存储方向,正好也是我感兴趣的东西。所以聊得很高兴,接着让我去见公司老板。当然,创业公司对我这种人来说,没有太大的吸引力,虽然他们很有前景,但我已定下目标,所以后面就拒了这个 Offer。

中期冲刺

后面接二连三面了几个公司,包括复试。基本上技术面试都没有太大难度,无非就是问得比较浅的 GC、类加载、集合、线程、Tomcat 优化、性能、互联网在不同时候的架构、设计模式、SSH 之类的,都没有太深入去问。

就这样过了二周,又先后拿到 3 个 Offer。然后就直接拒掉了一个台湾公司的,没办法,对台湾公司有阴影。其它 2 个 Offer 都给了不错的待遇。这时我也通过这么多面试积累了不少经验,知道如何去表达个人观点,如何去描述项目和相关技术,如何阐述思想层面的东西。

淘宝之旅

我于是以一颗憧憬的心向淘宝投了个人简历,接下来在不经意之间开始了淘宝紧张而紧凑的面试之旅。

话说先赞下淘宝的办事效率:

  • 从我投简历的那晚上开始,第二天就接到电话面试;
  • 然后又隔了一天,接到第二轮视频面试的电话,隔天进行视频面试;
  • 视频面试完,下个周一又接到杭州总部面试的通知;
  • 总部面试完,隔天又收到面试通过的 Email

前后经历三次 5 轮面试,时间刚好一周。不像有些公司,前后要经历一到二个月的等待。

淘宝面试内容

技术面

接下来说下淘宝面试的经历。淘宝面试官在技术面试时,总体上是按你简历上写的东西一直面下来,时间大概一个小时多一点点。所以在写简历时一定要认真仔细想清楚,多了给人不诚实的感觉,少了估计面试的机会都没有。

其中有几个点是必问的,主要涵盖以下领域:

  • JVM 与 GC:深层机制、类加载(包括 TomcatJBoss 的)。
  • 多线程与并发:线程相关的如偏向锁、互斥同步、Java 主线程和工作线程机制、concurrent 包下的锁和 synchronized 关键字的一些区别,以及 concurrent 包原代码的考查。
  • 数据结构:重点是 HashMap 的结构问题,然后大到分布式缓存 Hash 算法的一些应用。
  • 设计模式:及在你们项目中的运用,你对设计模式的理解,如一些模式之间的差别。
  • 互联网架构:从前到后的架构,大数据量下并发同步方法,异步思想的理解,NIO 的运用。
  • 理论思想CAP/BASE 思想在淘宝如订单这块的应用。
  • 扩展知识:如果你有 NoSQLHadoop 相关知识,他们可能会问 NoSQLHBaseHMaster 如何保证单点,Hadoop 的一些基本运用。如果你没在简历上写可能不会问的。

问题可能是不同的面试官问的东西不一样,不过对 Java 基础及思想问题都必不可少。还有对项目的理解一定要到位,要不很容易被问得不知所措。

主管与 HR 面

在经历了 3 轮技术面试后,接下来就是 HR 的部门老大面试。这一关无非就是不按简历上来自我介绍,优点缺点总结,职业规范,当前职位薪水,兴趣爱好等。

不过最主要的是部门老大这关,一般他会给你些紧张的氛围,然后故意问些你不可能不注意的领域,如:

  • 你们公司做的东西和竞争对手相比,你们的优点和缺点;
  • 你对你对手公司平台的了解等等。

过了这轮面试,基本上就确定了你面试是否成功。然后接下来就是“人品面试”了,进来一个很随和的人,谈项目、谈事业、谈人生、谈各种,反正是谈笑风生。这时基本上就确定你是否完全通过面试。

大概就这样,在和最后一位面试官的谈笑风生中,结束了所有面试。然后面试官心平气和地送我出去,并说最快明天有通知,然后大家握手告别。就这样,淘宝的面试之旅全部结束。

结语

果真第二天收到面试通过的 Email,然后接下来就是等 HR 电话谈待遇。待遇多少就不太重要了,毕竟淘宝是我的目标,也是个做 Java 很不错的地方。

借用别人的一句话:多点不会发财,少点不会饿死。关键是兴趣就是工作,工作就是兴趣,人生也就这样,做到自己的定位很重要。

说明

:本文记录的是作者特定时期(约 2013-2015 年左右)的面试经历。文中提及的技术栈(如 SSHJBoss)及面试流程可能随时间推移有所变化,仅供参考,请以当前实际招聘要求为准。