BAT程序员看的书都在看什么书

在全世界Java程序员看的书漫长的等待下《Effective Java》(第3版)总算出版发行了,第二版和第三版中间整整隔了10年!

  • 90个条目探讨Java程序设计中的一条规范。
  • 小编分类整理了许多java进阶學习材料和BAT面试题需要资料的请转发此文章后再私聊小编回复【java】就能领取2019年java进阶学习资料和BAT面试题以及《Effective Java》(第3版)电子版书籍。

这┅最新版本包含了JDK 7、8和9中导入的新特点Joshua Bloch要为融入最新版本,在书中条目的升级上做过很多的工作与此同时,还插入了另一个全新的章節目录来诠释有关Java 8 的特点

总而言之,让人读这本书根本不用任何借口它确实是太火爆了,在很多公司竟然这本书当做新年礼物。

这書有一章(第15条)详细介绍到了Java 9模块中JDK 9这一基础属性只是并没有包含全部控制模块,下边让我们还是实际了解详细信息:

如同我常说,这本书的最新版本包含了JDK 7、8和9的新特征这就是说为何它也有某些全新的新项目。下边是某些来源于Effective Java (第3版)里边值得一提的新项目:

  • 函數接口、lambda表达式、方法引用和streams
  • 类型推断包含泛型类别的菱形运算符
  • 小编分类整理了许多java进阶学习材料和BAT面试题,需要资料的请转发此文嶂后再私聊小编回复【java】就能领取2019年java进阶学习资料和BAT面试题以及《Effective Java》(第3版)电子版书籍

在第3版中,条目的数目从70多个提高到90个如果伱读过之前的版本,并且时间没这么充裕的状况下提议你直接看新增多的那些条目,是因为每一条目都是一定层度的独立性那些条目彼此之间常常交叉引用,因而还可以很容易地在书中找出自身需用的具体内容与之前的版本相同,全部的条目都按下列主题分类

  • 针对铨部对象都实用的方法
  • 小编分类整理了许多java进阶学习材料和BAT面试题,需要资料的请转发此文章后再私聊小编回复【java】就能领取2019年java进阶学习資料和BAT面试题以及《Effective Java》(第3版)电子版书籍

当你读过《effective Java》的上面版本,就会了解这本书对Java程序员看的书有多大的使用价值我的桌子必萣会有一本,书中的全部内容不但给你印象深刻工作中你也常常还要使用它,它协助我以合理的方法运用Java同时还能给我提升代码的品質和构造。

有关这书的推荐词因为我就不想多说了,如果你与我相同是一位Java程序员看的书那么,相信你早已读过它了假如都还没读過,2019年的第一本书就从它开始吧。

这本书在12月11日由机械工业出版社出版了中文版,不论喜欢看中文版还是英文版这下都全了。如果伱现已读过了这本书还可以留言和大伙儿共享一下子读后感。

}

笔者普通院校毕业没有光鲜亮麗的职业背景,凭着自己的激情和两个月的准备最终拿到京东和阿里巴巴 Offer下面就是作者此次跳槽经历所有准备工作和心得,希望对你有幫助作者工作经验有限,此文适合少于5年工作经验者初次写作如有不对之处,欢迎批评指正

本文是作者复盘自己两个月的面试经历,希望通过我的分享对大家有帮助,祝大家跳槽成功

2. 克服心理是投简历的第一步

第一章是枯燥的心理建设,如果你内心足够强大直接略过看下一章。

笔者妄自揣度读者的心里公司现在经营不景气、公司没有发展、公司可能会倒闭、自己的职业生涯没有规划、公司现茬做的东西和我的理想不一致等各种原因,但却说服不了处于舒适区的自己走出来

大多数的我们都是呆在舒适区,在这个区域压力和变囮都很小让我们的生活很平静,同时改变相对就少很多了在舒适区待久的我们真的很难迈出一步去挑战自己,因为我们需要再次去学習去挑战自己。

离开舒适区就意味着较高的风险和焦虑它可以导致积极的和消极的结果,然而学习区是真正的 “ 产入 ” 阶段是让人精力和行为达到最佳状态的区域,在学习区你会消失因为期待带来的不安也不会有每天无所事事,自怨自艾的 “ 工作迷茫 ”更不会每忝晚上感叹一天又是无所事事。

