来上海三周找工作小总结(Java)

2019年11月底到2019年12月初,我来到上海,找个三周的工作。有Java开发岗和数据挖掘岗,第一周没什么准备,加上看数据挖掘看了三个月,Java面试基本上一败涂地,第二周准备了下,逐渐拿了几家offer。后来有同学想参考我的找工作经历,遂总结如下。本篇主要从Java开发的角度整理。

一、基础篇

1.1 手写算法

基本上一线互联网的面试过程中,都有现场手写算法的过程。所以算法一定要有所准备,免得因为准备不足、算法有漏洞而影响面试官对自己的印象。结合三周的算法题目,手写算法整体上可以分为 字符串、排序、查找、链表、树和动态规划这几个方面。比较高频面试题的自然是快速排序,当然有的部分面试官会在快速排序上做个变种,但是基本上思路是不变的。其次,次高频的是链表的考察,比如链表的逆转、判断是否有环等。动态规划方面往往问的是思路。最后,也有面试官会给具体的业务场景,需要面试者抽象出算法进行解决业务问题。

  • 判断字符串是否是回文串。
  • 找出最大长度的回文串。
  • 排序各个算法的时间复杂度,手写快速排序与冒泡排序。
  • 链表的逆转。
  • 判断单链表是否有环,找出单链表里的环的交叉点。
  • 树的遍历、树的高度。
  • 贪心算法与动态规划。

1.2 计算机基础(网络&操作系统)

计算机基础方面,也有部分公司的部分面试官会问。比较高频的是计算机网络方面的知识,具体有TCP协议、TCP三次握手、四次挥手。比如,TCP为什么要设计成三次握手。另外,也有面试官考察操作系统里虚拟内存的相关知识。

我印象比较深的是,一个面试官问我TCP的拥塞控制。

  • TCP为什么要设计成三次握手?
  • HTTP请求是如何访问到你的服务器的资源的,如果有spring框架,还会问如何定位资源的。

1.3 Java基础

Java基础涉及的主要有Java基础类型、 Java集合类、Java多线程、Jvm内存模型与垃圾回收。比较高频的问题如下:

  • Java8中concurrentHashMap的put与get操作的具体过程,如何保证线程安全的。
  • Java 关键字synchronized的用法及其原理,Java8中有哪些改进(锁膨胀的过程)
  • Java原子类型的原理,CAS原理(unsafe包),能否保证线程安全?
  • Jvm内存模型,CMS垃圾回收与G1垃圾回收。

1.4 数据库基础

数据库也是面试的重点项。因为各大厂的业务都需要用到数据库。

  • 数据库索引:Mysql的索引结构,B+树索引(为何不用B树),簇索引,覆盖索引的过程。什么场景的查询不会命中索引?
  • 数据库的事物隔离级别:会找具体的场景考察,不能只知道概念。MVVC的原理
  • 数据库的锁:乐观锁、悲观锁、S锁、X锁等。

1.5 中间件

简历上写了中间件,就会问。而且会问到具体原理与应用场景。所以要慎写!

  • 消息中间件(Kafka、Metaq、Notify、Activemq等),找一个用过的需要理解原理。其实,使用都很简单。原理方面,消息中间件如何保证不重复不遗漏
  • RPC原理
  • 分库分表中间件
  • 限流中间件

二、项目篇

项目上主要会问你负责的项目,我的理解其实还是考察你的沟通能力和解决问题的能力。如果项目比较大,先描述项目整体背景再说你具体负责的部分,不夸大不谦虚。

  • 项目的背景&价值,解决了什么问题?
  • 项目中的难点,解决方案&改进,有的会问业界其他同类型问题的解决方案。
  • 故障的处理。

三、软实力

软件开发过程中其实软实力也是不可或缺的一部分。当然,不是每个面试官都会直接问的。同样一个问题,有的应聘者可以描述清楚有的人并不能。

  • 问题发现&处理能力&持续优化能力。
  • 方案推进,因为需要团队协作。
  • 沟通能力。

写在最后

如果你偶然看到这篇文章,我会劝你积累在平时,业务与技术并重。如果你在找工作,我会告诉你临阵磨枪很重要。

我的心路历程,承受了几次打击,后来利用周末迅速调整状态,逐渐转好。失败的原因有个人也有公司的原因。个人准备不充分,有的公司年底并不打算实际招人。另外,面试过程中面过小厂也面过大厂,遇到过如浴春风的面试官也遇到过高高在上的面试官,过与不过保持平常心,不卑不亢。

加油!未来一定会更好!

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值