面试杂谈

本贴最后更新于 2873 天前,其中的信息可能已经沧海桑田

几天前就写好了,我是来这里赚流量的,原文链接

从离职到现在差不到一周的时间,前前后后加起来总共参加了四个公司的面试,不算多,基本算的上每天一个吧,这篇文章是对我本次面试过程做的一个总结,给即将离职的三年左右经验的小伙伴做个参考。

离职完第二天就去参加了一个面试,因为离职前就开始准备自己的简历了,在拉勾更新了下自己的履历,收到了很多面试邀请,当然很大一部分都是些不知名的小公司,除此之外自己也投了一些看起来不错的公司,离职那天下午下班刚走出公司就接到了一家公司 HR 的面试邀请电话,约的是第二天下午 2 点面试。公司位于望京 SOHO,离我的居住地点不算太远,大概是 1 点半左右的时候到了面试地点(PS:面试的时候一定要赶早不赶晚,望京 SOHO 那边的环境还是挺不错的),扯得有点多了,下面进入正题,

  • 在这个公司一共进行了一轮笔试和两轮面试:

    1. 笔试题还算是挺简单的,但是也考查了一些比较细的知识点,比如类初始化时各种变量的初始化顺序,包括静态、实例变量,
      父子类构造方法;JVM 内存结构,堆、栈、方法区、本地方法区,程序计数器(可以的话最好将每个区的作用也写出来);
      Spring AOP 使用的设计模式,比较重要的大概就是这些了。

    2. 然后第二面就是项目负责人的面试,但是第二面基本没问什么技术方面的问题,基本都是业务方面的问题,
      这个就看个人发挥了,只要能把自己做过的东西清楚的讲出来就可以了。

    3. 讲一下 redis 的了解

  • 第二家公司的面试比较悲催,上来就是技术面试,由于是第一次参加技术类的面试,加上自己准备不够充足,第一轮聊完就被 pass 掉了,很多问题都是知道答案,但是回答不全,所以不要先投自己心仪的公司,先投一些其它公司练练手,找找感觉,否则很容易无法进入状态,下面是我能想起来的一些问题:

    1. Hiberate 有什么优缺点

    2. 讲一下 Spring AOP,AOP 的实现原理,如果能说出动态代理,紧接着就会问动态代理的实现原理,说一下 JDK 动态代理、
      CGLib 动态代理的实现原理就差不多了。

    3. Spring 依赖注入的方式有哪些,为什么要用依赖注入。

    4. 事务有哪些特点,事务隔离级别有哪些

    5. 悲观锁和乐观锁的区别,悲观锁正在事务开始时就会对要处理的数据加锁,直到事务提交才会释放,
      这种锁的并发效率比较低;乐观锁对其他事务持乐观状态,在事务开始时并不会对要处理的数据加锁,直到事务提交时才会加锁。

    能想起来的大概就是这些了,最后是面试官画了两张表,预定了一些数据,写了一个 left join 的 sql,让写一下结果。

  • 第三家公司是三轮面试,第一轮业务性的面试,之间也问了一些技术的问题,第二轮是技术面试,第三轮人事。

    1. 业务面试主要问了以下一些东西,讲一下由你主导实现的一些模块,讲完之后又问了下数据表是怎么设计的;看了下 github 上的部分代码,自己翻译的一些文章,讲一下对 redis 的了解,在工作中用过 redis 的哪些功能。
    2. 技术面试跟前两家类似,印象比较深刻的是 redis 的 hashmap 在 rehash 时是否可以进行插入?在这里卖个关子,小伙伴们自己了解一下 hashmap 的 rehash 的实现原理就明白可不可以了。

总结一下,投简历时先投一些自己想去的公司之外的公司,练练手,简历上不要写自己不熟悉的东西,因为简历上的任何一点在面试时都可能被问到。另外讲话时语速不要过快。写简历时好像有个 Star 法则,可以参考下。

  • 面经
    1 引用 • 21 回帖
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3169 引用 • 8207 回帖
  • 面试

    面试造航母,上班拧螺丝。多面试,少加班。

    324 引用 • 1395 回帖 • 1 关注
  • Redis

    Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。从 2010 年 3 月 15 日起,Redis 的开发工作由 VMware 主持。从 2013 年 5 月开始,Redis 的开发由 Pivotal 赞助。

    284 引用 • 247 回帖 • 164 关注

相关帖子

13 回帖

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...

