面试杂谈

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

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

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

离职完第二天就去参加了一个面试,因为离职前就开始准备自己的简历了,在拉勾更新了下自己的履历,收到了很多面试邀请,当然很大一部分都是些不知名的小公司,除此之外自己也投了一些看起来不错的公司,离职那天下午下班刚走出公司就接到了一家公司 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 引用 • 8208 回帖 • 1 关注
  • 面试

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

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

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

    284 引用 • 248 回帖 • 122 关注

相关帖子

13 回帖

欢迎来到这里!

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

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

    这家不是互联网公司吧

  • 其他回帖
  • abners
    作者

    @Vanessa 好了,原文就是 markdown 写的,只是发布的时候直接从博客上粘的,刚才从原文中挪过来了

  • abners
    作者

    @Vanessa 我重新编辑一下

  • yangyujiao

    问的我一个不会,虽然都听说过。但是一个也不会解答。。。

  • 查看全部回帖

推荐标签 标签

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    20163 引用 • 77793 回帖
  • Flume

    Flume 是一套分布式的、可靠的,可用于有效地收集、聚合和搬运大量日志数据的服务架构。

    9 引用 • 6 回帖 • 613 关注
  • Windows

    Microsoft Windows 是美国微软公司研发的一套操作系统,它问世于 1985 年,起初仅仅是 Microsoft-DOS 模拟环境,后续的系统版本由于微软不断的更新升级,不但易用,也慢慢的成为家家户户人们最喜爱的操作系统。

    216 引用 • 463 回帖
  • CloudFoundry

    Cloud Foundry 是 VMware 推出的业界第一个开源 PaaS 云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。

    5 引用 • 18 回帖 • 149 关注
  • flomo

    flomo 是新一代 「卡片笔记」 ,专注在碎片化时代,促进你的记录,帮你积累更多知识资产。

    4 引用 • 91 回帖
  • 以太坊

    以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约、开源的底层系统。以太坊是一个平台和一种编程语言 Solidity,使开发人员能够建立和发布下一代去中心化应用。 以太坊可以用来编程、分散、担保和交易任何事物:投票、域名、金融交易所、众筹、公司管理、合同和知识产权等等。

    34 引用 • 367 回帖 • 2 关注
  • 音乐

    你听到信仰的声音了么?

    60 引用 • 510 回帖
  • Webswing

    Webswing 是一个能将任何 Swing 应用通过纯 HTML5 运行在浏览器中的 Web 服务器,详细介绍请看 将 Java Swing 应用变成 Web 应用

    1 引用 • 15 回帖 • 623 关注
  • Telegram

    Telegram 是一个非盈利性、基于云端的即时消息服务。它提供了支持各大操作系统平台的开源的客户端,也提供了很多强大的 APIs 给开发者创建自己的客户端和机器人。

    5 引用 • 35 回帖
  • SQLite

    SQLite 是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是全世界使用最为广泛的数据库引擎。

    4 引用 • 7 回帖
  • 新人

    让我们欢迎这对新人。哦,不好意思说错了,让我们欢迎这位新人!
    新手上路,请谨慎驾驶!

    51 引用 • 226 回帖
  • iOS

    iOS 是由苹果公司开发的移动操作系统,最早于 2007 年 1 月 9 日的 Macworld 大会上公布这个系统,最初是设计给 iPhone 使用的,后来陆续套用到 iPod touch、iPad 以及 Apple TV 等产品上。iOS 与苹果的 Mac OS X 操作系统一样,属于类 Unix 的商业操作系统。

    84 引用 • 139 回帖 • 1 关注
  • SpaceVim

    SpaceVim 是一个社区驱动的模块化 vim/neovim 配置集合,以模块的方式组织管理插件以
    及相关配置,为不同的语言开发量身定制了相关的开发模块,该模块提供代码自动补全,
    语法检查、格式化、调试、REPL 等特性。用户仅需载入相关语言的模块即可得到一个开箱
    即用的 Vim-IDE。

    3 引用 • 31 回帖 • 82 关注
  • Flutter

    Flutter 是谷歌的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面。 Flutter 可以与现有的代码一起工作,它正在被越来越多的开发者和组织使用,并且 Flutter 是完全免费、开源的。

    39 引用 • 92 回帖
  • SMTP

    SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。

    4 引用 • 18 回帖 • 609 关注
  • 机器学习

    机器学习(Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

    76 引用 • 37 回帖
  • 星云链

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

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

    Oracle(甲骨文)公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989 年正式进入中国市场。2013 年,甲骨文已超越 IBM,成为继 Microsoft 后全球第二大软件公司。

    103 引用 • 126 回帖 • 443 关注
  • 招聘

    哪里都缺人,哪里都不缺人。

    189 引用 • 1056 回帖
  • 996
    13 引用 • 200 回帖 • 6 关注
  • FlowUs

    FlowUs.息流 个人及团队的新一代生产力工具。

    让复杂的信息管理更轻松、自由、充满创意。

    1 引用
  • 黑曜石

    黑曜石是一款强大的知识库工具,支持本地 Markdown 文件编辑,支持双向链接和关系图。

    A second brain, for you, forever.

    10 引用 • 88 回帖
  • 脑图

    脑图又叫思维导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具。

    21 引用 • 58 回帖
  • JetBrains

    JetBrains 是一家捷克的软件开发公司,该公司位于捷克的布拉格,并在俄国的圣彼得堡及美国麻州波士顿都设有办公室,该公司最为人所熟知的产品是 Java 编程语言开发撰写时所用的集成开发环境:IntelliJ IDEA

    18 引用 • 54 回帖
  • Ngui

    Ngui 是一个 GUI 的排版显示引擎和跨平台的 GUI 应用程序开发框架,基于
    Node.js / OpenGL。目标是在此基础上开发 GUI 应用程序可拥有开发 WEB 应用般简单与速度同时兼顾 Native 应用程序的性能与体验。

    7 引用 • 9 回帖 • 364 关注
  • ZeroNet

    ZeroNet 是一个基于比特币加密技术和 BT 网络技术的去中心化的、开放开源的网络和交流系统。

    1 引用 • 21 回帖 • 609 关注
  • 正则表达式

    正则表达式(Regular Expression)使用单个字符串来描述、匹配一系列遵循某个句法规则的字符串。

    31 引用 • 94 回帖