导航:首页 > 程序命令 > 百度程序员面试

百度程序员面试

发布时间:2022-06-22 11:24:31

Ⅰ 如何面试一名程序员

如何面试程序员
一、提问之前的准备
首先,最重要的是,你自己一开始就应该想清楚:
1. 需要新员工完成什么样的任务?
2. 怎样的人能完成这样的任务?
3. 哪些途径和方法可以发现这样的人?
只有明确这些根本性的问题,才能正确高效地完成面试。
二、提问的原则
假定你对上一节的三个问题,已经有了清晰的想法,那么接下来就可以设计如何提问了。
有一些提问的原则,是你应该遵循的:
每一个面试问题都有明确的目的。你不仅自己了解,还能向其他面试官解释清楚。
多提一些开放性(Open-ended)的问题,而不是那种用Yes/No就可以回答的问题。这样做使你有机会与面试者展开讨论,并且提出后续的问题,尽可能多地了解对方。
不要问宗教、家庭、健康、个人隐私等方面的问题。
不要问太复杂的问题。因为面试者没有太多思考时间,所以无法周全地回答,你也就无从判断他的能力了。
三、考察专业能力
为了确认面试者是胜任的,你可以问一些与职位相关的专业方面的问题。(不过通常来说,一次面试不足以看出一个人的专业能力。)
比如,你的招聘职位是系统管理员,你可以问"如何快速地在50台机器上部署Linux?"(提示:正确答案不是刻录50张安装光盘。)
另外,你还应该向面试者了解他的过去,因为过去是未来的最好预测依据。不过,提问的重点不要仅仅是他过去的成果,更要关注在当时的环境中,他是如何决策和实施的。
四、考察综合素质
因为人是会发展的,所以某种程度上,面试者的综合素质要比他的专业能力更重要。
所以,具体的技术问题(如何调用API、什么是设计模式、编程语言的语法等等)可以少问一些,更应该关注面试者的事业心、对工作的热情、进取心、自律能力、毅力等方面。
下面是一些典型问题:
Why did you get into development?
你为什么开发软件?
How many technical books did you read in the past year?
去年你读了几本技术书籍?
What was your favorite technical book in the past year? What did you learn from it?
去年你最喜欢的技术书籍是哪本?你从中学到了什么?
What websites do you read regularly, related to development?
平时你经常访问哪些编程类网站?
Do you maintain any open-source projects?
你有自己的开源项目吗?
Do you code in your spare-time?
业余时间你编程吗?
Do you love programming, or do you do it for the money?
对于你来说,编程是一种爱好,还是一种谋生手段?
Have you accomplished anything important in your career yet? Do you want to?
你的职业生涯之中有什么重要的成就?它是你主导的吗?
What would make you feel that you have done something important?
什么事情会让你很有成就感?
五、考察理性思维
某些情况下,你可能需要了解面试者的分析判断能力,看他能否全面地思考问题、客观地评价自己。
那么,你可以依次提出这样三个问题:
What's your favorite programming language? Why?
你最喜欢的编程语言是哪种?为什么?
If you could add one feature to your favorite language, what would it be? Why?
如果允许你为这种语言加一种功能,你会加什么功能?为什么?
If you could remove one feature from it, what would it be? Why?
如果允许你取消一种功能,会是什么功能?为什么?
这里的重点是,让面试者从正反两方面评价一件自己熟悉的东西,看看他的思维是否片面。答案无所谓对错,只要面试者有一个明确的立场,能够从正反两方面说出令人信服的理由,就可以了。比如,某个软件的口碑不好,但是面试者说他很喜欢,而且说得出一大堆理由,清楚地解释了这种软件的优点和缺点在哪里,这样就很好。
你还可以把这些问题,套用在其他东西上面,比如操作系统、文字编辑器等等。

Ⅱ 程序员需要掌握哪些面试技巧

