2014年4月25日星期五

百度实习面经-JAVA研发方向

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
百度实习面经-JAVA研发方向  阅读原文»

用户名:可以_先生 文章数:6 评论数:2
访问量:655:130:90:1 注册日期:2013-06-23

百度实习面经-JAVA研发方向

收到百度上研实习的offer差不多有两个星期了,前段时间挺忙,这次算是抽点时间总结一下三次电面,顺便给大家当面经用吧~

从投简历到第一次约面试差不多有两个星期吧,三月中投的,等了半个月都没消息,以为没戏了,清明回到家准备爽一番,结果正在dota中,先阿里来了个电话,后面没半个小时百度又来,当时一点没心情,怕弄砸了便约了隔几天一面。(阿里说后面会再来电话,结果毛线消息没有,魂淡 - -!)

闲话不多说,一面如期而至,说实在话,第一次面试挺紧张的,所以在约好的时间提前到学校的楼下散步去了,希望环境能帮助自己调节一下~电话比预期的晚了半个小时,一上来简单的介绍后便进入正题,结果一上来就问我算法(心中我了个大擦啊,劳资算法最屎啊,这是要跪的节奏啊),第一个问了单链表如何检测有环,其实这题在之前看面经的时候好像还真瞄过。。可惜当时貌似没看答案,在面试官的提示下说出来了,第二个问的是两个有序数组的归并,这倒是真心简单,也没什么难点,我当时犯浑,说插入,其实意思倒是对的,就是说法有问题吧,好在面试官准备说了一点的时候,我后面接上了,解释了一下之前我的表达有误,第三个算法可能有点复杂吧,关于二叉树的,他说让我记下,我说在外面,不在实验室,不方便记,结果居然就过了。。不问我算法了!!!(各种窃喜的节奏)后面估计就是大家各种JAVA面试的常菜了,String,StringBuffer,StringBuilder的区别,应用场景,HashMap和HashTable的区别应该准备过面试的都能答出来的,说HashMap和HashTable的区别的时候我说到线程同步的问题,他又开始问对于线程同步的理解,如何让两个线程交替输出a,b,后面的话记得不是特别清楚了,应该问了一些项目方面的,感觉答的挺顺利的,还有让我写个sql,答错了 - -。一面差不多就这样了吧,当时结束感觉虽然算法和sql都答的不好,但总体关于基础方面都答的还行吧,主要的原则就是问我一个点,如果我知道里面原理的话,我就尽量把原理也说出来,比如内存的分配啊什么的,如果问的不知道的话,也尽量把自己的分析说出来,总之就是尽量的"秀"吧。其实面试官有时候不一定要你正确的答案,而看你的思路是不是正确。(一面40分钟)

