
面试是每个普通程序员面前的一座大山,给了大家无尽的苦恼和困惑。程序员面试很难吗?难!正常的,要经过两轮技术面试以及一轮经理面试,也有不少顶尖公司甚至需要三到五轮的技术面试。
几轮面试下来,能熬到最后,这绝对是真正意义上的“过五关斩六将”了。很多优秀的程序员业务能力很过硬,但都因为在面试的时候发挥失常,从而屡屡与大厂失之交臂。所以,每一个面试成功者,都算是勇士。要给自己点个赞!
那么面试时,我们究竟需要注意什么呢?今天,北大青鸟就教给大家几个面试成功的技巧。
许多问题都是故意措辞模糊或者模棱两可,这个时候你可以请面试官把问题说清楚,从而确保你真正回答面试官的问题。你的提问同时还有一个好处,就是它能给你自己一些时间,让你的脑子转起来。
2、用一到两个例子来确定问题的限制条件和要求(在现场面试时在白板上完成这个过程,在电话面试时在笔记本上完成)。
尝试用中等规模的例子,以便覆盖到一些特殊情况。如果你能想到可能相关的表格,就把它画出来。事实上,把你想到的任何东西都写下来是会有帮助的,因为它能为你提供一个视觉锚点,从而让你在走不通时或者思考过程中随时返回某一个点。
3、把话说清楚,这可能是最重要的一步。
要试着让面试尽可能有更多的互动,面试官不知道你在想什么,而让他们参与到你的思考过程里,会让她给你一些有用的提示,防止你偏向错误的方向。你的目标就是要先和面试官确证你的答案,然后再去写代码,而且你考虑答案越清晰、越高效,你得到的即时反馈也就越好。
4、通过应用以下技巧来找到答案
回想一下你遇到的类似问题,再想想它们是如何被解决的,尝试各种不同的算法(分治算法、贪心算法、递归、排序,等等),把问题分解成更小的、可处理的小问题(这样你就能得到相应部分的分数),最后再通览一遍你列出的数据结构,因为有时候,只要想到了正确的数据结构,就能给出正确的答案。
5、当你向面试官问清楚了问题、并向她解释了你的答案之后,就可以开始写代码了。
在共享文档里写代码的时候,你可以复制粘贴、写评论,而且能回过头来完成骨架算法和功能。但在白板上写代码就不一样了,它需要你的头脑很清醒,而且需要你具备管理白板空间的技能。
《剑指Offer:名企面试官精讲典型编程题(第2版)》(何海涛)电子书网盘下载免费在线阅读
ugus
书名:剑指Offer:名企面试官精讲典型编程题(第2版)
作者:何海涛
豆瓣评分:88
出版社:电子工业出版社
出版年份:2017-5
页数:348
内容简介:
《剑指Offer:名企面试官精讲典型编程题(第2版)》剖析了80个典型的编程面试题,系统整理基础知识、代码质量、解题思路、优化效率和综合能力这5个面试要点。《剑指Offer:名企面试官精讲典型编程题(第2版)》共分7章,主要包括面试的流程,讨论面试每一环节需要注意的问题;面试需要的基础知识,从编程语言、数据结构及算法三方面总结程序员面试知识点;高质量的代码,讨论影响代码质量的3个要素(规范性、完整性和鲁棒性),强调高质量代码除完成基本功能外,还能考虑特殊情况并对非法输入进行合理处理;解决面试题的思路,总结编程面试中解决难题的有效思考模式,如在面试中遇到复杂难题,应聘者可利用画图、举例和分解这3种方法将其化繁为简,先形成清晰思路,再动手编程;优化时间和空间效率,读者将学会优化时间效率及用空间换时间的常用算法,从而在面试中找到最优解;面试中的各项能力,总结应聘者如何充分表现学习和沟通能力,并通过具体面试题讨论如何培养知识迁移、抽象建模和发散思维能力;两个面试案例,总结哪些面试举动是不良行为,而哪些表现又是面试官所期待的行为。
作者简介:
何海涛,现美国微软总部资深软件工程师,先后在Autodesk、思科、微软中国等跨国企业任职。著有《剑指Offer——名企面试官精讲典型编程题》、《Coding Interviews: Questions, Analysis and Solutions》(本书英文版)等书。多年来从事软件开发工作,对软件设计、开发、调试等均有较深的功底,对 C/C++、C#以及NET等语言及平台都较为熟悉,对图形图像、CAD、设计模式、项目管理等领域均有专业经验。
面试的话就先介绍自己的具体情况,比如名字,有什么特长,学习和社会经历,取得过什么成就,对本工作有什么心得体会,对未来有什么计划,对本公司有什么看法等等。最重要的是自我介绍时要自信,说话清晰,有条理,别紧张。先写个草稿,自己多练习一下。工作主要还是看能力,介绍尽量精炼,不啰嗦。
一、写好简历是拿高薪offer的敲门砖
一个优秀程序员的思维是缜密细致的,而是否具备这个特质,首先由你的简历去传递。
一份好的简历,一定是简洁明了,逻辑结构清晰,排版顺畅的,最好用PDF格式,兼容性强且不易乱序。
而简历里最重要的内容是你的工作经历和项目经历,这几点需要包括:
效力过哪些公司
做过的行业领域与目前面试行业是否匹配
擅长的技术语言,应用了哪些技术栈
经历的项目复杂度,及在项目中承担什么样的角色(人的变化/技术的变化/环境的变化/不同工作经历相同角色的不同点)
时间节点
关于简历,最好能够针对你要投的公司而重新编辑,突出于这家公司相关性比较大的那部分工作经验,而不是每次都用一份通用简历,这样会大大提高你的面试机会。
二、不打无准备的仗,为你的心仪岗位做好面试准备
1、进行自我定位
参加面试前,先给自己的角色和职位做一个定位。看看我们要应聘的岗位职责还有技能是什么,我在这个领域沉淀了什么。详对自己进行分析总结后,便更容易在面试中自信地表现自己。
2、制定成长目标
基于你之前的工作经历和行业趋势,给自己制定一个至少3年的规划,希望达到的业务能力和岗位是什么?其中包括业务、技术上的提升计划,还有综合能力的提升规划,比如协调能力、沟通能力、执行能力等。
这些问题,除了能给我们选择公司和岗位带来更清晰的指引,还能在面试遇到此类问题时,能够轻松应答。
3、梳理自己的项目经验及处理细节
面试中,最重要的部分肯定是对你过往经验和业务能力的了解,因此,我们需要梳理此前做过的比较有代表性的项目,其中需要包括以下这些信息:项目背景、项目怎么设计的、技术选型和对比、实现的细节、项目最终的效果。
4、了解应聘公司和其核心业务
全面深入地了解对方的公司,包括公司所处领域、核心产品或核心业务有哪些,业务的发展历史,产品目前的形态等等。
面试官向你提的问题很多是基于公司目前实际情况的,毫无准备会的话,你的回答智能涉及到比较浅的层次,而在有所了解的前提下,面试沟通的质量会更高,回答问题才更有针对性。
三、面试过程:从经验细节入手,展现实力
一般公司都有3-4轮面试。
一面是:笔试或HR面,一般都是考察技术基本功,而HR会比较关注你的离职原因、求职动机,这些要提前想清楚,避免回答的时候逻辑混乱。
二面是:技术面试或者项目面试,通过不同项目考核你的技术广度和实践能力。
三面是:综合面,会考察技术以外的其他能力,比如软性技能:逻辑思维、执行、沟通、协调等。
为什么才华横溢的程序员免面试的时候掉链子这大概是因为他们把大多数时间都用来搞技术开发,而忽略了学习面试技巧的重要性。其实有效的面试技巧可以增加面试成功几率,就算你并不是特别了解这个行业。希赛软考学院为大家整理了10大面试技巧,希望对恐惧面试的程序员们有所帮助!
1简历体现专业性
如果你想增加自己的入选机会,那最好还是多花点时间,花点钱制作一份专业的简历。相较于你将来可能得到的巨大收获,这真的只是一个小小的投资。
2研究面试官
对面试官足够了解。根据一切可能的社交网络挖掘面试官的兴趣爱好,性格习惯,要让别人对你感兴趣,最简单的方法就是你先表达出对对方的兴趣。
当今社会的信息是如此的发达,我们完全可以在Facebook、Twitter、微博、博客上找到任何人的资料。即使你只是大致浏览一番,也会让你受益良
多。
3获得内部推荐
主动出击,关注有共同想法和意见的开发人员,通过博客或者留言发表建议,并表现出对对方公司的兴趣,获得内部推荐的机会。在网上创建自己的“名片”——让别人有了解你的机会。
4学会解决算法问题
这是每一个开发人员都应该具备的重要技能,而且真要掌握起来也并非那么难。在很多面试中,都会有这样的问题,要求你在白板或者电脑上解决编程问题,但是许
多程序员,即使是那些非常优秀的程序员,都会一下子大脑一片空白,完全理不出思路来。如果你能花时间学会如何解决这种类型的面试问题,那么下次再碰到这种
场景,就不会这么紧张了。我们会紧张其实和怯场无关,主要是因为我们不熟悉这些问题,也没有自信能解决这种问题。在这方面建立起自信之后,你就再也不会紧
张了。
5活力洋溢地回答问题
只用一个字或者一句话,照本宣科平平无奇地回答问题,或许在技术上是正确的,但是你忘了应该借此机会好好展示自己的激情——这才是一个开发人员能带给团队
的最大正能量。举个例子说,如果我问你什么是多态性,我不是要你按照课本中的定义重复给我听,我希望你能就这个主题阐述一下,然后我们可以更深入地聊一
聊。
6小心“陷阱”问题
你为什么换工作?
说说你最大的优点和缺点。
最近一次你是如何解决和同事之间发生的技术分歧的?
在回答问题之前,你最好明白面试官问这些问题的目的,掌握如何回答这类问题的技巧。就先说说第一个问题吧“你为什么换工作?”在大多数情况下,面试官想知道的是你是否是一个爱说三道四、惯于诽谤抨击雇主的人。所以千万不要上当。
7永远不要撒谎
知之为知之,不知为不知,如果你确实不知道,千万不要自作聪明来编造问题的答案。相反,你应该诚实地说,你不知道或者你并不是100%肯定,但是你愿意尝
试一下,然后再讲讲自己的想法。讲完之后也可以问面试官正确答案是什么,以显示你对此非常感兴趣。事实上,大多数面试官问的问题都是他们知道的问题,不然
如果你滥竽充数,给你通过的话就会显得他们像个傻瓜。所以千万不要抱着侥幸心理,一旦发现你在撒谎,面试官马上就会质疑你的人品。
8不要太诚实
很多程序员会
过多地透露自己的信息,不要以为诚实和完全透明就是最好的政策,殊不知过犹不及。第7条所说的不可撒谎诚然不错,但是我们也没必要将自己所有生活的细节和
所有缺点都告诉给面试官。有个性是好的,但是如果暴露了性格缺陷就坏事了。试想一下,要是你说自己喜欢赌博或者沉迷于魔兽世界,我敢打赌,面试官肯定会重
新审视你。所以在说自己信息的时候一定要慎重,因为这不但会暴露你的缺陷,还会显得你缺乏应有的判断力。
9掌握计算机科学的基础知识
是的,很多程序员在
面试的时候,甚至理直气壮地说,他们不知道链表和堆栈,因为他们没有受到正规教育或者早就还给老师了。我也承认我们在工作的时候是用不到那些深层次的计算
机科学概念的,但是作为一个专业的软件开发人员,你至少应该知道一些基本知识。举个例子说吧,你请电工来重新给你家的房子布线,但是这电工一点也不知道任
何电气工程的基本知识,你还请他干不?同理,我们也是如此。
10关于经验
这是最后一点,但并非最不重要的,很多开发人员,特别是刚进入这一行的新手,往往缺乏相关的经验,也不知道如何增加所谓的工作经验。这有点像是鸡和蛋哪个
先出现的问题。那么又该如何增加经验呢?关键是要用创造性的方式。有很多方法都可以获得工作经验,但是却不必真正去一家公司上班。
希赛软考学院给大家建议:参加开源项目;启动开源项目;做一个移动app,放到AppStore里;写一个小型的Web应用程序;参与代码交流和用户组。这些方式都可以作为工作经验写到简历中去,只要自己有想法,不愁没经验。
以上就是关于北大青鸟分享程序员面试有什么注意事项全部的内容,包括:北大青鸟分享程序员面试有什么注意事项、《剑指Offer名企面试官精讲典型编程题》epub下载在线阅读全文,求百度网盘云资源、程序员面试应该怎么怎样自我介绍等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)