今年不只是世界发生大事大变化的一年,也是我职业踏入新阶段的一年。上半年一直在为面试作准备,也面试了几家公司,针对一些常见问题与答案(没有答案的面试总结都是耍流氓),常见的加分项作了一些梳理,但愿可以帮到你们。java
前情提要:git
本篇主要讲讲怎么讲好本身作的项目和hr面试会遇到的常见问题与解析,技术篇因为篇幅过长还在更新,请关注个人掘金帐号(sidfate)~以及我整理的面经项目:github地址github
面试官在问到项目经历的时候,每每会问这么一个问题:面试
你作的项目中有哪些困难的点或者哪些亮点,你是怎么解决/实现的?spring
不少同窗遇到这种问题就不知道怎么回答,感受一直在作业务就这样一路过来了,包括一开始的我在面试中也没有好好回答。后面我试着沉淀一下本身所作过的项目,回忆下项目中作到个每一个功能点是怎么分析怎么实现的,遇到哪些困难是怎么解决的,而后试着梳理下来,特别是可以整理成知识点。设计模式
可是有同窗可能说了:我整理了半天也没整理出啥,想来想去也只有CURD的东东,作的只是一个小项目,怎么办?当你以为本身作的项目拿不出手的时候,试着去想象一下你能够作的,试着去复杂化你的项目,例如优化,是否是能够用设计模式重写模块重复逻辑,例如若是项目遇到高并发高流量的时候怎么应对,经过对本身的压测能够提升性高等等,下面我会讲的更详细写。markdown
可是注意的是必定要是本身实践的内容拿来讲,若是只是说说别人作的东西极可能就会尴尬的暴露知识盲区。并发
再者,这个问题若是咱们站在面试官的角度想一想,他到底想问什么,我以为是3个方面:你的技术驱动力,你的技术格局,解决问题而且可以沉淀下来的能力。高并发
另外,面试官每每仍是这么问:oop
你项目有遇到什么性能瓶颈吗?你是怎么解决的
针对你作的项目的性能指标也是一个不错的切入点,这时候能够说下你项目的部署状况。若是你排查过项目出现的性能问题,把具体过程列下来,能说出具体缘由,能精确到具体排查顺序最好。即便没有也能够说说你知道的如何预防的知识点,而后具体是怎么实践的。
给一个介绍本身项目的经典模板:
我作过一个xxx系统,他的功能是xxxx(简单总结下)。技术栈是xxxx(说明技术栈)。我曾经用xxx技术优化过,解决了xxxx问题。系统的qps大概是xxx,曾经排查过xx问题,后面设计xxx预防和报警方案保证线上稳定。
例举一些我准备的以及被问到的问题
裸辞的缘由?
对于这个问题我一直是这么回答的:我以为裸辞是对本身和公司负责,若是我没有从上家离职的话个人面试就无法好好的准备,甚至可能会影响到现有工做的进展,裸辞后可让我更好的对技术和自身进行复盘和总结,因此也是对本身负责。
做为项目的负责人,遇到多个需求方的不一样需求怎么去作评估作抉择?
这个问题着重一个词:风险评估。风险评估能够从人力,开发周期,开发成本的角度给出一个综合的评价,最后说一个完整开发的流程,例如:需求评审->设计评审->代码评审->测试评审...
若是如今让你再去实现一个你作过的系统,你会怎么作?
其实这个问题也是考察复盘能力,把一些总结过的经验再说一遍,注意突出一个扩展性(从新设计),提早输出一些问题的预防方案。
以前看到你有面试失败的经历,请问是什么缘由?
这个问题是个大坑,当时我被问到也是心头一惊。后面冷静下来后我是这么回答的:我作的部分系统从贵公司的视角来看比较的基础和简单了,因此有些面试官认为我作的不够深。其实个人另一个系统(转移角度)是比较全面和有深度的,当时可能面试官没有问题我也没有提到,后面我反思了就把这个项目着重的去讲。