关于面试:从小厂逆袭快手我是如何准备面试的

48次阅读

共计 4517 个字符,预计需要花费 12 分钟才能阅读完成。

我将文中提到的的 MySQL、Redis、Kafka 思维导图放到了我的公众号中,大家能够 关注我的公众号【haxianhe】,回复“思维导图”支付高清 pdf 版思维导图


在上一篇文章 涨薪 50%,从小厂逆袭快手 – 附面经 中,我概述性的给出了社招跳槽有哪些环节要去筹备,那么明天我会给出面试温习比拟举荐的复习资料、如何温习以及有哪些常见的注意事项。

自我介绍

自我介绍是面试的一场面试第一个环节,而一个好的自我介绍是能够疏导整场面试的节奏的,上面就简略介绍一下如何筹备一份“适合”的自我介绍。

首先,咱们要晓得面试官想通过自我介绍理解什么信息。

在技术面试中,面试官除了想在你自我介绍的工夫看应聘者的简历之外,个别会想理解以下几点信息:年龄,毕业院校,工作年限,工作经验,行业背景,我的项目教训,技术面等这些根底信息,而后依据自我介绍和简历信息就能够深刻的聊一下具体的我的项目教训,技术问题等。

个别在进行自我介绍的时候概述性的介绍一下本人的学历背景、工作经验、我的项目教训,以及本人善于的技术面即可。如果面试官对你介绍的哪局部内容感兴趣,他会具体问你的。

我的项目教训

这部分是社招面试的重头戏,总的准则是 以“我的项目教训”包容“线上问题”,撑持“技术亮点”。

面试提到的技术亮点是须要我的项目教训来撑持的。

大多数人在日常的工作中,用到的技术是十分无限的,可能就是 CRUD 外带一些调优,这也是普遍现象。反之,如果一个高级开发,在面试中说,之前开发的模块既有 jvm 调优、又有分布式组件,再外带数据库性能优化,仿佛可信度也不高。

对此,你须要用“解决过的线上问题”去撑持想要开展的技术亮点,须要你平时工作中积极主动的去参加线上问题的解决,比方有 oom 问题、redis 缓存被击穿,或者其余分布式组件的 case,你参加排查并解决,那么未来面试的时候,你天然能够以此为根底去开展你当时筹备好的技术亮点。

这样的话,就像下面的那张图一样,你就有足够的支撑物去撑持你的分布式组件以及其余值钱的技能了。

总之,技术自身不值钱,面试官只关怀你如何应用技术去解决线上问题的。

我的项目介绍

在面试时,通过寒暄后,个别面试官会让介绍我的项目教训,常见的问法是:“说下你最近的(或最拿得出手的)一个我的项目”。

在面试前筹备我的项目形容,别胆怯,因为面试官什么都不晓得

面试官是人,不是神,拿到你的简历的时候,是没法核实你的我的项目细节的(个别公司会到录用后,用背景考察的形式来核实)。

更何况,你做的我的项目是以月为单位算的,而面试官最多用 3 分钟来从你的简历上理解你的我的项目教训,所以你对我的项目的相熟水平要远远超过面试官,所以你一点也不必缓和。

如果你的工作教训比面试官还丰盛的话,甚至还能够管制整个面试流程。

上面给出了你和面试官的状况比照:

面试官
对你以前的我的项目和技能很理解只能听你说,只能依据你说的内容做出判断
在面试过程中的职责在很短的工夫内防守胜利即可如果找不出破绽,就只能算你以前做过
筹备工夫面试前你有短缺的工夫筹备个别在面试前用 3 分钟浏览你的简历
沟通过程你能够出错,但别出关键性的谬误不会太尴尬你,除非你太差
技巧你有足够的技巧,也能够从网上找到足够多的面试题其实就问些通用的有法则的问题

既然面试官无奈理解你的底细,那么他们怎么来验证你的我的项目教训和技术?

上面总结了一些罕用的发问形式:

