如果你是刚开始工作的“小鲜肉”,这是一篇能给你指方向的好文;如果你是工作了N年的“老油条”,这是一篇能给你能量的“精神食粮”。
  由于公司业务需求,近一段时间连续面试了几十位求职者。由于笔者在互联网行业工作,借助行业内的一些垂直招聘APP,也和200多位求职者进行了线上交流。
  俗话说:“读万卷书,不如行万里路;行万里路,不如阅人无数。”正所谓林子大了什么鸟都有,有从p2p公司出来高薪低能的,有准备了大量面经来蒙题的,还有被拒后忿忿不平发邮件来讨论的??甚至有答题不顺拿面试官泄愤的。
  通过面试者寥寥无几,而通过者基本都拿到了offer。近招聘工作告一段落,终于可以坐下来回顾这半年多来的面试,总结一些经验教训出来了。
  需要说明的是,笔者进行的是社招,校招的情况会有所不同,因此不在此系列文章中讨论。
  为什么要求“N年工作经验”?
  你有没有发现,各大招聘平台在发布职位时,工作年限都只有这几个档:1年以内、1-3年、3-5年、5-10年、10年以上……
  一个人无论在哪个领域,情况都可分为以下三种:
  达到“入门”的级别,多只需要一年;
  达到“熟练”的级别,多只需要三年;
  达到“精通”的级别,多只需要七年。
  每个人都需要不断地犯错来进步。
  当一个人犯过大量的错误后,具备了成为大牛的潜质,当然前提是他愿意并能够从自己的错误中反省并成长。
  遗憾的是,现今的课堂教育根本不给学生任何犯错误的机会,更不包容犯错误的学生。因此学生们无法在学校得到足够的成长,只能在进入社会工作之后来进行。
  开始工作的第一年乃至前三年,是犯错误的时间。之所以招聘时要求N年工作经验,是希望筛选出那些已经犯过足够多错误的人。
  因此建议各位准备踏入职场的同学们,在选择第一份工作时,更多地考虑公司是否有容错的机制和环境,这基本决定了你未来成长曲线的起始角度,薪资待遇应该放在后来考虑。当然了,在这方面大公司是上上之选。
  工作经验年限和工资成正比吗?
  我曾面试过一些5年甚至更长工作经验的求职者,结果往往不理想。很多人甚至不如刚工作一两年的年轻人。基础不扎实,思路不清晰,缺乏优化意识,没有阅读习惯……而且,基本都自恃甚高。
  有不少程序员觉得自己的职业生涯是下面这样子的:
  while (true) {
  while (n–) {
  做项目();
  团建活动();
  涨工资();
  拿年终奖();
  }
  跳槽() && 涨工资();
  }
  他们觉得,工资应该而且必须随着工作经验年限的增长而不断提升。这是典型的本末倒置,混淆了结果和目标。
  正确的认识应该是:工资增长是个人能力提升后必然的结果。我们应该将有限的时间和精力放在提升个人能力上,而不是单纯为了追求更高的工资去不断跳槽。
  工作时间久了可以带团队吗?
  还有不少人觉得自己工作的资历久了,可以开始走管理路线了,不用关心具体实现和技术细节了。于是,我问他们一些团队管理的问题,比较典型的是这样的:
  问:你如何帮助团队成员提升能力?
  答:从豆瓣上收集整理一些书单给他们。
  问:你如何保证项目如期完成?
  答:每天开会碰进度,如果有人拖后腿督促他,搞不定自己上,实在不行找PM延期。
  ……
  工作经验的多少,与领导力的强弱的相关度并不高。工作经验少自然难以服众,但一个具备多年经验,在基层工作表现优异的工程师,也未必能成为的管理者。
  领导力是一门艺术,是需要专门学习的乃至训练的。个人的性格在这方面会有一定的加减分,具备开朗乐观、包容的性格的管理者会更容易开展工作。极个别的人仅凭自己的魅力能做好管理工作,但那毕竟是个例。
  新生大学社群成员有一本必读书:《领导梯队》,这本书相当全面地讲解了如何完成从基层工作者到管理者的角色转变,推荐给各位准备带团队和想带好团队的朋友们。
  当然,每个人后都会晋升并停留在自己并不适合的那个位置上。
  程序员小A的故事
  小A大学毕业后,由于基本条件不够没能进BAT等大公司,只好进了一家业内的小公司。刚入职实习的那段时间里小A发奋图强,买了好几本豆瓣上推荐的大部头经典,每天晚上都刻苦学习,加上前辈们点拨,很快上了手。
  不出一年,小A已经对开发组长安排的工作驾轻熟,信手拈来。那些大部头的书只翻了一小半,扔下再也不看了。有时在看前辈们的代码时,他还能挑出BUG来:“哼哼,你们也不过如此嘛!”
  业务进入了维护期,工作量不大,且缺乏挑战性,但在每天晚上的内部DOTA局里,小A却和同事们杀得难分难解。于是经过无数个晚上的刻苦练习,小A成了公司DOTA强者,每天带着小弟们征战天梯,不亦乐乎。
  时间天飞逝,在越来越熟悉的业务和环境里,小A过得十分舒适和安逸。由于只需要两三个小时甚至更少的时间能完成的工作,他便将剩余的上班时间用来刷朋友圈、刷微博、追逐新闻热点、和同事闲聊……
  在小A憧憬着3年买车10年买房时,噩耗突然传来。公司因经营不善,资金链断裂而倒闭了。当他出来找工作时才发现,这几年除了对原来公司的业务熟悉度外,自己的能力并没有多少长进。虽然做了好多项目,但都不过是CRUD而已,并没有什么技术含量。业务数据量不大,连分表分库都不用。既然用不着,为啥要学啊?
  小A买了几本面经解题书,背了一堆算法题、设计模式,想进大公司,却发现他们要求的标准不是一个level的:解耦、可用性、服务化……这些都是神马,能吃吗?
  屡次面试受挫后,小A只好进了一家和原来公司要求标准差不多的小公司。但是这时他对公司业务的熟悉度已经归零,一切又重新开始……
  有句话虽然很俗,却很实在:1年工作经验用了10年,算不算10年工作经验?