程序员面试所需的软技能

程序员面试所需的软技能

蜗牛老湿蜗牛老湿

写在前面:本文建立在代码基础过硬,想一起研究一下面试中锦上添花的一些技能,注意不是雪中送炭,基础不好的,还是看看之前的文章,好好学学Python再来看吧

最初想写这篇文章,是因为平时上课的时候也会见缝插针的讲一些面试题,但是大家给我关于面试的反馈,通常不是某个笔试题不会做,而是一些开放性的问题不知道怎么回答。特别是一些面试到了三面的时候,基本都不会问太多技术问题,这样普遍不善言辞的程序员们很是惆怅,于是我决定分享一下自己当程序员这几年关于面试的一些软技能是的,你没看错,本文全程无代码。

本文将围绕几个问题来逐个展开

  • 面试准备

  • 自我营销

  • 关于终面:一些扯蛋问题的心得

  • 如何谈薪酬

文章略长,快上车,慢慢看!


面试准备

作为IT从业人员,跳槽是职业生涯中很重要的一个步骤,这方面我就不讲太细了,毕竟有很多讲职业生涯选择的文章。我只提醒一点,自己的职业生涯,还是要自己好好规划,想好为什么跳槽就可以了。

有了换工作的想法之后,第一件要做的事就是做简历。大型超市为了卖掉更多的洗头膏,都会精心设计一个促销区域,但是我们找一个年薪几十万的工作,却不愿意花心思好好整一下简历。我说的意思不是请专业人员把简历做的酷炫,而是要让简历突出重点,写一份让别的程序员能看懂的简历就OK了。

  • 简历控制在一张A4纸以内,最好不要超过两张

原因很简单,因为HR和面试官平时都挺忙的,没有那么多时间看简历,最多扫一眼第一页就不错了,所以很多面试官会要求你自我介绍,其实就是他们没看简历~~

  • 技能只写最重要的

会Word,Excel 啥的就不要写啦,只是用过 Linux 也不要写啦,大学当过什么学生干部啥的也不要写。如果面的职位是Python,以前搞过 asp.net 也不要写啦

写点和职位相关,直接能让面试官高潮的技能,比如面运维开发时,就写自己实现过CMDB,上线,工单系统,Django,Flask用的很熟练什么。面前端时,就写自己看过Jquery,angular,vuejs源码啥的,直接命中面试官内心深处的渴望:卧槽,这就是我要的人!

  • 展示自己的潜力

其实我觉得,让面试官觉得你有潜力的方法最好的方法,就是搞一个博客和Github,记录自己平时的学习和代码。面试官就会觉得你善于总结,对编程有强烈的兴趣,即使你现在技术有些缺陷,也是可以慢慢培养的。这个就属于自我营销,后面会谈及。

  • 自我营销

想象一个面试场景,你做完自我介绍后,面试官突然饶有兴致的对你说:原来你就是蜗牛啊,我之前看过你的博客,你xx文章里面总结的xx真是不错啊,你应该就可以预计到这场面试的结果,很大概率不需要太多技术问题,就可以直接谈薪资了,而且这是一个真实的故事。

  1. 打造自己的品牌博客

程序员也需要打造自己的品牌,营销自己。最简单的,就是建立自己的个人博客,大概步骤有这么几个吧,以PC大大的知乎专栏举例



  • 明确要表达的品牌信息

  • PC大大的专栏,都集中在网络编程方面

  • 挑选细分市场受众

  • 就是写给运维开发看

  • 创建品牌的口号和标示

  • 现在运维圈,提起面向工资编程,都会想到这个专栏,并且这个口号实在是太懂程序员了,俗话说得好, talk is cheap, show me the money

  • 内容为王

  • 花心思总结一下自己的心得,这个专栏里关于网络编程和操作系统的文章,含金量还是大大的

  • 善用社交网络

  • 直接在知乎里面回答问题,捕获众多粉丝
    当然还有很多其他博客平台,比如博客园,51CTO,Github都可以成为你自己积攒个人品牌的好平台