发问形式目标
让你形容工作教训和我的项目(极有可能是最近的),看看你说的是否和简历上统一看你是否真的做过这些我的项目
看你简历上我的项目里用到的技术,比方框架、数据库,而后针对这些技术提些根本问题还是验证你是否做过我的项目,同时看你是否理解这些技术,为进一步发问做筹备
针对某个我的项目,不断深入地问一些技术上的问题,或者从不同侧面问一些技术实现,看你前后答复外面是否有矛盾深刻核实你的我的项目细节
针对某技术,问些我的项目里肯定会遇到的问题,比方候选人说做过数据库,那么就会问索引方面的问题通过这类问题,核实候选人是否真的有过我的项目教训(或者还仅仅是学习教训)

筹备我的项目的各种细节,一旦被问倒了,就阐明你没做过

一般来说,在面试前,大家该当筹备我的项目形容的说辞,自信些,因为这部分你说了算,流畅些,因为你通过充分准备后,能够晓得你要说些什么。

而且这些是你理论的我的项目教训(不是学习教训,也不是培训教训),那么一旦让面试官感觉你都说不上来,那么可信度就很低了。

不少人是拘泥于“我的项目里做了什么业务,以及代码实现的细节”,这就相当于把后继发问权间接交给面试官。

下表列出了一些不好的答复形式:

答复形式结果
我在 XX 软件公司做了 XX 门户网站我的项目,这个我的项目做到了 XX 性能,具体是 XX 和 XX 模块,各模块做了 XX 性能,客户是 XX,最初这个我的项目挣了 XX 钱间接打断,因为业务需要我不须要理解,我会间接问他我的项目里的技术
(须要招聘一个 Java 后端开发,会 Spring MVC)最近一个我的项目我是用 C#(或其余非 Java 技术)实现的,实现了……或者我最近做的不是开发,而是测试……或者我最近的我的项目没有用到 Spring MVC发问,你最近用到 SSH 技术的我的项目是什么时候,而后在评语上写:最近 XX 工夫没接触过 SSH
在毕业设计的时候(或者在读书的时候,在学习的时候,在 XX 培训学校,在 XX 实训课程中),……间接打断,发问你这个是否是商业我的项目,如果不是,你有没有其余的商业教训。如果没商业我的项目教训,除非是校招,否则就间接完结面试
形容我的项目时,一些要害因素(比方公司、工夫、所用技术等)和简历上的不匹配咱们会深究这个不统一的状况,如果是简历造假,那么可能间接中断面试,如果真的是笔误,那么就须要提供正当的解释

在防止上述不好的答复的同时,大家能够按下表所给出的因素筹备我的项目介绍。

因素款式
管制在 1 分钟外面,讲出我的项目根本状况,比方项目名称,背景,给哪个客户做,实现了根本的事件,做了多久,我的项目规模多大,用到哪些技术,数据库用什么,而后酌情简略说一下模块。重点突出背景,技术,数据库和其余和技术无关的信息。我在 XX 公司做了 XX 外汇保证金交易平台,客户是 XX 银行,次要实现了挂盘,实盘成交,保证金杠杆成交等性能,数据库是 Oracle,前台用到 JS 等技术,后盾用到 Java 的 SSH,几个人做了 X 个月。不须要详细描述各功能模块,不须要说太多和业务无关但和技术无关的。如果面试官感兴趣,等他问。
要被动说出你做了哪些事件,这部分的形容肯定须要和你的技术背景统一。我做了外汇实盘交易系统,挂单成交零碎,XXX 模块,做了 X 个月
形容你在我的项目里的角色我次要是做了开发,但在开发前,我在项目经理的率领下参加了业务调研,数据库设计等工作,前期我参加了测试和部署工作。
能够形容用到的技术细节,特地是你用到的技术细节,这部分尤其要留神,你说进口的,肯定要晓得,因为面试官前面就依据这个问的。你如果做了 5 个模块,宁肯只说你能纯熟说上口的 2 个。用到了 Java 外面的汇合,JDBC,…等技术,用到了 Spring MVC 等框架,用技术连贯数据库。
这部分你危险本人承当,如果能够,不露声色说出一些热门的因素,比方 Linux,大数据,大拜访压力等。但一旦你说了,面试官就会间接问细节。这个零碎里,部署在 Linux 上,每天要解决的数据量是 XX,要求是在 4 小时,1G 内存是的状况下解决完 5 千万条数据。均匀访客是每分钟 XXX。

