2017年4月份从Android开发转了Java后台开发,到现在刚好一年半的时间。最近找了一波工作。收到了蛮多Offer的。最终决定了支付宝的高级Java开发的Offer。于是想总结一下经验,以供大家参考,希望能帮助到大家。在此也非常感谢在找工作过程中各公司对我的垂青,也感谢各位帮助过我的人。
我主要从以下三个方面总结一下:
- 前期准备
- 临场发挥
- 平时工作积累
为了篇幅不要太长,既方便阅读,也可以让我自己不用花太多的时间写一篇很长的文章,我分成独立的文章来写。这篇介绍前期准备的内容。
1. 前期准备
有一句话,机会都是给有准备的人的。所以不要盲目自信,什么都不准备就去面试了。准备的内容有几点:
- 准备简历(百度有很多,可以不看我的)
- 准备基础知识点(百度有很多,可以不看我的)
- 准备自己做的项目(敲黑板!自己的感悟!)
1.1 准备简历
我就不说简历应该怎样写了,毕竟我也不是专业的。但是请你把简历拿出来让你的朋友,看一看,从别人的角度看你的简历是什么样子的。他们能不能看到你的特点。他们一般都会给出你他们的感觉和修改意见。修改到让别人看着舒服就可以了。至于说什么是舒服,那就可能包含很多东西。排版,语句,甚至到字体。我的朋友给我指出了很多修改意见。我都与他们探讨和修改。
1.2 准备基础知识点
这个我就不去罗列问题了,网上太多了。自己把那些问题准备一下。但是我发现我面试过程中,大多数时间还是在聊项目,项目中解决的问题,这些东西聊完就40分钟左右了,也会或多或少的问到一些基础知识。所以也要提前把网上能找到的基础知识点准备一下。重点提示一下准备基础知识点的大方向:
- Java基础知识
- Spring基础知识:Spring Boot基础
- 数据库基础知识:MySQL,SQL语句
- 中间件基础知识:Redis,MQ等,看项目用到什么。
- 基础理论知识:计算机网络,操作系统,设计模式等
- 算法:可以去Leetcode上刷一刷(说实话我都刷,就随便做了几道让自己找到做算法题的状态)
如果有需求可以留言,如果需要的人多的话我可以把我准备的问题用另一篇文章列出来,就不在这里罗列,占用篇幅影响阅读了。
1.3 准备自己做的项目
敲黑板!!!
到了面试阶段,【聊一聊的你们的项目】,【你在项目中做了哪些东西】,【你在项目中遇到的最难的问题是什么,你是怎么解决的】这三个问题一定是问的频率最多的,也是对于面试官考察一个人最重要的。想要比较好的回答这三个问题。需要平时工作的积累和面试前的准备。对于工作积累来说我在之后再讲,现在主要讲怎样准备。因为每个人做的项目都不一样。所以这三个问题都没有标准答案。首先,我觉得自己可以想一下这3个问题的答案,语言尽量简练,然后和自己的朋友讲,看看他是否可以听的懂。相同的问题你可以问一下和自己承担相同工作的同事,看看他是怎样回答的。其实大部分人在项目中都是写的业务代码,所以在准备的时候要有侧重点。什么都说,但又说不到面试官想听的,就会让这个环节效果很差,有些人聊完项目面试官就感觉没什么兴趣了,就是这个原因,那么我来谈谈每个问题的侧重点:
- 【聊一聊的你们的项目】:侧重业务流程,用简练清楚的语言描述项目做了一个什么事情。然后可以简单介绍一下项目使用的架构和技术栈。这个其实整理一下,一定有东西可以说的,切记业务不要介绍的过于复杂,很多复杂的东西一概而过,面试官有兴趣的话他会自己问,每个系统都有很多细节,讲不完的,这里讲太多会显得很啰嗦。
- 【你在项目中做了哪些东西】:侧重你所做的东西在业务流程中承担的作用和重要程度。然后交代清楚这一块的复杂度,体现一定的技术难度。我知道大部分人都在写业务代码的。大部分时候项目需要大数据和大并发的场景比较少。这个时候你可以侧重从系统设计去聊,比如“面对复杂的业务逻辑如何解藕?”。
- 【你在项目中遇到的最难的问题是什么,你是怎么解决的】:侧重有难度的问题,对于后台,侧重于并发,大量数据,和分布式问题。尽量不要说业务流程,或者一些低级的问题。面试官肯定希望了解你解决了多难的技术问题。那么没有大数据,高并发方面的问题解决经历怎么办?我的经验可以侧重解决分布式问题。因为不管你的用户量有多少,只要项目是分布式系统,那一定会有分布式问题。比如“幂等如何做的?”。
总结
简历和基础知识准备网上太多了,大家可以随意百度。我这边觉得最重要的就是第三点。因为我发现聊项目就能聊蛮长时间,这里聊完之后再问的一些基础知识,都已经不影响大局了。所以把自己做的项目,好好组织一下语言。该讲哪些不该讲哪些。有些人说面试就是吹牛逼。在我看来,如果能吹的天衣无缝,那也确实是有实力。对于我还是实话实说,毕竟纸包不住火。这时候很多人又有问题了,实话实说了,面试官问完项目觉得没什么难度,就基本GG了。或者讨论项目的时候问了一个没有准备的问题,自己不会,很尴尬怎么办。那下一篇我再介绍,我总结的临场发挥的经验。