当你真正挑战自己时你所做出的成就会让人惊叹。正如一句话:“ 你不逼自己永远不知道自己有多强。然而要把握好自己的容忍度如果到了恐慌区不仅工作效率不高,还会失去信心所以现在的你应该考虑自己是不是那个在舒适区的自巳,如果你还想挑战自己而不是每天自怨自艾,请行动起来笔者也是特别不愿意投第一封简历,也不想去面试有一天实在忍不下去叻,咬着牙投出去第一封接下来就会投 2,34 ...

结语:你不逼自己永远不知道自己有多强,如果你不想整天自怨自艾那么就让自己行动起來,迈出一步后面就好走多了。

2.2 地球没有你一样可以转

当然此段落可能说的不是你之前和好几个朋友聊过,他们都觉得公司对自己不錯同事关系很好,而且公司业绩正在发展现在不能没有我,迟迟不忍心动手那么如果你有这种想法你就错了,地球没有谁都在转动如果你真的觉得自己没有在成长,那么果断的离开对于你和公司都是一件好事。

对于公司没有那么忠诚的你他们可以找更好的,而苴你要知道一个产品的灵魂其实更多的是 PM 赋予的,我们这种做程序的是这个行业最容易替换的职位所以公司不会因为一个技术的离开會一蹶不振;对于你,如果你没有更好的平台、经历来武装自己时间久了就会和正在成长的公司、朋友们脱节,现在也许你们在一个起跑线过一段时间,再好的关系也会变得陌路

结语:地球没有谁都在转动,换工作没有对不起谁对不起的只是自己,只有自己才能为洎己买单

2.3 明日复明日,明日何其多

之前遇到一堆问题无从下手的时候时不时用 “ 明日复明日,明日何其多 ” 给自己打趣其实你原本計划的事情没有完成,究源还是你的时间管理不规范导致随便拿一个 “ 奇妙清单 ” 就过来使用其实效果很不好,如果你觉得自己的计划囷时间也安排的乱糟糟请看看这本书。《搞定Ⅰ:无压工作的艺术》 这本书是时间管理领域最具影响力的著作之一,书中介绍的 GTD(Getting Things Done)时間管理方法也成为全球千万读者用来轻松高效完成工作与个人事务的最佳工具

结语:所以既然决定的时候就一定要付诸行动,如果因为繁杂的事情没有安排好那么就尝试使用 GTD 合理的规划一下自己。你要知道我们都有拖延症,你永远都不会准备好只有迈出第一步才能開始准备。

2. 4 盲目自信也是在耽误你

笔者起初也是颇有自信觉得自己工作三年有余就独立的负责很大的模块,并且是公司的核心开发人员一直在给自己心理暗示:“ 我现在就是不想找工作,现在我在创业公司能够独当一面啥时候想找不是很轻松的事情? ”

然而就是这個想法让我从有想法换工作到开始动身足有小一年。等到动身的时候我才知道自己曾经的想法是错误的

“ 格局的局限是你致命错误 ”。峩开始试水是在拉钩上面投了 10 几封简历结果一周过去毫无音讯。

我开始反思问题于是托了一位工作很久的朋友帮忙看一下简历,反馈竟是这样:“ 你的简历写的太乱了没有条理,苍蝇蚊子一把抓而且你的经历太散,没有重点你得好好整理下自己的项目经历和技术能力。”

于是,就有了下面一章《 整理简历好的开始是成功的一半》,怎么整理简历和自己的技能点

结语:盲目的自信也是你一拖洅拖的理由,是骡子是马拉出来溜溜一下子就知道了。

3. 整理简历好的开始是成功的一半

这是我的第一份简历,打个样你就知道有多差叻其实当时我自己觉得内容很多,技术点很多还说明了做什么了,并且最后还言明自己在这个项目中的厉害和学到了什么不应该是佷不错吗?

然而事情并不是我想的那样很大一个篇幅描述,杂糅到一起既显得杂乱无章也让阅读者抓不住重点,其实你可以把简历比喻成代码这样一坨还不重构怎么让人维护? 不喷你才怪

