泪目!找份工作太不容易,挂了7、8家公司,终于收获百度offer

盼望着,盼望着……今年终于轮到我找工作了,还深深记得去年跟在师兄后面各种打酱油的经历,当时觉得找工作好难啊,怎么面一个败一个,以后还能找到工作不?

不过当时的失败也是理所当然的,那时候没有做任何准备(连进程间有几种通信方式这样老掉牙的题我都不知道),没有任何找工作的经验,甚至一个简单的自我介绍都吞吞吐吐的。

经过一年时间的磨练,特别是近几个月的强度知识吸收以及看了份剑指offer指南(文末有分享链接噢),感觉个人在能力和知识储备方面有了质的提高,这大大提高了我的自信心,也让我在这个秋季的求职生涯最终以较满意收场。

截止目前为止,找工作总算告一段落。初次找工作,只投了前面的几家公司(有百度、阿里、美团、搜狗、华为等),今年比较幸运,面的几家公司都成功拿到offer,也算是初战告捷。这些公司的招聘结束后我就没再参加后面的一些大型互联网公司了,比如奇虎360、网易、爱奇艺、金山等等,不像我的一些同学,手里offer多的都拿不动了,也有满意的了,可还是满怀干劲的参加后面的招聘,真心不知道他们的精力和耐力从何而来,可能是他们想成为传说中的offer帝和面霸吧。我个人无喜于那些称谓,既然有了较满意的offer就不想再耗费太多的精力去争根本不会考虑的offer,也可能是自己的惰性所为……

OK,废话到此为止,下面简单回顾下自己在百度面试过程中的一些题目,给还在找工作或将来要找工作的同学一个浅薄的参考。


百度面试题

一面(1 hour):

1. 面试官从简历里抽了一个较感兴趣的项目,让把项目简单介绍了下,针对项目问了几个技术问题
2. 介绍Java中垃圾回收机制,程序员平时需要关注这个吗?为什么?请举例说明。
3. 数据库隔离级别介绍、举例说明。
4. override和overload的区别。
5. 求二叉树的最大距离(即相距最远的两个叶子节点),写代码。
6. 两个栈实现一个队列,写代码。
7. 你觉得你的优势是什么?有什么技术薄弱点吗?
8. 目前手上有offer吗?

二面(40 minutes):

1. 详细介绍研究生期间的小论文项目。
2. 求二叉树的宽度,先简介思路再写代码。
3. Hashmap、Hashtable和cocurrentHashMap的区别,要讲出它们各自的实现原理才行,比如Hashmap的扩容机制、cocurrentHashMap的桶分割原理、多线程安全性。
4. 进程调度算法,有哪些算法比较难实现?
5. linux下如何修改进程优先级?(nice命令的使用)。
6. linux下性能监控命令uptime介绍,平均负载的具体含义是什么?建议看server load概念。
7. linux下如何调试程序?说到gdb,具体如何调试?如何查看core文件中的堆栈信息等(bt指令)。

三面(1 hour and twenty minutes):

1. 介绍我研究生期间的论文,讲的很详细,每个点具体采用的技术、实现方法等,花了较长时间。
2. 打印二叉树两个叶子节点间的路径,写代码(汗,百度这么喜欢问二叉树)。
3. 字符串中第一个只出现一次的字符,如何优化算法使得遍历次数更少?
4. socket编程相关,如果服务器这边调用write写了100个字节的数据,客户端想要获得这个数据,是直接用read系统调用,参数也是100吗?
5. 百度新闻缓存预算问题:一般为了追求时间性能,都需要缓存一些新闻数据,你怎么计算所需预算?然后申请需要的主机……
6. 多线程的适用场景是什么?为啥要用多线程?
7. 问是否会go语言,……
8. 为啥对技术感兴趣,一些相关问题讨论。
9. 聊北京、谈offer。

 总结