二面等了将近一个星期,本来以为跪了的节奏了。倒是万神各种怒砍offer,周围的人也开始各种讨论面试,心中自然着急的节奏。二面当时约的要在电脑旁边,说电面过程中会发一些题目过来,需要编码,我靠,传说中的远程桌面么。。实际证明就是邮件发题目过来而已。不同一面,二面一上来就问项目,换了个角度而已,问我中间遇到的挑战啊,如何解决啊,系统怎么调优的,插一段,说来之前有投过一个阿里的内推,虽然没有正式一面,但是当时学长先给了个电话问了我的情况,当时请教了学长关于项目的准备,他就重点提到了这些问题的准备,这里感谢一下~这些问题准备了的话,答得其实还是挺顺利的。然后面试官问我有没有写过servlet,虽然那是我最开始学JAVA的时候写的,基本没写多少,但此时怎能示弱~写过!他让我写个用户登录的servlet发给他,可能怕我写的慢吧,他发来一个,让我检查有什么问题,说来也巧,之前看线程安全的问题的时候,关于struts2的线程安全的问题让我困惑了,就各种google线程安全问题,看到说servlet线程不安全,所以一眼看出来那题的point了。然后让我写jdbc的连接,同样他发了一个demo过来,让我找问题,sql注入的问题不用多说,记得看微博的时候陈皓转过一个关于汽车故意将车牌写成一个语句的,说能让监控产生漏洞的,说来虽然是玩笑,道理是这么说通的。面试官虽然用的是PreparedStatement,参数却还是用拼的方式连接起来的。然后的问题是各种try,catch,finally的处理都没有,这个其实当时我只记得大概各种连接,结果集的关闭什么的要做异常处理的,具体的没有很清楚,但是很庆幸,我可以百度!秒度之,翻到最下,拷拷改改发去搞定~哦,忘了,中间还让我写了个标准的单例模式,这其实也在陈皓的酷壳上看过不止一次,面试前还特地在workspace中写过一个,写了个相对来说,考虑到线程安全的版本发给他,结果谁知道他居然要求更高,还是找了一点问题,其实也是,还是有可能出问题的,交流一番,可能觉得我表述的不好吧,让我重新写了一个给他,双重锁的,建议大家准备单例模式的话,可以看看陈皓那篇博客(福利:http://blog.csdn.net/haoel/article/details/4028232 )。最后两个问题让我挂了电话半个小时后发给他,一个是智力题,不难,几分钟搞定,另外一个是两个数组归并(没错,又是他...)要求是要一个性能最好的方法,当时20分钟的时间,我哪有时间想啊...写了个最普通的方法发过去了,备注了句"时间紧迫,未做其他思考..",感觉好窘迫 - -! 二面给我的感觉就是面试官比较注重细节,很多大家平时容易忽略的问题被拿出来问了,说运气好可能就是这部分吧,觉得这段时间看的一些资料啊博客啊之类的没有白看。(二面一个小时)

三面很快,二面当天的晚上就约了隔天三面,挺开心的,这么快约三面说明希望大嘛?但也挺紧张,直接导致当天晚上各种睡不好。三面的问题比较零散,给我的感觉更注重解决问题的能力吧,直接问些知识的并不多,让我介绍项目的时候,很多的时候面试官会中断一下,然后设计一个场景,问如何去实现等等,比较综合。也会问一些关于技术学习,目标,长久规划的问题,这些大家有点想法的相信都不会是问题的。最后一个问题是道设计题,差不多是网上的博客的公共评论系统的设计,这里不赘述了,时间到的时候提了个想法上去,感觉还算不错吧。三面时间很长,一个半小时,不过当时也没有太深感觉,很多都是问题都是聊出来的,对于三面大家感觉不用可以准备什么,自己好好发挥,展现出来平时水平就Ok了。

下午收到了北京的电话,说愿意给offer,不过后来因为入职时间的问题,调到上海去了....

最后,我也只是只小菜鸟,相信大家的offer都在来的路上,祝大家好运~

本文出自 "" 博客,请务必保留此出处http://paradisewj.blog.51cto.com/7435653/1402217

五年IT职业生涯,五年IT认证之路  阅读原文»

用户名:marvelyu 文章数:140 评论数:46
访问量:67110:3131:1424:5 注册日期:2008-09-05

五年IT职业生涯,五年IT认证之路

细数下来,毕业工作以来将近五年,校园生活只剩下记忆了,这么近那么远。人生有那么多的不经意,回想起来,不经意高考被计算机类专业录取,其实这在之前是没想过要从事这样的工作,因为那时觉得计算机对自己一直是那么遥不可及的东西,但最后还是调配到一个称之为信息安全的专业,这样我就真正开始了计算机世界的学习生涯。

那年带着对大学生活的向往,一直没出过远门的我,独自踏上求学火车,虽然在大学中也经历过不知道将来干什么的迷茫,但是我知道,无论将来干什么都需要将现在做好,好好学习,如饥似渴的读书,学校的图书馆成了自己常去的地方,比如四六级必过的,努力的过了,大三的时候就确定了毕业后不在读研而直接就业,这时就开始思考自己将来干什么呢,那时发现了学校的思科网络学院开的CCNA课程,在校也比较优惠,于是就报了个培训班,课外认识了网络这个世界,在那时自己讲自己的目标确定将来就是从事网络通信方向,于是对于专业的此类课程,或业余方面的技术学习都比较倾向网络,也就在那时决定考自己人生的第一个IT认证-CCNA,当然那时学校很多学生都在考CCNP,还有人考CCIE,苦于没有money,自己也就考了CCNA,CCNP和CCIE只能望洋兴叹了,当然其实那时的思科认证其实也算是泛滥了,没有办法一旦一个考试形成产业,除了钱外没有别的门槛,在大陆基本会这样。

不过即便如此,毕业那年也开始涌入求职大军,其实简历上有个IT认证证书,感觉还是挺加分的,无论怎么样,反正简历筛选方面感觉通过率还是蛮高的,自己也取得了很多笔试面试机会,大概在11月初就收到北京的一家公司的offer了。那时自己也是比较向往来北京工作的,可以说还是比较满意的。当时被录用公司是一家比较大的系统集成公司,怎么说CCNA认证在众多求职生中应该算是一个加分项才获得的好机会吧。

关于先就业还是先择业的问题,现在回想起来,先就业后择业其实是非常错误的,一入行,以后基本就是经验和经历对个人影响很大了。其实非常感谢职业生涯的第一家公司和第一个部门领导,那时在一个集成部门,部门会有很多技术方向,在工作中部门根据专业情况,觉得我更适合从事软件方面的工作,并且其实我也很愿意学习哪块,顺理成章,我也就正式转变职业方向,从事数据库和系统方面的工作,对于我来说网络和CCNA认证其实只是给了自己一个进入IT世界的敲门砖,自己做的第一份数据库方面的是INFORMIX,当然这个数据库现在不是很有名气了,那时网上读到一个数据库界的叫牛新庄技术大拿的文章,不管怎么样在一个专业领域做行业顶尖一定不会错的。于是根据工作和自己的学习兴趣也倍加盎然,还经常去INFORMIX的技术社区和从业者一起交流技术和学习,所以进步是飞快,偶然获得IBM的免费公开培训的机会,就参加了,同样就获得了INFORMIX免费认证的机会,于是自己就一口气考下来IBM informix的两个认证,当然也是informix技术的高级认证,在此期间获得由于公司的oracle项目问题日常工作太多,所以自己也慢慢承担一些工作,研习ORACLE技术,其实相对来说ORACLE的学习比起informix来说更容易些,因为毕竟业内已经有很多技术大牛出版了很多技术书籍,通过他们的经验来学习技术更容易多了,当然oracle从业者也比较多,这时发现了oracle界eygle技术大拿blog和书籍。同时在oracle界也有很多技术牛人都有自己的个人blog网站,技术分享,从他们的经验收获了很多思路和经验,这个时候买了很多oracle的书籍,业余就研究学习,成长的也比较快,不到一年oralce和infomix都可以在工作担当大任了,在偶然,获得别人转让的OCP考试券,其实还是比较划算的,记得好像是900装让给我,三门考试。当然由于也快到期的原因,所以时间比较紧张,当然认证不外乎背题库,不管怎么样,不能让钱白花了,一切都很顺利,不到一周,三门考试都通过了,不久,自己也收到了oracle的第一个认证证书OCA,为啥没有OCP,大家懂得的,oralce的OCP需要培训,培训费用还挺贵的,真的舍不得那么多钱去获得一个证书,所谓能力到了那张纸又算什么呢,其实2年后,自己才参加OCP的培训,收到OCP的认证证书。

这之后拿到的第三个P字结尾的证书竟然是VMWARE,其实对于虚拟化自己并是不多么的感兴趣,只是当时公司有这样的需求,自己比较好学,也就同意参加培训并且考试,然后就参加了公司安排的为期一周的vmware培训,并且后来通过了VCP4认证,其实多学点技术知识真的没坏处,至少会让自己的思路更开阔些。

后来呢,做了ORACLE数据库技术顾问,公司偶尔会有DB2的项目,这样就得有人来做做相关的技术,所以自己自告奋勇,其实现在想想还真佩服自己,当然其实技术这种东西,一旦放下依赖心,自己独立专研,其实进步还是挺快的,然后对于DB2工作也开始得心应手了,当然还要做oracle的方面的工作。

如今成了专职的DB2 DBA,在这期间也开始准备DB2认证,先后通过了DB2 的初中高级DBA认证,也算是DB2的认证吃通了,仔细数了数,其实自己相继认证通过了大概12们IT认证,达到每年平均2个,其实很多时候并不是有意考认证,只是工作所需,对于职业,我始终觉得,做什么技术都要做的精益求精,更多将其当做工作的方式而不是看着工作的目的,认证的事情有机会了有余力了尽量可以考考,不管怎么样,IT人就是要学会不断的学习才不会落后。

本文出自 "Marvelyu's Notes" 博客,转载请与作者联系!

阅读更多内容

没有评论:

发表评论