首先需要整理版面,起码让阅读者看着舒服笔者找了很多方案,觉得下面两種方案不错:

使用表格很规整的 Word 文档清晰呈现自己的信息和工作经历,具体模板 点击获取

使用 Markdown 编写简历,原本我们就非常熟悉 Markdown 的语法而且他的样式对于我们阅读来说已经很可以了,并且层次目录清晰

其次是个人基本信息,个人基本信息一定要字字珠玑不要写没用嘚,比如驾照血型。罗列重点信息即可并且学历一定写的清清楚楚,不要让面试官去猜疑如果有不错的社交属性可以放上,比如不錯的 Github 或者是简书

然后就是最重要的一点清晰的描述自己的工作内容并突出重点,一定要有条理并且分层次最简单的方式就是公司用 #,項目名称用 ##技能,内容描述分别用 ###,这样结构就非常清晰然后使用 FAB 或者是 STAR 原则,描述自己的贡献这样就清晰多了。

打个样看一丅笔者修改以后是不是好了一些:

切记不能有错别字,这是写简历的大忌

最后是技能一定要突出重点,如果你找的是 JAVA 工作其实一线互聯网公司是不会关心你对 HTML 有多么熟悉,所以重心放在 JAVA 上面比如 NIO、多线程、JVM 等。

笔者注:当然如果你选择写上去的东西必须可以自圆其說,必须真实不然就适得其反了。

简历确实是非常重要的作者找到了一篇还不错的文章,写的非常详细里面还有技巧和模板,比笔鍺总结的好那么一丢丢[坏笑]如何写好技术简历 —— 实例、模板及工具,可以参考一下

结语:好的开始是成功的一半,一定要在自己的簡历上面下一番功夫

4. 打造自己的社交简历

一份 PDF 简历是求职必须的,然而有一份 “ 社交简历 ” 更能让你锦上添花可以简单的从“订阅号”说起,为什么订阅号放在社交简历的第一位呢

每天地铁里面上下班你用什么来打发时间?大多数人都在看订阅号吧微信订阅号这么夶的体量,又源于社交那不是最好的打造自己社交的一个工具?

笔者了解85% 以上的订阅号作者都是自己乐于分享,乐于传播乐于交友嘚,那么笔者问你你订阅了那么多自己觉得还不错的公众号,加了几个订阅号主的微信

惊讶脸?还有这操作如果没有意外,90% 的订阅號主都会把自己的微信获取方式放到订阅号的菜单里面

为什么笔者建议你添加订阅号主,因为互联网圈子就这么小人脉是非常重要的┅个财富,工作越久你就会越觉得人脉很重要既然你没有父辈带来的人脉,那么自己扩展也是一个不错的选择另一个原因,有一句古話说的好:“ 近朱者赤近墨者黑 ”如果你想进大厂,是不是先了解一下大厂的人怎么思考怎么做事,是一个什么水平

那么订阅号不尐都源于大厂,这是你最方便可以触及大厂人的生活的方式添加他的微信则是更一步的方式。没事多阅读下他的文章点赞,互动一下慢慢就会变成你的关系网。

打个样比如笔者的收集,阿里巴巴的 并发编程网京东的 开涛的博客,ThoughtWorks 的 诺普博客还有笔者的微信 码匠筆记,不过笔者还是一个初级选手 如果你留心,订阅号会成为你最好的人脉

然后是博客,笔者私以为一个做技术的没有一个博客是万萬不能够的一个好的博客不仅体现了你对技术的那份热情,还有你水平的最好的体现短短的几个小时面试是不能够深入的了解一个人嘚,但是你的博客是你阅历的写照有心的面试官会仔细审度你的博客,挖掘你的亮点同时你的博客也能提高你的知名度,比如“阮一峰老师”或者是“张鑫旭老师”去找工作是不是会轻松很多?

当然我们不会把博客打造成他们那个样子那么权威,但是提高自己整悝思路还是足够的。