三面都是技术面,总体下来没有特别难的题目,从我的面试情况来看,百度这次非常看重面试者对二叉树的掌握情况,还有所做的项目详细介绍。后面我会继续分享自己在面试过程中的一些个人经验和技巧,我觉得吧其实大厂面试主要就是围绕着:多线程、spring、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql、Redis、JVM 这些,最后是我把这套 我学习了3个月的剑指offer指南 大厂的面试题 跟大家分享一下,如需PDF的原件下载------点击此处 传送门

 

本书附带提供了50道编程题的完整的源代码,其中包含了每道题的测试用例。很多面试官在应聘者写完程序之后,都会要求应聘者自己想-一些测试用例来测试自己的代码,一些没有实际项目开发经验的应聘者不知道如何做单元测试。相信读者朋友在读完这本书之后就会知道如何从基本功能测试、边界值测试、性能测试等方面去设计测试用例,从而提高编写高质量代码的能力。

第1章面试的流程

第1章介绍面试的流程。通常整个面试过程可以分为电话面试、共享桌面远程面试和现场面试3个阶段,每一轮面试又可以分为行为面试、技术面试和应聘者提问3个环节。本章详细讨论了面试中每- -环节需要注意的问题。其中第1.3.2 节深入讨论了技术面试中的5个要素,是全书的大纲,接下来的第2~6章逐-讨论每个要点。

1.1面试官谈面试

1.2面试的三种形式

1.2.1电话面试

1.2.2共享桌面远程面试

..........

 

第2章面试需要的基础知

第2章梳理应聘者接受技术面试时需要用到的基础知识。本章从编程语言、数据结构及算法三方面总结了程序员面试的知识点。

 


从学习路线→☛面试刷题→☛核心知识补漏,以上全套的Java学习资源皆可免费共享给有需求的你,还请仔细关注一下免费下载原件的方式:

1:一键三连+评论此文(码字不易,一键三连是对此文的一个认可,也可让更多朋友阅读到)
2:加小姐姐VX:k15197783918

 

 

 

全部评论

相关推荐

03-15 20:26
已编辑
电子科技大学 C++
T3题面:给一个3e5数组,每次询问长度为len的子数组乘积的和,如果子数组乘积>1e9,则视为0.赛后一分钟想出来了,比赛时打了个暴力+线段树注意到1e9大约是2^30, 因此len长度如果>30就直接输出0,30以内做一个记忆化就行,复杂度O(30*n)感觉是以前比赛做过的题,忘了怎么做了。。。---upd: 忘了数据范围了,如果有0,1的话那这样也不行
blueswiller:给出一个做法,刚刚才想到,应该没问题,时间复杂度为 O(max(30n, nlogn)): 1. 根据 0 切分数组。2. 现在问题转化为>=1 的情况,我们首先维护每一个数前一个 > 1 的数的位置,同时维护一个长度的差分数组,初始值全为 0。3. 我们从每一个数 i 开始向前跳,至多跳 30 次,维护这个过程中的乘积,于是得到 30 个区间加和。举例:假设从 j1 跳到 j2 ,相当于对查询长度 (i- j1 + 1) 至 (i - j2) 贡献 a_i * ... * a_j1。4. 对于所有区间加和,我们采用差分数组结合树状数组对其进行维护,由于长度至多为 n ,树状数组构建的复杂度为 O(nlogn),于是,构建阶段的复杂度为 O(max(30n, nlogn))。在线单次查询的复杂度为树状数组查询的复杂度 O(logn)。
投递淘天集团等公司10个岗位 > 笔试
点赞 评论 收藏
分享
mq2:我倒是觉得这种敞亮一点好。能接受就去不能就不去呗。 完了跟现在“正常”公司一样,hr说的天花乱坠,进去一看根本就是996核动力牛马,想走又没应届生身份了。岂不是更糟。
点赞 评论 收藏
分享
03-14 18:48
重庆大学 C++
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务