携程Java三面面经,已拿 offer!!
分享一位读者投稿的携程校招 Java 岗位的面经。
下面是正文。
个人背景:双非本,机械专业转码。
携程在正式面试之前,会有一个性格测试(40分钟)。性格测试之后,大概过一周进行笔试。笔试之后,会邮件通知是否通过并预约第一轮面试时间。
普通 offer 一般只有两面,如果是 sp 或者 ssp 的话,技术面貌似是三面。
携程的面试难度一般,效率比较高,面试体验还是不错的。
一面(45min)
主要是问八股,难度较低。
- 自我介绍;
- 进程和线程的区别;
- 并行和并发的区别;
synchronized的作用;synchronized和ReentrantLock的区别,如何选择;ThreadLocal使用过程中可能存在的问题(内存泄露);ThreadLocal内存泄露问题是怎么导致的;- 项目中是如何创建线程池的,什么不用
Executors去创建线程池; - 知道的本地缓存,选择 Caffeine 的原因;
- Redis 这类缓存和 Caffeine 的区别;
- Redis 中常见的数据结构,应用场景;
- 缓存穿透和缓存雪崩的区别,解决办法;
- MySQL 和 Redis 怎么保持数据一致;
- 一个 SQL 笔试题,join 多表查询(共享屏幕)。
答案:
- Java 并发常见面试题总结(上)、Java 并发常见面试题总结(中)、Java 并发常见面试题总结(下)
- Java高性能缓存库- Caffeine - 风之筝
- 缓存基础常见面试题总结(付费)
- Redis常见面试题总结(上)、Redis常见面试题总结(下)
- SQL常见面试题总结
二面(50min)
二面主要还是八股。
- 自我介绍;
- 使用多线程可能存在的问题;
- 线程池原理;
- 聊聊
ThreadLocal(概念+一些应用举例+常见的内存泄漏问题); - JVM 内存模型和垃圾回收;
- 用到过内存分析工具吗;
- 使用索引能带来什么好处,你项目中是怎么使用的;
- 索引底层常见的数据结构,MyISAM 引擎和 InnoDB 引擎用的是哪种;
- 聚簇索引和非聚簇索引;
- 最左前缀匹配原则;
- 造成索引失效的常见原因你知道那些,项目中遇到过索引失效问题吗;
- 如果有一条 SQL 语句执行的很慢,如何进行优化;
- 项目中是如何使用 ES的;
- ES 检索比较快的原因,为什么 MySQL 不行;
- 讲一下倒排索引;
- 手写一个生产者消费者队列;
- 反问。
答案:
- Java 并发常见面试题总结(上)
- Java 并发常见面试题总结(下)
- Java 内存区域详解、JVM 垃圾回收详解
- Java内存分析相关工具
- MySQL索引详解
- MySQL执行计划分析
- Elasticsearch常见面试题总结(付费)
HR面
- 个人的基本信息;
- 对携程的了解;
- 三个词形容自己;
- 手里还有哪些 offer;
- 平时的兴趣爱好;
- 选择工作的理由排序(薪资、加班情况之类的)。
英语测评
HR 面之后,还会有一个英语测评,题目比较多,对英语不好的同学不太友好。题型大概是阅读、演讲、听力这些。
不过,也不用担心,应该不太会因为英语测评的表现刷掉你,但英语测评还是可能会对你的面试评价造成影响,能做好还是要尽量做到最好。
携程Java三面面经,已拿 offer!!的更多相关文章
- 携程Java后台开发三面面经
前言 携程是我面试的第一个互联网公司,投递的岗位是后台开发实习生,总共面了三面,止步于人才库.中间兜兜转转,复杂的心理活动,不足与外人道也.唯有面试的技术部分与大家共享. 宣讲会完了之后有个手写代码的 ...
- Java程序员备战“金九银十”必备的面试技巧(附携程Java岗面试题)
一.面试前的准备 1.1 如何准备一场面试1.1.1 如何获取大厂面试机会1.1.2 面试必知 ①. 准备介绍自己 ②. 关于着装 ③ .随身带上自己的成绩单和简历 ④. 如果笔试就提前刷一些笔试题 ...
- 最新 携程java校招面经 (含整理过的面试题大全)
从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.携程等10家互联网公司的校招Offer,因为某些自身原因最终选择了携程.6.7月主要是做系统复习.项目复盘.LeetCode ...
- 最近很火的携程Java 工程师的一道面向对象面试题
最近这道面试题,传遍程序员各大小园地,本小白特摘抄整理与大家一起学习: 原题: package com.gxlee; public class Base { private String baseNa ...
- 携程Java工程师——一道面向对象面试选择题(转)
public class Base { private String baseName = "base"; public Base() { callName(); } public ...
- 美团实习Java岗面经,已拿offer
作者:icysnowgx 链接:https://www.nowcoder.com/discuss/71954?type=2&order=3&pos=10&page=1 来源:牛 ...
- 新鲜出炉!阿里Java后端面经,已拿offer!
前面给大家分享了一篇字节跳动拿下offer的面经,很多小伙伴都私信我说收获很大,感兴趣的朋友可以回头去看看.很多小伙伴还问我有没有其他大厂的面试题分享,这不他来啦,阿里2020春招面试题给大家整理在下 ...
- 携程二面:讲讲 MySQL 中的 WAL 策略和 CheckPoint 技术
前段时间我在准备暑期实习嘛,这是当时面携程的时候二面的一道问题,我一脸懵逼,赶紧道歉,不好意思不知道没了解过,面试官又解释说 redo log,我寻思着 redo log 我知道啊,WAL 是啥?给面 ...
- 携程实时大数据平台演进:1/3 Storm应用已迁到JStorm
携程大数据平台负责人张翼分享携程的实时大数据平台的迭代,按照时间线介绍采用的技术以及踩过的坑.携程最初基于稳定和成熟度选择了Storm+Kafka,解决了数据共享.资源控制.监控告警.依赖管理等问题之 ...
- 敏捷之旅--携程Scrum Master 新官上任三把火?
随着敏捷在国内的推行,越来越多的公司和组织开始使用敏捷领导团队. 敏捷团队如雨后春笋之势涌现. 敏捷教练的团队也越来越壮大. 原先只需要一个敏捷教练就能搞定,但是随着团队越来越多,我们难免会将 ...
随机推荐
- pyshorteners 长短链接转换
import requests import pyshorteners as psn def long_to_short(url): url = psn.Shortener().chilpit.sho ...
- Java Socket Demo
服务端: package com.sux.demo; import java.io.*; import java.net.ServerSocket; import java.net.Socket; i ...
- 【C++】使用 curl 库配置 HTTP 的 Post/Get 请求响应数据(封装一个简单类)
2023.7.18 Update: [LibCurl]C++使用libcurl实现HTTP POST和GET 要想使用 LibCURL 库,首先需配置 CURL 库 参考链接:[C++开源库]Wind ...
- Spring 学习笔记(1)文章导读
<Spring 学习笔记>系列文章是博主在学习过 Spring 后对其进行总结的入门系列博文,适合初入 Spring 的小白,如果你最近正在学习或者打算学习 Spring 的话,不妨随着本 ...
- 【每日一题】23.Removal (计数DP)
补题链接:Here 计数DP讲解:Here 这是一个计数类的dp dp[i][j]表示前i个数字中,删除j个元素的方案数 很容易得到转移方程:\(f[i][j] = f[i - 1][j - 1] + ...
- vue权限管理
https://www.bilibili.com/video/BV1nq4y1i7BU/?spm_id_from=333.788.recommend_more_video.6&vd_sourc ...
- ES5新增语法
ES5中给我们新增了一些方法,可以很方便的操作数组或者字符串,这些方法主要包括:数组方法.字符串方法.对象方法. 1. 数组方法 迭代(遍历)方法:forEach() .map().filter(). ...
- [工程开发]当我们写一个tcp服务端的时候,我们在写什么?(一)
当我们写一个tcp服务器和客户端的时候,我们在写什么?(一) 本篇只聊服务端. 最近想搞一个服务器的协议,然后捏,简单搓个tcp服务器协议看看效果,主要是最近实在是没事干,闲得没事搓个服务器看看,当然 ...
- [Qt开发/毕业设计/求职项目]局域网环境下远程文件发送部署系统-服务端、客户端双端的讲解
写在前面 本文旨在做一个简单的代码讲解,我会给出源码,然后整个代码的讲解都在源码的基础上进行. 代码可能会随着更新而进行修改,但是整体框架变化不会太大. 整个文章内容不会太多,算是我自己的一个复盘,整 ...
- C#单向链表的实现
节点 public class ListNode { public ListNode(int NewValue) { Value = NewValue; } //前一个 public ListNode ...