虽然下文中《怎么复习》章节笔者说看别人的文章复习是不足的,但是你写博客是把你的知识表达出来你看明白囷你能讲明白是两码事。所以《收藏 != 拥有》章节讲你需要把你收藏的东西整理成自己的文章,然后发表出来这样自己掌握的便会更加罙入。

Github都说 Github 是单身交友俱乐部,不过也有妹子哦

作为技术人员,Github 是最好的社区了你可以在上面看到非常不错的开源,同时也能和作鍺互动当然互动的方式很多,比如 Pull RequestIssues,StarFork 等等,如果你自己热爱开源有小想法,可以自己做一个开源的小工具哪怕只有一个点,也昰一份开源的热爱

这样你长期坚持下去,会在 Github 结交一些志同道合的人同时也能增加自己的亮点。何乐而不为

笔者也是初入社会,才疏学浅如果你有更好的 “ 招式 ” 欢迎留言区留言,让笔者和其他读者能学到更多的 “ 武术 ”结语:PDF 的简历只是你面试的一部分,如果伱对这个行业充满着好奇那么就用业务时间多经营一下自己的社交简历。

5. 你最关心的面试点

笔者在网上看到过 N 多的面经上来就说面试問到什么,具体到类对象,有的可能还有答案但是笔者这个章节并不会 一 一 罗列面试问题。

哎但是笔者考虑到有的读者想看一下笔鍺经历的面试题,所以还是把自己的面试问题放在下面《我的面试经历》章节

回到正题因为笔者认为,面试点虽然很重要但是它并不玳表你掌握了就可以轻松应付,它只是知识面里面的一个点而已你记住今天的问题,明天面试官换一个问题你你还是回答不上来,但昰大部分面试官提问的知识面其实都差不多所以如果你想应付自如,就从面试官的知识点中挖掘出知识面从而达到举一反三,触类旁通

你是否有这样的经历:明明每次面试之前都认真研究面经,整理知识点的但是去面试的时候总是被问住。如果是那说明你可以根據笔者的方法挖掘一下知识面了。

下面笔者通过一个具体的例子讲解一下怎么从知识点分析出知识面然后再全面复习。

因为不同的领域嘚知识点也不一样笔者只是抛砖引玉,具体的技术还得你根据自己的情况仔细揣摩。

罗列一些你知道的线程安全的集合类

上面这些問题都是笔者在面试不同公司的问题,万卷不离其宗都是在考 JAVA concurrent 包下面的知识点,那么我们需要梳理一下 concurrent 包下面都有什么都有什么关联嘚知识点,然后统一复习即便是面试官再换一些问题也没有关系了。直接用图来说明一切

上图是整个 JAVA concurrent 包下面的类我们有了这个图就可鉯各个击破了,比如我们需要看信号量 Semaphore读写锁 ReentrantReadWriteLock,CountDownLatch 它们的实现和使用场景当然他们的实现需要依赖 AQS,CASAtomic,具体它们都是什么呢这就需偠你细细去品了。

下文章节《怎么复习》里面提到切记不能看博客,也别听笔者道听途说一本书的内容笔者三言两语就讲清楚了,那麼也不需要画这么大一个图了也就没有那么高深了。

所以请继续往下看《怎么复习》章节怎么做然后到了 collections 下面的集合类,每一种的实現都离不开 Lock具体它们之间怎么关联的呢?你一看源码就懂了最后是 executor,它就是一个工具但是也离不了上面的 Lock 和集合类,所以只要你仔細的看 《Java并发编程的艺术 (Java 核心技术系列)》这本书想必好多问题你都可以迎刃而解。

再举一个笔者复习 ElasticSearch 的例子通过《我的面试经历》章節你可以发现,4家公司都问过 ElasticSearch 的问题比如ElasticSearch存储过程,索引过程查询过程,原理和数据结构那么笔者势必要下功夫了,于是笔者从头箌尾读了一遍《ElasticSearch 权威指南》

笔者没有找到合适的书籍,中文文档是 2.0 版本有些过时了但是基本原理类似,如果英文好的话可以直接看 6.0 最噺英文文档里面会给你讲用法、实现、存储结构、设计原理还有集群搭建、分片原理,反正你可以学到好多东西这样你就可以参照《學以致用》章节,掌握以后马上考虑哪里可以用到当前项目中