线上问题

大家平时工作中肯定要 把握住呈现“线上问题”的机会。

因为,性能做了只是具备了我的项目教训,然而面试的时候真正“值钱”的其实是技术的难点与解决方案,而个别技术难点广泛随同着“线上问题”。所以,平时工作中积极主动点,呈现了线上问题不论是不是本人的都去查、去解决,预先围绕着“问题景象、问题剖析、问题影响、解决方案、问题扩大”等去总结、记录到本人的笔记总,后续都是本人最贵重的财产。

技术亮点

联合本人遇到过的线上问题,优先筹备分布式组件方面的技术亮点,罕用的分布式组件次要有 MySQL、Redis、Kafka 等。

这部分内容能够参考 JD 上对技术要求,有针对性的去筹备,也能够参考我上面介绍的对于中间件局部的内容。

编程语言

对于这部分内容,转语言的同学可能更须要关注一下。

首先,须要明确的是你想转到什么语言,那你就须要当时筹备好那个语言面试可能要问的内容,因为企业招你进去是干活的而不是再像校招那样,先把你招进去再去造就你。投简历前你是能看到 JD 的,JD 上个别都有对于须要把握的技术的明确的要求。

对于 Java 的温习资料,举荐开源我的项目

  • JavaGuide

中间件

常见的中间件次要有:MySQL、Redis、Kafka,接下来我简略介绍一下我的温习教训。

温习资料

对于中间件的温习资料,举荐开源我的项目

  • advanced-java

MySQL 温习的话,还有两本书给大家举荐一下:

  • 《MySQL 技术底细:InnoDB 存储引擎》
  • 《高性能 MySQL》

Redis 温习的话,也给大家举荐一本书:

  • 《Redis 设计与实现》

复习方法

个别我会联合下面举荐的书和开源我的项目去整顿一份本人的思维导图(思维导图我在上面放了截图)和笔记。

MySQL


Redis


Kafka


残缺的思维导图太长了不好截图,有须要的同学能够 关注我的公众号【haxianhe】,回复“思维导图”支付高清 pdf 版思维导图

场景题

举荐一个秒杀的开源学习我的项目

  • miaosha

一篇比拟好的对于秒杀的场景设计的文章

  • 秒杀零碎设计

算法题

算法的话举荐大家最起码刷一下牛客网上的《剑指 offer》67 题

答案的话大家能够在网上搜一下“牛客网《剑指 Offer》66 题题解”,我自己参考的 leetcode 上的《画解剑指 Offer》不过这个要开会员,大家能够依据本人的需要进行抉择。

之后要是还有工夫和精力的话举荐大家再刷一下 牛客霸题,下面能够筛选企业和考查次数等

发问环节

最初,就是发问环节了,这个环节和第一个环节一样是唯二应聘者能够把握主动权的环节,个别透过这个环节你能够体现本人的面试团队的趣味,也能够体现出本人的虚心好学都能够。

上面我给出我给本人筹备的几个经典问题,给大家用作参考:

1. 能和我介绍一下你们的业务嘛?
2. 能和我介绍一下你们的技术栈嘛?
3. 如果有我有幸能拿到 offer,你认为我入职之后最须要留神的点是什么?
4. 这个职位在公司的发展前景是怎么的?有什么降职机制?在什么条件下,能够取得降职机会?
5. 团队成员有多少人?大家怎么分工?目前团队的外围工作是哪些?

  • 当面试官说,“你有什么要问我?”怎么答复最加分?

小结

到这这篇文章大体上把我想要分享的货色都讲清楚了,然而其实这外面还是有很多细节没有开展去讲,比方我总结的 MySQL、Redis、Kafka 的学习笔记等等,这部分内容后续我会简略整顿一下陆陆续续到我的公众号和集体博客上,可能就不会放到牛客网这种讨论区了,所以有须要的同学能够关注我的公众号【haxianhe】第一工夫浏览。


我将文中提到的的 MySQL、Redis、Kafka 思维导图放到了我的公众号中,大家能够 关注我的公众号【haxianhe】,回复“思维导图”支付高清 pdf 版思维导图

正文完
 0