我觉得现在PC大大换工作,简历里直接贴个专栏地址,比说什么都有效吧

b、注册一个 github账号

把自己的日常代码都放上去,即使关注度不够,HR和面试官也会看到你一个个的提交记录,会觉得你是一个很勤奋的人

c、演讲和大会分享

演讲是进行自我营销的最有效方法之一,虽然扩散速度不及其他媒介,但是真的面对受众,面对面的侃侃而谈,才是最能打动他们的方式,也是你锻炼面试能力的一个最好途径

  • 大会演讲

如果有机会去各种技术大会作分享,千万把握好机会,这是创建自己品牌非常好的机会,说不定下面就会有你以后面试官听你分享

  • 分享和培训

如果和我一样,没有机会去大会讲,可以在公司内部主动推动一些小分享和培训会,锻炼自己的演讲能力


d、个人品牌终极方案—著书


写书对个人品牌效应无需多说,我们对很多技术大神,比如刘天斯大神,印象就是《Python自动化运维:技术与实践》的作者。肖力大神,就是《深度实践KVM》的作者。这两位大神如果出去面试,指不定面试官还会求一本签名书。当然写书需要太多知识和时间的沉淀。我希望以后也可以出本书,但是现在还是老老实实写博客才靠谱。

关于终面:一些扯蛋问题的心得

其实到了终面,基本都是部门负责人了,你已经过五关斩六将的过了好几轮技术面,所以老大基本就不会问你职位相关的技术问题啦。老大所关注的,基本就是你这个人怎么样,有没有培养的价值,所以大致会问你这几个问题(比如你面的是Python的职位)

  • 你为什么要换工作

老大问你这个问题,就是想评估一下如果你入职之后,能待多久,公司团队能不能把你融进来。

我觉得这个问题,程序员们就不要太纠结于技巧了,直接老老实实从下面俩原因选一个或都讲,坦诚相待就OK了:

  • 钱不够,薪资没达到期望值

    • 这个大家不要避讳,HR和面试官会觉得这个原因是OK的

  • 觉得现在的工作在浪费时间,没有成就感,想找一个更牛的团队,实现自己的价值

    • 表达自己技术和职业上的追求,而不是混日子养老

注意一定不要说是因为和领导闹得不愉快,或者领导傻逼这种话,面试官要是听到这种话,内心独白就是:老子要是把你招进来,以后你背后是不是也会骂我,那赶紧滚犊子吧。然后面带微笑的说,今天的面试就先到这了,balabala……

回答完这个问题之后,最好在表达一下自己心中的技术团队的氛围,常用词汇有,开放,对事不对人,敢于尝试新技术,等等

  • 你平时业余时间都做什么

其实这个问题我最有发言权,因为我有很多面试都是基本只聊这个就聊到了offer

一个人的业余时间用来做什么,就决定了他的未来 ---- 马云

老大问这个问题,其实目的就是想看你到底是个什么样的人,千万不要回答没啥爱好,回家就看看电视剧睡觉啥的,显得太不上进。基本来说,我常用的回答,业余时间喜欢运动一下,看看书,打打游戏什么的,下面老大一定会会问,喜欢什么运动啊,看什么书啊,都玩什么游戏啊之类的,我分别讲一下这几个,也仅供大家参考:

喜欢什么运动

其实回答一下自己确实喜欢的运动就好,最好是团体或者比较流行的,比如回答踢足球,乒乓球,羽毛球都是很不错的。互联网公司还是非常喜欢组织这些球类比赛,你会这些的话,大家可以一起玩耍,面试官当然愿意啦,或者你看面试官穿着冲锋衣,说自己喜欢户外露营徒步,都是不错的,显示自己很阳光,并不是特别闷骚

