面试技巧

关注公众号 jb51net

关闭
IT专业知识 > IT职场规划 > 面试技巧 >

记一次京东Java研发岗社招面试(面试经历+真题总结+经验分享)

若丨寒

本篇先以日历形式回顾春招之路,方便各位参考某厂的处理进度;然后是总结归纳春招Java面试题库;最后做个总结还有展望,开始新的征程~

1.面试经历

2018年的冬季特别的冷,无疑是程序员的寒冬,我也是年底裁员大潮裁下来的一名,(整个业务线都裁了 难受中~)但临近年底了失业回家也不太好所以有投了几份简历,其中投京东的一份,京东Java岗要求。

任职要求:

2.京东面试真题

一面(主要是基础面)

二面(数据库问的比较多)

三面(综合面主要分布式及缓存)

3.面试经验总结以及学习路线分享:

面试经验总结:

如何准备

首先要声明的是,最好的“准备”方式一定是平时多积累、遇到问题不要逃避或者讨巧、深入去思考并解决,在解决一个个问题的过程中积累解决问题的能力,形成自己的知识体系。所以这里说的如何准备不是说临时抱佛脚,而是如何能通过提前准备把自己平时的积累展现出来,不因为临场的表现影响面试官对你的判断。

  1. 针对以上列的知识点思考答案甚至扩展,如果能知道大部分,深入一部分就很好,这个过程主要是整理自己的知识体系
  2. 回忆整理简历和过往项目中的”难点“、”亮点“,因为这些是用来区分候选人很重要的点,合格的面试官一定会问类似于”你在项目中经历的最大的技术难点是什么?“,整理一下思路,不至于在面试时候因为时间久远而回忆不起来细节影响面试效果。
  3. 沟通过程中做到有理有据,不要过于自大,也无需刻意迎合面试官。沟通的本质是信息透明化,工作中也许我们无法做到完全客观公正,但是在技术问题上坚持自己的客观和原则是我认为技术人应该坚持的品格,我这里说的坚持不是一根筋的固执已见,而是根据共同认可的事实进行逻辑推断得出的观点。长远来看这种品格会带给你足够的技术影响力和回报。

学习路线:

大部分职业都是需要有成长体系,才能让人有奋发向上的追求。架构师就是程序员这个群体成长道路上往往会出现的一个重要节点。每个好架构师都是一位出色的程序员。然而好的程序员进阶为架构师,并不容易。

对于有一定后台研发经验(尤其是5年以上经验)的程序员们来说,成为架构师的渴望更加强烈,因此会花更多时间学习,提升架构技能,但常常由于客观条件限制,面临着不少难点:

接触不到一线实战架构技术,尤其是有一定的技术深度和难度架构技术。

不了解核心技术点所处的具体背景是什么?

同时,又迫切需要掌握:业界目前主流干货技术 + 前沿技术,互联网核心技术硬技能 + 核心软技能,掌握架构技术的本质,知其然更知其所以然,架构筑基篇,深入内核,直击故障,拒绝蒙圈。
所以你需要一个明确的学习路线----这是一个典型的程序员的成长过程:

使用Java---->深入理解Java积累经验------>独立设计分析能力------>独当一面的多面手!

因此,你必须学习:(文末附免费学习资料领取)

一、开源框架解析

程序员每天都和代码打交道。经过数年的基础教育和职业培训,大部分程序员都会「写」代码,或者至少会抄代码和改代码。但是,会读代码的并不在多数,会读代码又真正读懂一些大项目的源码的,少之又少。这也造成了很多错误看源码的方式。

那要如何正确的分析源码呢? 我们的目标应该放在最常用的框架上面:

 

二、架构基础

从架构设计,到应用层调优,再深入了解底层原理,扎实的Java基本功才能让自己变为扫地神僧:内存模型,并发模式,线程模型,锁细节等等

 

三、高性能架构

我们不仅仅对项目要运筹帷幄,还要能解决一切性能问题。只有深入学习JVM底层原理,Mysql底层优化以及Tomcat调优,才能达到知其然,知其所以然的效果。除了性能优化之外,也能提供通用的常见思路以及方案选型的考虑点,帮助大家培养在方案选型时的意识、思维以及做各种权衡的能力。

 

四、微服务架构

关于微服务架构的取舍

在合适的项目,合适的团队,采用微服务架构收益会大于成本。微服务架构有很多吸引人的地方,但在拥抱微服务之前,也需要认清它所带来的挑战。需要避免为了“微服务”而“微服务”。微服务架构引入策略 – 对传统企业而言,开始时可以考虑引入部分合适的微服务架构原则对已有系统进行改造或新建微服务应用,逐步探索及积累微服务架构经验,而非全盘实施微服务架构。

 

五、团队协作

开发工具工程化

通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。程序员的战斗,往往不是一个人的战斗,我们如何在一个平台下高效的去重,进行代码review,对功能进行调整,debug,做到在统一的规划下步步为营,混乱的堆代码的过程中找到自己的记录。这一切都依赖于有效的工具。

 

六、B2C项目实战

项目实战

要想立足于互联网公司,且能在互联网浪潮中不被淹没,对于项目的开发实战演练是不必可少的技能,也是对自身能力的一个衡量,有多少的量对等于获得多少的回报。看似简单的一个项目需求图谱,其中的底层原理,实现原理又能知道多少?你搭建一个完整的B2C项目平台到底需要多少知识?这一切都是需要我们考量的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。