推荐标签 标签

  • JVM

    JVM(Java Virtual Machine)Java 虚拟机是一个微型操作系统,有自己的硬件构架体系,还有相应的指令系统。能够识别 Java 独特的 .class 文件(字节码),能够将这些文件中的信息读取出来,使得 Java 程序只需要生成 Java 虚拟机上的字节码后就能在不同操作系统平台上进行运行。

    180 引用 • 120 回帖 • 3 关注
  • 友情链接

    确认过眼神后的灵魂连接,站在链在!

    24 引用 • 373 回帖 • 1 关注
  • 微信

    腾讯公司 2011 年 1 月 21 日推出的一款手机通讯软件。用户可以通过摇一摇、搜索号码、扫描二维码等添加好友和关注公众平台,同时可以将自己看到的精彩内容分享到微信朋友圈。

    129 引用 • 793 回帖
  • 职场

    找到自己的位置,萌新烦恼少。

    126 引用 • 1699 回帖
  • Solidity

    Solidity 是一种智能合约高级语言,运行在 [以太坊] 虚拟机(EVM)之上。它的语法接近于 JavaScript,是一种面向对象的语言。

    3 引用 • 18 回帖 • 355 关注
  • 电影

    这是一个不能说的秘密。

    120 引用 • 597 回帖 • 1 关注
  • 酷鸟浏览器

    安全 · 稳定 · 快速
    为跨境从业人员提供专业的跨境浏览器

    3 引用 • 59 回帖 • 21 关注
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    6678 引用 • 29942 回帖 • 242 关注
  • 一些有用的避坑指南。

    69 引用 • 93 回帖 • 2 关注
  • Caddy

    Caddy 是一款默认自动启用 HTTPS 的 HTTP/2 Web 服务器。

    10 引用 • 54 回帖 • 133 关注
  • Markdown

    Markdown 是一种轻量级标记语言,用户可使用纯文本编辑器来排版文档,最终通过 Markdown 引擎将文档转换为所需格式(比如 HTML、PDF 等)。

    165 引用 • 1461 回帖
  • 架构

    我们平时所说的“架构”主要是指软件架构,这是有关软件整体结构与组件的抽象描述,用于指导软件系统各个方面的设计。另外还有“业务架构”、“网络架构”、“硬件架构”等细分领域。

    140 引用 • 441 回帖
  • 互联网

    互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

    96 引用 • 330 回帖
  • 微服务

    微服务架构是一种架构模式,它提倡将单一应用划分成一组小的服务。服务之间互相协调,互相配合,为用户提供最终价值。每个服务运行在独立的进程中。服务于服务之间才用轻量级的通信机制互相沟通。每个服务都围绕着具体业务构建,能够被独立的部署。

    96 引用 • 155 回帖
  • Tomcat

    Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。

    162 引用 • 529 回帖
  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    164 引用 • 594 回帖 • 1 关注
  • 星云链

    星云链是一个开源公链,业内简单的将其称为区块链上的谷歌。其实它不仅仅是区块链搜索引擎,一个公链的所有功能,它基本都有,比如你可以用它来开发部署你的去中心化的 APP,你可以在上面编写智能合约,发送交易等等。3 分钟快速接入星云链 (NAS) 测试网

    3 引用 • 16 回帖 • 1 关注
  • TensorFlow

    TensorFlow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。

    20 引用 • 19 回帖 • 2 关注
  • 钉钉

    钉钉,专为中国企业打造的免费沟通协同多端平台, 阿里巴巴出品。

    15 引用 • 67 回帖 • 365 关注
  • 设计模式

    设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。

    198 引用 • 120 回帖
  • Mobi.css

    Mobi.css is a lightweight, flexible CSS framework that focus on mobile.

    1 引用 • 6 回帖 • 703 关注
  • 链滴

    链滴是一个记录生活的地方。

    记录生活,连接点滴

    133 引用 • 3655 回帖 • 2 关注
  • 阿里巴巴

    阿里巴巴网络技术有限公司(简称:阿里巴巴集团)是以曾担任英语教师的马云为首的 18 人,于 1999 年在中国杭州创立,他们相信互联网能够创造公平的竞争环境,让小企业通过创新与科技扩展业务,并在参与国内或全球市场竞争时处于更有利的位置。

    43 引用 • 221 回帖 • 231 关注
  • 导航

    各种网址链接、内容导航。

    37 引用 • 168 回帖 • 2 关注
  • Sublime

    Sublime Text 是一款可以用来写代码、写文章的文本编辑器。支持代码高亮、自动完成,还支持通过插件进行扩展。

    10 引用 • 5 回帖
  • CentOS

    CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise Linux 依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。两者的不同在于 CentOS 并不包含封闭源代码软件。

    238 引用 • 224 回帖
  • 区块链

    区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。

    91 引用 • 751 回帖