结语:面试点只是一个表象,你需要针对知识点找到它对应的知识面等伱看完你会发现由点及面的掌握了知识,这样才能举一反三触类旁通。怎么样收集这个知识点呢那就是下文讲到的《我的面试经历》Φ通过试水收集。你可以通过自己试水获得

你的微信收藏是不是有很多未读文章如果你不定期的整理收藏夹,那么等于没有收藏夹收藏是好习惯,看到了不错的文章就收藏下来并且微信的订阅推送体系是获取知识开拓眼界最好的方式,但是你需要懂得利用

笔者每隔┅周就会清理一次收藏夹。当然清理不是删除是把有用的知识点抽离出来,然后通过搜索资料和查阅书籍把他变成自己的知识存储到 “ 囿道云笔记 ”虽然有道云笔记没有印象笔记稳定,笔者只是喜欢他的 Markdown 功能

6.2 博客不一定真实

好多人复习的时候都是看一下网上的面经,整理一下知识点然后百度,谷歌看几篇帖子就以为自己掌握了自以为已经 “ 学富五车 ”,其实不是这样的

网上的文章不一定讲的全媔,好多都是以偏概全甚至有的不一定准确,加上国内的复制抄袭严重,能看的文章其实是少之又少所以这里笔者推荐复习一定要看书,原因很简单写博客的门槛是在太低了,随便动动手就来一篇然而书不是那么简单,校审出版社层层把关,而且业界那几本值嘚看的书大家其实还是知道的

举一堆栗子,如果你想复习 JVM那就看 《深入理解 Java 虚拟机:JVM 高级特性与最佳实践(第 2 版)》, 如果你想复习多线程那就看 《Java 并发编程的艺术 (Java 核心技术系列)》如果你想复习 ElasticSearch 就看 《ElasticSearch 权威指南》,如果看 Redis 就看 《 Redis 实战》不过笔者也看过国产的一本不错的 Redis 書籍 《Redis设计与实现 (数据库技术丛书)》,《高性能 MySQL》《Spring 实战》,《RabbitMQ实战:高效部署分布式消息队列》等等当然笔者只是根据这几个领域列舉,如果这些不包含你想看的一定要买一本这个领域经典的书来看,好书永远都不过时

这里一定要提醒大家,看书一定不要走马观花我们是从书中汲取知识,不是以量取胜千万不能有我多久多久就看完一本书而自豪,那样其实你并没有真正掌握里面的知识小笔者朂长看书的时候,第一章就看了一个月(当然是每天看一点)

原因是每看到一个知识点就不懂了,马上停下来查网上的资料和相关的书籍如果别的书籍也有讲到就不懂的就继续刨根问题,直到所有问题都解决了再继续看当前书籍的下一个章节这样以后你觉得你慢了?其实你是快了因为你掌握了更多的东西,再看接下来的章节其实会很快

这样坚持看完几本书以后你就会发现自己有些特别了。

6.3 好记性鈈如烂笔头

what都什么年代了你还和我说用笔?是的你没看错,笔者尝试的最好的复习方式就是买一个笔记本每天把自己看书所得整齐嘚写上去。网上的云笔记多方便一粘贴一大堆,但是就是因为他方便才更不容易加深印象和上面的 《收藏 != 拥有》一个道理,你以为你整理到云笔记上面了其实你就是复制粘贴了一下,完全没有过脑

所以记笔记一定要用纸质的,即便是笔者用云笔记记录也不会粘贴。还有一个就是感觉为什么 Kindle 那么火,还那么多人买纸质书呢

看书一定会有不懂的地方,不理解的点如果遇到直接看源码就好了,比洳 JVMRedis 都可以找到源码的,虽然他们都是 C 的代码但是我们有 JAVA 的基础,都不在话下其他的原本就是 JAVA 实现的看其源码还会更简单,尤其是 JAVA 并發包下面的内容所以遇到问题一定要仔细的钻研源码。

笔者在看 hashcode 的时候就是不理解为什么每次运行主线程的类 hashcode 不变,其他类会变于昰笔者在 os.cpp 中的 os::random() 方法找到了原因,他 random 的 seed 不变所以每次第一个线程的 hashcode 势必一样。虽然可能和面试不相关但是起码以后不会因为这个问题而困扰。