然后后面就可以展开聊啦,你自己平时注意积累一下相关的行话,比如喜欢踢球,就找一个死忠的球队,并且用专属名称,比如法国球迷,就说自己喜欢高卢雄鸡,英国就是三狮军团,荷兰就是橙衣军团,德国就是德意志战车,并且选两个喜欢的球员,描述语就用球风硬朗、意志顽强,脚法精准,身体对抗多,全场跑动多等等装逼词汇就差不多了

喜欢看什么书

上个问题其实无关痛痒,这个问题才是老大最感兴趣的,平时看书的时候注意自己对这个问题答案的丰富和积累,比如回答就看点技术书啊,除了技术书就看点畅销书和名著,偶尔也看点玄幻小说啥的就还不错,这里面试官一定会和你聊具体你看过的书,所以对自己列举出来的书,一定要有自己的观点。

技术书就可以列举基本耳熟能详的,老大也不会多问,玄幻小说也没啥可聊的,总不能和你聊凡人修仙传吧,所以重点就是畅销书和名著了,注意,一定要有自己的观点,奇葩无所谓,要让面试官觉得你是有独立思考能力的人就可以了

  • 畅销书

这个就说几本看过有点名气的就行,比如浪潮之巅,人类简史,从0到1都不错,重点聊点读完的理解,这个就没啥太多技巧了,平时看几本备用吧,比如关于浪潮之巅,你可以借用硅谷之谜里面关于机械论和三论的总结,非常精彩

  • 关于名著

这个其实才是扯蛋的重点区域,下面几个段子是我经常用的,分享给大家,立等可取,任君享用:

1.三国演义

对赤壁那段印象很深刻,特别是赤壁之战之后,关羽把曹操给放走了,当时还倍感可惜,关二爷就应该手起刀落balabala,后面再读,就觉得诸葛亮真是牛逼啊,其实是故意放走曹操的,因为当时刘备的势力还不能和孙权对抗,如果宰了曹操,势必把大好天下拱手让与孙权,是自寻死路,所以曹操肯定不能死

如果直接装作没有抓到曹操,东吴和天下人都会觉得刘备这边能力太差了,没什么能力,对成就霸业不利,所以必须要抓住曹操

但是如果抓住直接放走曹操,和孙权的结盟关系势必破裂,对当时还弱小的刘备势力也是毁灭性打击,所以算准了曹操对关羽有恩,关二爷重义气,定会放走曹操,所以才把关二爷放在了最可能宰掉曹操的华容道,事后东吴来问罪,就装作要斩关羽,最后刘备出来求情,借坡下驴,赦免了关羽,所以诸葛亮既向天下人展示了刘备的能力,也没有让东吴一家独大,又没有让联盟关系破裂,还顺便成就了关二爷的忠义之名,真是太屌了。

2.西游记

关于真假美猴王,孙悟空真是太鸡贼了,唐僧老是念紧箍咒,自己造了一个一模一样的猴子,装作是六耳猕猴尥蹶子不干了,一直到如来亲口答应安心取经,以后一定可以成佛才作罢,就像现在的老板承诺给股权,好好干,公司上市了一定给你XXX一样。

类似的例子还有很多很多,随便讲一个就行。

3.梁山伯与祝英台

其实梁山伯是个同性恋,因为梁山伯一直都不知道祝英台是女的,所以他喜欢的是男版的祝英台,最后发现祝英台是女的,内心无法接受,悲愤不已,自杀殉情(这个观点是一次听江南春演讲听到的,不是我侮辱传统文化,勿喷)。

类似的例子还有很多,平时注意积累几个就行,比如武侠什么的都是可以聊的,你可以用慕容复打不过乔峰,来类比编程内力和编程招式的区别,总结编程需要多修炼内力等等,大家自己发挥吧,毕竟面试官也挺累的,给他们一点新奇的观点,也能让他们对你提起兴趣。

关于游戏