一、写好简历是拿高薪offer的敲门砖
一个优秀程序员的思维是缜密细致的,而是否具备这个特质,首先由你的简历去传递。
一份好的简历,一定是简洁明了,逻辑结构清晰,排版顺畅的,最好用PDF格式,兼容性强且不易乱序。
而简历里最重要的内容是你的工作经历和项目经历,这几点需要包括:
效力过哪些公司
做过的行业领域与目前面试行业是否匹配
擅长的技术语言,应用了哪些技术栈
经历的项目复杂度,及在项目中承担什么样的角色(人的变化/技术的变化/环境的变化/不同工作经历相同角色的不同点)
时间节点
关于简历,最好能够针对你要投的公司而重新编辑,突出于这家公司相关性比较大的那部分工作经验,而不是每次都用一份通用简历,这样会大大提高你的面试机会。
二、不打无准备的仗,为你的心仪岗位做好面试准备
1、进行自我定位
参加面试前,先给自己的角色和职位做一个定位。看看我们要应聘的岗位职责还有技能是什么,我在这个领域沉淀了什么。详对自己进行分析总结后,便更容易在面试中自信地表现自己。
2、制定成长目标
基于你之前的工作经历和行业趋势,给自己制定一个至少3年的规划,希望达到的业务能力和岗位是什么?其中包括业务、技术上的提升计划,还有综合能力的提升规划,比如协调能力、沟通能力、执行能力等。
这些问题,除了能给我们选择公司和岗位带来更清晰的指引,还能在面试遇到此类问题时,能够轻松应答。
3、梳理自己的项目经验及处理细节
面试中,最重要的部分肯定是对你过往经验和业务能力的了解,因此,我们需要梳理此前做过的比较有代表性的项目,其中需要包括以下这些信息:项目背景、项目怎么设计的、技术选型和对比、实现的细节、项目最终的效果。
4、了解应聘公司和其核心业务
全面深入地了解对方的公司,包括公司所处领域、核心产品或核心业务有哪些,业务的发展历史,产品目前的形态等等。
面试官向你提的问题很多是基于公司目前实际情况的,毫无准备会的话,你的回答智能涉及到比较浅的层次,而在有所了解的前提下,面试沟通的质量会更高,回答问题才更有针对性。
三、面试过程:从经验细节入手,展现实力
一般公司都有3-4轮面试。
一面是:笔试或HR面,一般都是考察技术基本功,而HR会比较关注你的离职原因、求职动机,这些要提前想清楚,避免回答的时候逻辑混乱。
二面是:技术面试或者项目面试,通过不同项目考核你的技术广度和实践能力。
三面是:综合面,会考察技术以外的其他能力,比如软性技能:逻辑思维、执行、沟通、协调等。

Ⅲ 程序员的面试问题(希望全面点)