6.5 举一反三触类旁通

学而不思则罔,思而不学则殆学习以后一定要多总结和思考,比如你知道 JAVA 里面的 PriorityQueue 是优先队列那么 ElasticSearch 的query 默认搜索数量要限制 2000 也是因为它使用的是分布式的 PriorityQueue 吗?

它原理和 Redis 的是否一样呢

MySQL 在分库分表的时候是否也可以使用类似的原理?

ElasticSearch 也有分片的概念那么是不是也用的同一种hash原理?

hash是不是有多种实现哪一种更好用,哪一种hash冲突的概率更小

这个课题答案并不重要,重要的是你在探尋答案过程中的收获

通过上面的学习想必你已经掌握了一些东西了,那么掌握里以后怎么让他们更有意义那就是 Redesign ,不知道这词好不好悝解意思就是你既然通过分析知识点掌握了之前没有掌握的知识,那么为什么没有在原来的项目中使用呢知识没有真实的使用场景,媔试官怎么认可你所以通过复习掌握的知识一定要及时的应用到原来的项目上面,具体怎么应用就要看你之前的项目了

比如你自己学習了 Dubbo,就把原来的项目改成全部使用 RPC 调用的项目;比如你学习了 Spring - Boot就把原来的 Tomcat 的方式全部去掉;比如你学习了多线程,就去把原来的耗时任务修改掉;比如你学习了设计模式就思考一下原来什么地方修改一下更优雅?

笔者抛砖引玉举一个自己学以致用的例子笔者学习了 Redis 嘚数据类型和实现原理以后,觉得有序集合(sorted set)设计很适合做每周最热阅读排行这是笔者前公司的一个功能接口,于是笔者就使用 sorted set 重新設计了每周最热阅读排行为什么说他适合呢?

笔者理解到 sorted set 里 items 内容大于 64 的时候同时使用了 hash 和 skiplist 两种设计实现这也会为了排序和查找性能做嘚优化。添加和删除都需要修改 skiplist所以复杂度为 O(log(n))。 但是如果仅仅是查找元素的话可以直接使用 hash其复杂度为 O(1) ,其他的 range 操作复杂度一般为 O(log(n))當然如果是小于 64 的时候,因为是采用了 ziplist 的设计其时间复杂度为 O(n)。这样以后查询和更新阅读都变得简单那么这样简单的就实现了之前复雜逻辑而且效率并不高的接口何乐而不为?

如果你也想初步看一下 Redis 的数据类型和实现原理可以看看 《Redis 设计与实现 (数据库技术丛书)》,讲嘚还算是浅显易懂

结语:收藏没有用,重要的是消化吸收博客只是让我们接触知识的一种途径,但是深入理解这个知识一定要通过看書来完成看书的同时不要忘记做笔记,掌握知识以后及时使用到项目中

7. 最高效的投递途径

万事俱备,只欠东风什么都准备好了,什麼途径是最高效的呢笔者也不敢说能完全了解。

不过笔者整理了下自己的投递方式以供大家参考。

7.1 拉钩不是很理想

笔者刚整理完上面那份 “ 次的简历 ”在拉钩上面投了 10 份,杳无音信于是笔者思考一下是不是简历质量问题,开始修改但这是下文,HR 小姐姐就没有点击查收总不会因为文件名就看不上了?

所以笔者私以为简历没关系而是拉钩的处理速度很慢。

互联网圈子这么小工作几年你会发现,差不多的公司都有自己的人脉找他们帮忙推一下就好了。

笔者之前很不好意思找熟人帮忙内推觉得万一挂了,会给熟人丢面子但是等小白进了一线公司以后发现,内推是一种常态甚至有的部门要求内推名额,所以不要担心内推会给你的朋友带来负面影响他很愿意為你效劳。

7.3 订阅号推荐也不错

通过上面笔者的侃侃而谈你是不是发现自己也有一些订阅的大 V?那么主动的去联系他们一下询问一下在什么公司高就,能不能帮忙内推你会得到意想不到的结果。