游戏就说自己会的就行啦,比如dota,LOL,三国杀,狼人杀神马的都可以哇,重点是能聊上就可以啦。

除了xx,你会其他编程语言吗

这个就是看眼界的问题了,建议大家都能掌握一点其他的来应对这个问题,比如我基本都是面前端的职位,到了终面,就可以说自己也会Python和运维开发,然后就说一下自己对于运维开发,Python的理解,其实也不会聊特别具体的技术问题,老大主要看你眼界够不够宽。

你还有什么问题吗

最好不要回答没啥问题了,一定要问几个,显得自己对这个工作是特别渴望的,比如下面几个:

  • 咱们部门具体采用的技术方案是什么

  • 我如果能来,是一个什么角色

  • 公司未来两到三年对技术部门的规划是什么

  • 我今天面试的结果大概是怎样的,有哪些需要继续提升的

如何谈薪酬

很多程序员,包括很久之前的我,都根本不会谈薪酬,或者谈一次就放弃,别人给多少就是多少。薪酬谈判其实还是蛮重要的,不仅仅是多的那些钱,更重要的因为薪酬谈判中你如何评价自己和谈判能力,会影响公司对你的看法。

一旦成为公司的一员,其实你很难改变别人的第一印象,涨薪也是按照百分比,仔细的谈一下薪酬,可以让未来的雇主觉得你是一个很有价值的员工,就像我当年进百度,傻不呵呵的说了一句对薪资没啥要求,结果应该就是最低的工资,囧。

其实薪酬谈判是受你自己的声望和能力影响的,想一下你如果你的Github主页有2000个星星,谈判的时候的主动权会非常大,所以薪酬谈判很大一部分因素是日常的积累,就像前面说的自我营销。

获得面试机会的类型

你获取工作方式的不同,也决定的你薪酬谈判时候的地位,通常来说是 公司主动找到你>内推>猎头>自己海投,所以大家尽量找关系内推。如果有一天你的博客下面收到以下面试邀请,那你的谈判主动权会大大提高,所以还是注意日常积累吧

不要先出价

谈判一个重要法则,就是先出价的会比较处于劣势,因为你没法加价了,却给了对方砍价的空间,但是要一个过于高的价格,又会让雇主直接放弃,我的策略是,先找到自己的定位,然后再谈判

找准自己的定位

比如你特别想去A公司,你现在公司是10K,

  • 先找几个BCDE公司练练手,薪酬谈判的时候直接要高价,比如20K

  • 如果对方想也没想就拒绝了,说明自己现在还不够格,下次面试要15试试

  • 如果对方犹豫或者答应了,下次面试你就可以要25K 以此类推

目的就是找准市场给自己的定价,心里有一个谱。

具体谈判

面试官和HR一定会问你,你的薪资要求.这个时候最好的回答就是拒绝回答,面试申请单要求写期望薪资,可以写根据薪酬体系面议,面试官问你,也给出相同的答复,如果再问,可以用几个问题缓解一下,比如

  • 给出预期之前,我愿意更了解一下贵公司和我的工作内容

  • 关于这个职位,你们一定有一个具体的预算,我可以告诉你们这个预算是不是符合我心理预期

  • 我现在没法给出一个具体的数字,如果一定要的话,大概是XX到XX(就必须说出一个区间了)

  • 我手里已经有月薪15K的offer了,诸如此类,提高自己谈判的地位

最后的建议

面试是个技术活,一定要弄清楚自己值多少钱,并且平时注意自己的积累,不仅仅是技术,各种软技能的修炼也是非常重要的。

以上都是我的一点心得,这些内容在上课的时候也会给学员们讲到,现在写出来分享给大家,能对你有帮助那是最好的了。祝大家都能拿到梦寐以求的offer。

最后发个小广告,Reboot运维开发技术交流QQ群238757010

「写文章很费饭」
1 人赞赏
13238
文章被以下专栏收录
38 条评论
推荐阅读