很多用这个. 1. 问:怎样用 Win95 的记事本 (Notepad) 来编辑 java源程序? 答:记得存档时扩展名要加上".java",文件类型改成:“所有的文件(*.*)”。 2. 问:到底 Java 是如何传递参数的?是by value或by reference? 答:All parameters (values of primitive types, and values that are references to objects) are passed by value [JLS sect 8.4.1]。根据以上 Java规格文件的说法, 所有参数应该都是传值的(by value)。但实际上, 实际经验却告诉我们所有 Java 的对象都是传址的(by reference)。因此我们可以这样解释: 基本类型(如int, float, char等)是by value,而所谓“对象”(Object)则是by value of reference to object。 3. 问:String这个类型的class为何定义成final? 答: 主要是为了“效率” 和 “安全性” 的缘故。若 String允许被继承, 由于它的高度被使用率, 可能会降低程序的性能,所以String被定义成final。 4. 问:finalizers和C++ 的 destructors有何差异? 答:Java内部具有“内存使用回收” 的机制, 虽然它也提供了类似 (C++ 的) destructors的 finalize(),每个对象都可以使用这个方法 method,但必须冒着破坏原先回收机制的危险。所以建议尽量避免使用finalize(),不妨考虑多使用 null 及 dispose() 来释出资源会好一些。 5. 问:继承了一个class叫做 Frotz,编译器却给我“No constuctor Frotz() in the class”这样的错误提示,为什么呢? 答:记住每当您定义了一个 class的constructor,除非您一开始就去call 这个constructor,否则 Java 会自动引入superclass原先不含参数的 constructor, 如果superclass的 constructor都是有参数的,那么问题中的错误提示便出现了。 解决的方法很简单, 找一找 API文件,加上正确的参数就得了。 6. 问:怎样让char类型的东西转换成int类型? 答: char c = 'A'; int i = c; //反过来只要作强制类型转换就行了 c = (char) I; 7. 问:我的applet原先好好的, 一放到web server就会有问题,为什么? 答:一般来说,从以下方向试试: 确定class文件的格式没错——已经编译过,也没有损坏的情形; 确定所有用到的class文件放到web server上,少一个都不行; 确定所有的文件名和class名称一致,特别检查大小写有无差错; 如果程序中用到package,web server上的目录就要当心了。譬如您在class中宣告了一个叫COM.foo.util的package,那么web server的applet codebase目录底下就非得有 COM/foo/util这个子目录不可。(注意目录名称也有大小写之分); web server上的文件档案应该事先设定好。(尤其是search,read和execute权限) 8. 问:怎样在 Applet中用某个图形涂满整个背景? 答:在背景建立 Panel 或 Canvas, 然后用图形填满它。 9. 问:怎样在 Applet 中建立自己的菜单(MenuBar/Menu)? 答:首先在Applet的init() 方法中建立Frame instance, 然后将Menus, Menubar都加上去即可。 (setMenuBar() 是 Frame下的方法)或者,找到Applet上层的Frame后依法炮制。 Container parent = getParent(); while (! (parent instanceof Frame) ) parent = parent.getParent(); Frame theFrame = (Frame) parent; 注意:第二个方法在Mac或某些browsers上并不可行。 如果您使用的是JDK 1.1,也可以考虑使用popup menu,这样就不必理会Frame的问题了。 10. 怎样比较两个类型为String的字符串? 答:在两个对象之间使用 "==",会将“两个对象是否有同一reference”的结果传回。也就是说, 这等同于“两个对象是否拥有同一地址 (address)”,或者“两个对象物件是否为同一对象”。如果您的意思是判断两个字符串的内容是否相同,那么应该使用以下的方法才对: if (s1.equals(s2) ) or if (s1.equalsIgnoreCase(s2) ) or if (s1.startsWith(s2) ) or if (s1.endsWith(s2) ) or if (s1.regionMatches(s1_offset, s2, s2_offset, length) ) or if (s1.compareTo(s2) <0) 11. 怎样将浮点数(float)相加 ? Float 好像没有办法? 答:我猜想您的程式大概写成这样: Float One; Float Two; Float Hard = One + Two; 请注意 float 和 Float 是不同的,前者是 Java 基本类型之一, 而后者却是class。您应该将源代码改为: float One; float Two; float Hard = One + Two; 或 Float One = new Float(1.0); Float Two = new Float(2.0); Float Hard = new Float(One.floatValue() + Two.floatValue());

Ⅳ 程序员面试的时候考官一般问什么问题(比较流行的)

给你提供点参考信息,希望能帮助到你: 1、使用相同的工具和时间限制模拟面试训练 在现实生活中,如果你想要横渡英吉利海峡,自然不能总是在室内游泳池练习。你必须投身于大海在波涛之中训练,在准备面试的时候也是如此。 在面试开始之前你最好向招聘单位询问面试形式和面试问题。如果招聘单位让你在某个房间考试且仅提供没有汇编程序的编辑器,那么就应该在家中按照这种情景进行练习。如果招聘公司单位让你在白板上回答问题并会安排考官在旁监督,那么你就要找一位软件工程师来扮演考官配合你练习。即使找来的考官经验不如你也没有关系,他们依然能帮助你消除在他人面前出错所带来的紧张感,这样可以让你适应有人在旁边盯着看的面试氛围。 如果你恰巧认识我并希望由我来帮你联系,那我的条件就是必须请我吃饭:如果你已经工作了就吃日本寿司大餐;如果你还是学生,那么吃比萨饼也可以。 2、在面试过程中不要对细小错误耿耿于怀 我曾不止一次的在面试过程中碰到这种情况:当应聘者知道编程问题后,他马上就想到了最佳的方案、确定了边界条件,然后开始编写程序。但在编写过程中,应聘者犯了诸如首先检查是不是操作顺序错误或忘记设定某变量等无关大局的小错误,当我指出其错误之后,应聘者立刻变得十分紧张,这种焦虑情绪影响了他在后面环节的正常发挥。 其实这种恐惧心理完全不必要。一名优秀的程序员在编程过程中出现错误也是很正常的,就像是小提琴手在演奏高难度的巴赫交响乐时也会偶尔失误。音乐会的听众可能会觉察到这些错误,但是听众绝对不会因为这种细小失误就把出色的小提琴手看作是门外汉。 即便应聘者彻底搞砸了某个编程问题,面试考官也可能会提出不同的问题并会容忍应聘者在某个问题上的失误。再退一步说,就算某次面试彻底失败,你也有机会在其它面试上补救。 我的一位同事(一个项目的技术负责人)最近面试了一个人,在开始面试时他觉得面试者的交流方式存在问题,因此开始表现的相当不友好。但经过了整个面试过程后,面试者证明了自身的能力,而我的那位同事也成了那位面试者最坚定的支持者。在过去的一年中,我从未见过这位同事如此强烈的支持哪位面试者。 所以,因此就算面试进展不顺,也务必坚持到底不要放弃。