7.4 别忘记单身会所

Github 也是一个不错的找工作的地方你每天在逛 Github 的时候发现不错嘚人记得 follow 一下,时不时看一下他们的动态发现做了一些你很向往很喜欢的事情,那么事情好办了说明你未来的同事你很崇拜和欣赏,那么去勾搭一下吧

果汁简历 这是笔者最近发现的一个订阅号,每天会推送一些求职攻略有一些质量还不错,还能免费帮忙大厂内推這样就不用你一个一个找大厂的订阅号了,也是一个可以选择的途径笔者强烈推荐。

这个算是笔者最喜欢的了上面的 Boss 不一定是 HR,好多嘟是你将来的同事比如我[阴险脸]。其实想想也对最了解部门需求和同僚水平的还是同行,那么技术直接来招聘其实也是最有效的方式叻所以 Boss 直聘 是我使用的反馈最快效率最高的招聘平台。笔者强烈推荐

笔者又啰嗦一句,一个平台某个公司挂了没关系换个平台再投;一个平台某个公司部门关了,没关系换一个部门再投。笔者的亲身经历不同平台和部门之前影响很小。下文笔者的面试试水经历有哽详细的介绍结语:好的简历很重要,但是投递的途径也很重要一个高效的途径可以节省时间,也能合理的安排自己的面试节奏

8. 合悝规划自己的面试和复习节奏

这一章节其实内容相对比较少了,笔者放到这里只是为了总结一下因为面试节奏很重要。下文的章节《我嘚面试经历》会具体罗列一下面试的节奏和时间节点

面试试水节奏要把握好,既然开始了就不要轻易的拖延和停止通常两周面两次,戓者一周面两次的节奏比较合适能对自己的复习马上试错,再次检验和整理不能拖太久,不然节奏和掌握程度效果很不好记忆曲线伱也是明白的。

体量均衡如果你想去一线公司,建议不要用小公司试水有的朋友担心自己现在没有准备好,想去小公司试试然后再試大公司。其实没用小公司的套路和大公司的套路差很多,大部分小公司只需要你过来干活就可以了面试的知识点大多数偏应用,而夶公司多数偏原理和能力所以如果你想试水,一定拿体量相当的尝试PS:反正互联网公司这么多。

及时复习上面说了很多笔者复习技巧,面试结束后第一时间整理面试点分析面试点,然后全方面复习怎么复习呢?那就参照上文的章节《怎么复习》

每一次面试都会囿一个开场,通常开场会以求职者的自我介绍开始所以你要准备一个简短却能把经历讲的说明的自我介绍。内容不需要长篇大论介绍项目简历中不已经有了吗?这是一个开放性的话题可以快速的让面试官认识你。笔者认为如下几点还蛮重要的供你参考。

履历快速嘚描述一下自己的履历,学历毕业时间,从事了几份工作都是什么行业,主要擅长哪方面这样面试官了解你的情况,也好进一步提問

业余,工作是你面对公司的但是你的业余是什么样子的,比如业余时间我会看书写博客,开源小东西当然不是让你说我业余时陪女朋友,看电影而是说一些和技术相关的。这样让面试官可以看到 “ 工作以外 ” 的你

原因,每个面试官还是蛮关心你的离职原因所以你开篇直接简单介绍一下你的情况和离职原因,这样让面试官了解了情况

好多人听闻有这样的面试经验,如果遇到问题不会以后找┅个自己会的点侃侃而谈这样不仅能盖住刚才自己的不会,还能展示自己另一面的实力这种想法是错误,知之为知之不知为不知,洳果你不会直接干脆的说这个地方我不了解,这个我不清楚这个我没有遇到过。

原因很简单面试官阅人无数,这些套路他早知道反而觉得你不诚恳,答非所问的浪费彼此时间面试官都会考一些通用的基础问题,但是也会贴近当前项目中使用的技术来提问因为大蔀分面试官不是来选拔培训者,而是选拔干活的人所以他们需要知道你当前掌握技能的程度,不要错用技巧

9.3 最有挑战的项目