Ⅳ 程序员应该怎样去面试

嗨,亲爱的程序员朋友们,如果你是工作好几年的人了,那么你一定经历过面试吧,今天我以个人的视角总结了一下怎么才能有一次成功的面试,希望对你有所帮助。如果你已经开始看了,那么你一定看完哦,只有有耐心的人儿才能成大事,如果看了一半,这篇文章对你来说是没有任何收获的,反而却浪费了你宝贵的时间。

关于简历的制作

每个技术面试官每天要阅览几百甚至上千份简历,阅读一封简历的时间可能不超过10秒,你的简历就是茫茫大海中的一滴水,如果能让面试官从一大摞简历中选出你的简历,那么就需要从简历制作上下功夫了。

各位可以仔细琢磨一下上面的几种场景,有时没有经历过这种场景,可能没法对上面的描述做到感同身受,看了之后就会一带而过了,建议收藏此文,以后遇到类似情况了,可以把这篇文章找出来看看,相信会对你有所帮助,最后祝各位程序员朋友们都能找到自己心仪的工作!

大家好,我是“上世是朵花”。如果你有什么好的看法或者观点可以在评论区展现你的才华,互动交流,如果想进一步了解我,那就关注我吧。

Ⅵ 程序员应该如何面试,程序员面试问什么技术

3年以下的面试
面试主要看两个方面:
一、通过沟通交流,一些简单的问题,了解的你的逻辑思维,个人性格。

二、一些常用的技术是否了解,根据你的回答问几个典型的问题。

这个阶段面试技术并不是最重点的,主要还是逻辑思维是否敏捷,为人处事是否好相处,技术是可以培养的,基本带一周就可以很好的干活了。

3年以上就麻烦了
一、技术会问的很详细,没有扎实的功底,挡不住啊。

二、超过3年的招聘,一般都是有一定目的性的,比如需要搭建项目构架,或者需要专攻数据库的,或者需要比较全能的技术大牛来解决问题,所以应该针对面试方的一些需求去准备。

以上都是瞎掰,看看就行了。

Ⅶ 关于程序员面试关于试用期的问题

这一周对公司来说是考察期,也是你对公司的考察期。建议待两天,看看培训内容,公司制度的执行,企业文化与自己是否匹配。如果觉得不行再走不迟。毕竟很多公司面试流程不一样,没有笔试,也可能是公司更注重项目操作能力。

Ⅷ 程序员面试要准备些什么东西