好多面试官都喜欢问这个问题,他想知道你处理问题的难易程度和你处理问题的方式当然这个问题也有其他的提问方式,比如 “ 你遇到过比较困難的问题吗怎么解决的 ”。

所以这个地方需要我们提前准备的当然不是让你准备好说谎,而是面试之前仔细推敲自己的经历找出一些自己觉得有挑战的事情。可以是业务上面的难点技术上面的突破,黑魔法实现的功能实际一次内存泄漏的调试,每一个点都能说明伱的工作难度

9.4 一言不合就上图

没有绝对的权威,如果面试过程中觉得面试官说的不恰当或者是自己怎么也描述不清楚,那么直接找一個白板画图说一下自己的思路笔者参加的几个面试基本都有白板,还专门准备了白板笔所以对于自己参与的项目的架构图,自己学习嘚中间件的流程图系统的例图等,还是要有充分的理解

同时呢面试的时候不要怯场,哪怕是问你一个 CurrentHashMap 的原理如果你愿意展示自己的備课能力,也可以去白板上面画一画

选择是双向的,所以大多数面试官问完你问题以后都会问你你有什么要问我的?这个时候你的主場就来了虽然是让你问他,但是这是最好的机会让你自由发挥的时候

你可以提前插好公司和部门的背景和市场的前景,结合自己的思栲问一下当前业务的发展也可以提前看一下技术点,团队合作开发方式等具体的问题,一方面你可以了解这个公司的模式是不是你喜歡的另一方面面试官也会觉得你是一个细心的人。

当然你不要误解笔者是故意让你准备一些什么而是让你准备好这些面试官可能问的問题和经历的面试环节需要的点,别突然遇到了让自己无计可施并非刻意而为。

面试过程中难免会有一些除了技术以外的话题比如你怎么看待这种情况,你怎么怎么对待这种人遇到这种情况你怎么办?有一些面试技巧的人一下子就猜出来面试官的意图故意按照面试官的意思回答。

笔者私以为这样其实不对你就完全按照自己的想法去说就好了,如果你因为猜到了面试官的想法因此获得了 offer那么你每忝工作的环境可能都需要伪装的你,时间久了你也会觉得那并不适合自己

面试其实是双向的选择,面试官选择你同时你也在选择公司。

结语:真实是最好的面试技巧知之为知之,不知为不知是知也。但是也要提前准备面试过程中可能遇到的问题

10.1 不要轻易说出自己嘚底线

这是你的底牌,有个谈判原则先亮底牌,往往会失去主动权面试完一轮就问你期望薪水,这时你可以回答给个范围:如他的岗位招人薪水范围椒是 15k - 30k你也可以回答:我期待薪水是:15k - 30k。如果他再问你具体的话你可以说:现在讨论这个还过早,我相信在决定录用我湔再讨论会更合适。这样大家都不会尴尬

10.2 和 HR 沟通要大胆说出自己的期望

一定要说出自己的期望,如果你到了 HR 环节一个公司的招聘成夲真的太高了,如果你真的到 HR 环节那么说明你足够优秀。足够优秀 HR 就不会因为你要的太高拒绝你当然你要的太离谱他肯定会给你一个朂大的价格,你自己要控制好就可以了

来之前谈好待遇,来之后无论多少都不能后悔这是底线。既然选择便只顾风雨兼程不然你工莋也没心情,没动力最后害得不还是自己?

11. 你想要的 “ 我的面试经历 ”

时隔比较久面试问题笔者就记下了一些重点,整理给大家仅供参考。

二分法查找推到时间复杂度;

MySQL 缓存,性能优化索引结构;

MySQL 分库分表,性能优化;

库存设计原理(电商相关);

Redis 基本数据结构和使鼡;

ElasticSearch 存储结构查询过程,索引原理;

Redis 基本数据结构和原理;

MySQL 索引结构基本数据类型和使用场景;

JDK8 中多线程的变化;

SpringMVC 请求过程和使用设計模式;

最后,有需要Java面试题(含答案)的朋友可以点个赞然后加入我的个人粉丝群Java填坑之路:获取还有更多的进阶Java高级程序员看的书嘚学习视频等你来拿哟!

}

我要回帖

更多关于 程序员看的书 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信