面试前的准备
简历
1. 千万别给自己挖坑
在面试的时候,面试官都会针对简历上技术能力、工作经历、项目经验等提出一些细节上的问题,所以你写下的都些东西必须是真实,并且是非常了解。
2. 要有辨识度
通常一个职位可能收到的简历比较多,很多时候,你的简历甚至根本没被HR看到。那么,怎样让自己的简历脱颖而出呢?首先,简历要有“辨识度”,要让面试官看完这个简历,就很想见见这个人。
3. 面试前最好进行一个“模拟面试”
其实自己在制作简历的时候,就像写程序一样自己是很难发现bug的,因此在面试前最好找朋友、老师或同学帮你来一场“模拟面试”,这样也许会发现一些意想不到的问题。
4. 针对不同的公司要对简历进行微调
比如对方是个做电商。而你恰好做过类似项目,就可以将该部分的项目介绍着重突出以下,比如排列到最前面。
充分准备相关的专业知识
可以在网上收集一些相关的面试题,有时面试官也可能会照着网上的内容来问,所以网上一些比较热门的题目也可以关注一些,然后对照自己的经验组织成自己的语言。
项目经验
项目的研发背景、整体业务流程、开发周期、负责的模块、技术实现细节、技术亮点等。自己做过的每个项目都要整理清楚。
了解热门前沿技术
比如你面试的是 iOS 开发岗位,除了 OC 你还能聊聊最新版本的 Swift;比如现在微信小程序开发又火起来了,你也在关注和学习,甚至能解决面试官的一些问题。了解这些热门的前沿技术绝对会成为你面试时的加分点。

Ⅸ 程序员面试该注意什么

闲聊
面试过程中,背景往往是初始话题,通过闲聊,他们可以得知你对编码的认知、你的个人能力或领导力、沟通问题、技术经验等。因此,你可以通过举出能表明自己以上能力的例子,凸显出自己热爱技术、自信阳光的特性,这是基本能给面试官留下不错的印象。
沟通
涉及到编码问题的时候,沟通是关键。一个在工作时需要帮助却能和人正确沟通的求职者比那些能轻松解决问题的求职者甚至更好。充分了解面试官出的问题到底是什么类型,如果你开始编写代码,并且面试官并不想多说废话,切忌高谈阔论。让人感觉你有团队精神,敢于表达自己的想法,如果是是在解决不了的问题那就不要装作自己很懂,凡是要先思考再做决定。
摆脱困境
有时候你会陷入僵局,放松,尽量巧妙地寻求解决办法,不要浪费时间在脑袋里思考,动手操作会更加形象;为解决问题寻找简单版本,写一个简洁低效的解决方案,然后对其进行优化;与面试官多交流方法技巧,展示出自己的思路;要察言观色,偶尔观察面试官的神态或许对解决或有帮助;考虑空间和运行时的界限。
写下你的思路想法
凭空地想很容易自我矛盾,把你的想法写下来,然后再去考虑细节;调用帮助函数,继续前进,不要担心语法问题,为自己预备足够的空间,用以在代码行之间添加代码或笔记;最后写一个重头检查的标志,不要担心你写的for循环是否应该有“<”或“<=”。在代码的最后画个勾选提醒自己最后再检查一遍。先按自己的思路走;使用描述性的变量名,标准化很有意义。
完成之后的整理
浏览解决方案,当程序运行时记录下变量保存的值——如果你只是记在脑子里,不会让你赢得任何加分,这有助于你发现bug和消除面试官的困惑;寻找差一错误,测试边缘情况,措施包括空集合,单项目集合或负数;不要做惹人厌烦的事。
实践
最后,运行实践问题是没有捷径的。好记性不如烂笔头,对自己诚实,用笔写可能一开始会让你觉得别扭,但是如果你现在就能克服这个难题,那么当面试的时候,你就不会觉得笨拙和不顺手了。准备充分,放轻松,技术在手,终能收获一席之地。

阅读全文

与百度程序员面试相关的资料

热点内容
英语单片机论文题库 浏览:923
战地是什么服务器 浏览:266
51单片机可以测电压吗 浏览:420
浪潮服务器的nic是什么意思 浏览:956
二进制表示编译器报错0b 浏览:739
xp系统恢复后怎么解除文件加密 浏览:495
c语言编程pdf 浏览:230
瞄准pdf 浏览:344
云服务器一键搭建云免流服务器 浏览:226
新建文件夹高清韩语 浏览:884
华为畅连支持安卓什么版本 浏览:737
php建造者模式 浏览:474
命令与征服重制鼠标调整 浏览:796
linuxftp访问目录 浏览:503
服务器端控件后台如何获取至 浏览:271
java反射获取常量 浏览:650
gre填空pdf 浏览:371
网站包含的文件夹类型 浏览:779
oppo手机如何缩放文件夹 浏览:790
编译和汇编是一样的吗 浏览:269