一位程序员妹纸讲述她是如何拿到美团offer的?

2023-05-16

640?wx_fmt=jpeg

作者:只爱羽毛球的程序媛

来源:http://t.cn/EaXy17r

美团,我是在拉勾网上投的简历,之前也投过一次,简历都没通过删选,后来让学姐帮我改了一下简历,重新投另一个部门,获得了面试机会。 10月23日,中午HR打电话过来预约了下午4点半面试,说会在线写代码,让我准备好网络环境。 结果5点半还没打电话过来,被放鸽子。 与hr重新沟通过后,确定下周一下午再面,可是跟hr沟通预约这一套貌似在美团并没有什么用。

一面(20分钟)

晚7点,因为想到下周一才面试,我刚准备出去打个羽毛球,北京的电话就来了。 面试官各种抱歉,说开会拖延了。

1、自我介绍 
说了很多遍了,很流畅捡重点介绍完。

2、问我数据结构算法好不好  
挺好的(其实心还是有点虚,不过最近刷了很多题也只能壮着胆子充胖子了) 。

3、找到单链表的三等分点,如果单链表是有环的呢 
用快慢指针,一个走一步,一个走三步。 如果有环,先判断环在哪,找最后一个节点,然后用之前的无环的做法。

4、讲一下项目的架构 
我重点讲了MVC。

5、说一下你熟悉的设计模式 
我重点讲了单例、工厂方法、代理 。

6、有没有配置过服务器啥啥啥 
这个我真不知道,都没听过呢,只能诚实说没有,毕竟都没法扯。

一面挺匆忙的,我估计面试官刚开完会还没吃饭呢。 他说让我等,可能再找一个同事面我,可能就直接告诉我结果了。 从一面面试官的声音和口吻,我判断他一定是个部门老大,问的设计偏多,后面hr告诉我他就是我要去的部门的老大。 哈哈。

二面(60分钟)

面完一面正准备出去打羽毛球,北京的电话又来了。 (注定这周五参加不了球队活动了! )

二面: 跟一面比起来,二面面试官的声音听起来就像是搞技术开发的,果不其然,一个小时的纯技术电话面试! 面的特别全面!

1、Spring: 有没有用过Spring,Spring IOC、AOP机制与实现,Spring MVC

其实我挺不想被问到Spring的细节的,框架这些我都没有复习不太记得了。 所以我对面试官说Spring里面的一些比较重要的机制我理解的还不错,然后我用一个实际的例子把我对IOC、AOP理解讲了一下,他听了说对,理解的不错(难得遇到一个边面试边能给反馈的面试官,好开心)。

Spring MVC其实我用过,我就对面试官讲了我的项目中用到的Servlet,jsp和javabean实现的MVC,以及MVC各个模块职责以及每个模块是怎么联系到一起的,最后我补充了一句我想SpringMVC的思想其实跟这个是一样的(他说对的,嘿嘿有反馈真好) 。

2、多线程: 怎么实现线程安全,各个实现方法有什么区别,volatile关键字的使用,可重入锁的理解,Synchronized是不是可重入锁

这里我就主要讲了Synchronized关键字,还有并发包下面的一些锁,以及各自的优缺点和区别。 volatile关键字我主要从可见性、原子性和禁止JVM指令重排序三个方面讲的,再讲了一下我在多线程的单例模式double-check中用到volatile关键字禁止JVM指令重排优化。

3、集合: HashMap底层实现,怎么实现HashMap线程安全

我讲了一下HashMap底层是数组加单链表实现,Node内部类,add的过程,Hash冲突解决办法,扩容,三种集合视图。 HashMap线程安全的实现方式主要讲了HashTable、ConcurrentHashMap以及Collections中的静态方法SynchronizedMap可以对HashMap进行封装。 以及这三种方式的区别,效率表现。

4、JVM内存管理,GC算法,HotSpot里面的垃圾回收器、类加载 

JVM内存主要分为五个区,哪些是线程共享的,哪些是线程独享的,每个区存放什么。 GC方面: 怎么判断哪些对象需要被GC,GC的方法,Minor GC与Full GC。 HotSpot GC算法以及7种垃圾回收期,主要讲了CMS和G1收集器。 类加载: 类加载的过程,Bootstrap classloader-ExtClassloader-AppClassloader,父类委托机制。

5、进程和线程的区别 

从调度、并发性、拥有的资源和系统开销四个方面回答的。

6、HTTP有没有状态,我说无状态,怎么解决HTTP无状态 

怎么解决HTTP无状态其实就是怎么进行会话跟踪,有四种方法: URL重写、隐藏表单域、Cookie、Session。

7、Java IO,NIO,Java中有没有实现异步IO 

Java IO实现的是同步阻塞,它是怎么实现同步阻塞的。 我拿了read()方法举例来讲的。 NIO实现的是同步非阻塞,我详细讲了一下Selector中的select()方法轮询说明它是如何实现多路复用IO的。 然后对比了一下他们的效率。 面试官可能看我对这一块比较了解,又继续问我Java中有没有实现异步IO,我感觉好像没有,但面试官说有,让我想想,其实这里我并不清楚啦,所以我就对面试官讲了一下我对Unix中异步IO模型的理解,然后说至于Java里面有没有我真的不太清楚。 (他居然笑了! 说你理解是对的,Java里面有没有不重要! 哈哈)

8、前端会不会,Ajax是什么,Ajax实现原理 

前端我只是会用一些js而已,用过jquery框架,问我Ajax全称是啥,我猜是异步的js和xml。 Ajax实现原理其实我也不懂,我就只简单讲了一下它通过XMLHttpRequest对象进行异步查询,Ajax引擎在客户端运行,减少了服务器工作量。

9、让我设计一个线程池 

因为我简历中有写到我对多线程、并发这一块理解比较好。 所以他老问这方面的题。 这个问题因为我之前看过ThreadPoolExecutor的源代码,所以我就仿照那个类的设计思路来想的,详细讲了一下核心池、创建线程可以用工厂方法模式来进行设计、线程池状态、阻塞队列、拒绝策略这几个方面。 设计的还算比较周全。

10、讲几个设计模式,哪些地方用到了,为什么要用 

单例模式,jdk中的getRuntime(); 工厂方法模式,ThreadPoolExcutor用到ThreadFactory; 观察者模式: java.util包下面的Observable和Observer。 最后主要讲了一下工厂方法模式的使用场景。

11、Mysql优化、索引的实现  

我从数据库设计优化和查询优化两方面讲的。 索引B+树实现,InnoDB和MyISAM主键索引的实现区别,一个聚集一个非聚集。

12、事务的隔离级别 

四种隔离级别,可能会出现哪些异常,mysql中默认级别。

13、有没有用过Hibernate、mybatis、git 

这个简单讲一下就好,分别是干什么的。

14、Linux 

我说这个本科学过,但是很久没用,命令忘光了。 他说没事,考你几个简单的: cd、ls、dir(真的是简单的)。

15、算法题 

从10万个数中找最小的10个,时间复杂度分析(最大堆,考虑内存) 。

从一个有正有负数组中找连续子数组的最大和,时间复杂度分析(动态规划) 
满二叉树第i层有多少个节点,n层的满二叉树共有多少个节点。

终于到我提问环节了:

1、你们是什么部门(他说是核心部门,大数据研发) 。

2、我对高并发和负载均衡挺有兴趣的,但是我平时在学校也没有这个环境让我在这方面有所体验,那你建议我目前可以怎么学呢(他说这确实是不太好学,只能看些理论和别人的博客,以后工作中才能慢慢学) 。

3、中间件具体是做什么的,是解决高并发和负载均衡吗(他说差不多是的,然后他说我们这个部门不是中间件,是大数据部门啊,我说恩我知道) 。

最后没啥问题了,他让我保持电话畅通。

这一面面完,口干舌燥,我一度怀疑他可能不知道我是在应聘实习生的岗位。 有太多要总结的了,放在总结的地方一起讲吧。

三面(25分钟)

面试官说是他是另外一个部门的,需要进行交叉面试。

1、MySql优化 。

2、说下项目做了些什么,架构之类的。

3、在collabedit上在线写代码,题目很简单是编程之美上的原题,一个有序的整数数组,输出两个数,使它们的和为某个给定的值。之前做过很快写好,然后给他讲思路。他继续问如果数组无序怎么办,先排序。

4、两个文件,每个文件中都有若干个url,找出两个文件中相同的url(用HashMap) 

这一面挺简单的,只是增加之前面试没有过的在线写代码环节,collabedit后来我才了解,像facebook一些互联网公司远程面试都会用这个在线编辑器写代码,就是文本文档写,没有提示,不能编译运行,跟白板写一样。平时练练手就好。

HR四面(30分钟)

三面面试官说他那就是终面,说我过了等hr联系我。万万没想到半小时后的hr面居然也是技术。

1、自我介绍,都四面了还自我介绍?!我还以为是单纯的hr面,所以介绍的都是我的性格和生活方面的,结果并不是。

2、问项目,问的特别特别细,技术细节,还有遇到什么问题,怎么解决的,做项目有没有人带,怎么跟别人沟通的。

3、数据库优化,如果数据库一个表特别大怎么办 

数据库优化我就讲了之前讲过很多遍的点,他问一个表特别大怎么办:大表分小表,怎么实现:使用分区表。

4、问研究生的科研题目,为什么选这个题,看了一些什么论文(细到问我那些论文是发表在什么期刊上的,作者是哪所学校的),为什么要选这个算法,怎么优化的,实验结果怎么跟别人作对比的,为什么比别人的算法好(一个个问题不断砸过来,我猜我说的那些专业名词他应该不太懂,只是判断一下是不是我做的而已。。)

5、确定实习时间 

这一面确实让我感到有压迫感,项目是本科做的,挺久了,一些技术细节上也没太总结,所以问细了我只能连想带编,嘿嘿。科研方面倒还好,上个学期都在弄这个,一些算法的实现和改进、对比都还记得比较清楚,回答的挺流畅的,可能这真的就是技术型的hr面吧。

好累,我不想再找实习了,不得不说美团的实习生面试跟正式校招拿offer一样隆重,被面四面下来,好累,这个部门也挺好我很满意,所以我不想再继续找了。 到目前为止,Java基础、数据库、计算机网络、操作系统复习也都全面结束了。 现在每天刷刷题,保持就好。 接下来准备看看Tomcat源码,要进入新的阶段了,这里不是终点,加油。

正文结束

推荐阅读 ↓↓↓

1.

2.

3.

4.

5.

6.

7.

8.

640?wx_fmt=png

一个人学习、工作很迷茫?

点击「阅读原文」加入我们的小圈子!

640?wx_fmt=gif

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

一位程序员妹纸讲述她是如何拿到美团offer的? 的相关文章

  • 剑指 Offer 03. 数组中重复的数字--详解

    找出数组中重复的数字 在一个长度为 n 的数组 nums 里的所有数字都在 0 xff5e n 1 的范围内 数组中某些数字是重复的 xff0c 但不知道有几个数字重复了 xff0c 也不知道每个数字重复了几次 请找出数组中任意一个重复的数
  • 【剑指offer系列】剑指offer 03-06

    这次我们来讲解剑指offer的全部题目 xff0c 今天是第一天 xff0c 我们来讲解第三题到第六题 xff08 我也不清楚为什么力扣上查不到第一题和第二题 xff09 一 剑指offer 03 题目链接 xff1a 力扣 题目描述 xf
  • 一位程序员妹纸讲述她是如何拿到美团offer的?

    作者 xff1a 只爱羽毛球的程序媛 来源 xff1a http t cn EaXy17r 美团 xff0c 我是在拉勾网上投的简历 xff0c 之前也投过一次 xff0c 简历都没通过删选 xff0c 后来让学姐帮我改了一下简历 xff0
  • 我阿里P7了解到的Android面试的一些小内幕!已拿offer

    前言 这些题目是网友去百度 小米 乐视 美团 58 猎豹 360 新浪 搜狐等一线互联网公司面试被问到的题目 熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率 欢迎一线公司员工以及网友提交面试题库 xff0c 欢迎留言 网上的都是按
  • 【剑指offer】数字在排序数组中出现的次数

    统计一个数字在排序数组中出现的次数 解题思路 xff1a 遍历查找不是本题的最优解 xff0c 既然给出的是有序数组 xff0c 所以我们只需要找到目标的左侧和右侧的索引即可 所以我们可以找到本数组当中key 43 0 5和key 0 5的
  • 【剑指offer】链表找环的入口

    给一个链表 xff0c 若其中包含环 xff0c 请找出该链表的环的入口结点 xff0c 否则 xff0c 输出null 解题思路 xff1a 在链表判环的基础上进行优化 追击问题 xff0c 一快一慢可以再环中相遇 p1 61 p1 ne
  • Permutation 排列组合,主要是字符串的排列offer上的题目,还有leetcode的组合

    一个简洁版的结果过程说明 xff0c 固定一个位 xff0c 变换其他位 a b c d a b d c a c b d a c d b a d c b a d b c void perm char list int i int n int
  • [剑指offer] 连续子数组最大和

    题目 xff1a 对于一个有正有负的整数数组 xff0c 请找出总和最大的连续数列 给定一个 span class hljs keyword int span 数组A和数组大小n xff0c 请返回最大的连续数列的和 1 思路 xff1a
  • 【树】剑指 Offer 55 - I. 二叉树的深度

    题目 输入一棵二叉树的根节点 xff0c 求该树的深度 从根节点到叶节点依次经过的节点 xff08 含根 叶节点 xff09 形成树的一条路径 xff0c 最长路径的长度为树的深度 例如 xff1a 给定二叉树 span class tok
  • 【二叉树】剑指offer 77 按之字形顺序打印二叉树

    描述 给定一个二叉树 xff0c 返回该二叉树的之字形层序遍历 xff0c xff08 第一层从左向右 xff0c 下一层从右向左 xff0c 一直这样交替 xff09 输出 1 3 2 4 5 栈解法 用两个栈来存奇数层和偶数层的节点 x
  • 【二叉树】剑指offer 8 二叉树的下一个结点

    描述 给定一个二叉树其中的一个结点 xff0c 请找出中序遍历顺序的下一个结点并且返回 注意 xff0c 树中的结点不仅包含左右子结点 xff0c 同时包含指向父结点的next指针 下图为一棵有9个节点的二叉树 树中从父节点指向子节点的指针
  • 【剑指offer】数组中重复的数字

    解法1 重排序法 抓住题目中的特点 xff0c 由于数组的所有数字都在0 n 1范围内 xff0c 所以数据的范围和下标的范围是一样的 线性扫描数组 xff0c 将扫描到的数放到它对应的下标位置上 若对应位置上已经有这个数则可以判断这是一个
  • 【剑指offer】二叉搜索树的第k个节点

    利用二叉搜索树的特点 xff0c 左边节点的值 lt 中间节点的值 lt 右边节点的值 xff0c 对二叉树进行中序遍历即可 通过res保存值 xff0c count记录遍历了多少个 中序遍历是在中间输出节点 xff0c 所以count在中
  • day4: 剑指 Offer 64. 求1+2+…+n

    剑指 Offer 64 求1 43 2 43 43 n 求 1 43 2 43 43 n xff0c 要求不能使用乘除法 for while if else switch case等关键字及条件判断语句 xff08 A B C xff09
  • java银行面试题目及答案,顺利拿到offer

    二 常见的并发问题 1 脏读 一个事务读取了另一个事务未提交的数据 2 不可重复读 一个事务对同一数据的读取结果前后不一致 两次读取中间被其他事务修改了 3 幻读 幻读是指事务读取某个范围的数据时 xff0c 因为其他事务的操作导致前后两次
  • 一份还热乎的蚂蚁金服面经(已拿Offer)!附答案!!

    本文转自 xff1a https mp weixin qq com s MzmdxqukOZ6rUta9nkGGw 本文来自我的知识星球的球友投稿 xff0c 他在最近的校招中拿到了蚂蚁金服的实习生Offer xff0c 整体思路和面试题目
  • 有了这份程序员面试指南,你离大厂Offer还远吗?| 附推荐书籍

    点击上方蓝色字体 xff0c 关注我 一个在阿里云打工的清华学渣 图by 石头 64 长白山 关于作者 xff1a 程序猿石头 ID tangleithu xff0c 现任阿里巴巴技术专家 xff0c 清华学渣 xff0c 前大疆后端 Le
  • 剑指offer T8跳台阶

    由推导可知 xff0c 递推公式为 f n 61 f n 1 43 f n 2 迭代法 xff1a 递归 xff1a 递归优化 xff08 保存结果 xff0c 剪枝 xff09 xff1a 转载于 https www cnblogs co
  • 一位程序员妹纸讲述她是如何拿到美团offer的?

    作者 xff1a 只爱羽毛球的程序媛 来源 xff1a http t cn EaXy17r 美团 xff0c 我是在拉勾网上投的简历 xff0c 之前也投过一次 xff0c 简历都没通过删选 xff0c 后来让学姐帮我改了一下简历 xff0
  • 裸辞3个月扛不住后,随便接了offer更惨!

    最近发现年底找工作的人不少 xff0c 部门里就2个hc xff0c 一周能收2000 43 简历 xff0c 这比例有点 过分 了 虽说大部分是年底先看看机会试试水 xff0c 准备年后冲击的 xff0c 但看简历里也有不少中间裸辞的 x

随机推荐

  • EXCEL 2016常用知识--Excel基础操作

    从数据填充开始讲起 xff0c 介绍Excel内置各种功能 xff0c 如筛选 查询 粘贴 单元格类型等 excel 窗口组成介绍 xff1a 1 快速访问工具栏 xff1a 添加你常用的命令 xff0c 方便我们快速操作和访问 xff1b
  • vue安装scss时报The “path“ argument must be of type string. Received undefined

    在安装vue安装scss时报The path argument must be of type string Received undefined 解决方式 xff1a 这个错误是sass loader 版本造成的 xff0c 此时的版本是
  • 利用python语言制作简单的音乐播放器

    from tkinter import from tkinter import filedialog from pygame locals import import time import pygame import sys pygame
  • 支撑程序员的三种精神

    我注意到有三种精神指引着软件开发人员的灵魂 伟大的艺术家精神 xff0c 可信赖的员工精神和自私的实用主义精神 伟大的艺术家精神 如果你听到一种声音说 你不能这样画 xff0c 然后 xff0c 你继续这样画 xff0c 这种反对的声音就会
  • 小白都懂的Python爬虫之网易云音乐下载

    微信又改版了 xff0c 为了方便第一时间看到我们的推送 xff0c 请按照下列操作 xff0c 设置 置顶 xff1a 点击上方蓝色字体 程序员之家 点击右上角 点击 设为星标 可以啦 xff0c 让我们继续相互陪伴 源 网络 目标 偶然
  • VBoxManage命令用法详解

    增加一个新的扩展包 VBoxManage extpack install lt vbox extpack gt 卸载指定扩展包 VBoxManage extpack uninstall lt name gt 显示已安装的扩展包 VBoxMa
  • Ubuntu2204之最小化安装操作系统

    目录 安装操作系统 xff08 跳过创建虚拟机 xff09 验证磁盘分区 配置静态IP 开启root登录 配置yum源 安装操作系统 xff08 跳过创建虚拟机 xff09 选择语言 xff1a 英语 下一步 默认安装ubuntu serv
  • 大数据领域三个大的技术方向资料

    大数据领域三个大的技术方向 xff1a 1 Hadoop大数据开发方向 2 数据挖掘 数据分析 amp 机器学习方向 3 大数据运维 amp 云计算方向 大数据学习什么 Python xff1a Python 的排名从去年开始就借助人工智能
  • 【技术栈】Spring环境配置

    1 创建maven环境 2 导入包 lt https mvnrepository com artifact org springframework spring webmvc gt lt dependency gt lt groupId g
  • mysql授权语句说明grant all privileges、创建用户、删除用户

    mysql的赋权语句 xff1a grant all privileges on to 39 root 39 64 39 39 identified by 39 123456 39 with grant option all privile
  • 视频下载网址

    视频下载网址 小视频下载 http www downfi com video V视频助手 xff1a http v ranks xin Video Grabber https www videograbber net zh Eagleget
  • EXCEL 2016常用知识--Excel函数

    必备常用函数教学 xff0c 包括逻辑函数 查找函数 文本函数 数学函数等 1 Excel计算的两种方式 Excel计算的两种方式 xff1a 公式 xff1a 一些运算符和数值组成的数学表达式 函数 xff1a 是Excel内部设置好的运
  • 【VIM】VIM

    vim version 查看vim版本 输入vim进入 xff0c 默认状态下是normal 模式 xff0c 输入的是命令而不是文本 q 退出 q 强制退出 i 进入编辑状态 xff0c 光标前插入 a 进入编辑状态 xff0c 光标前插
  • Windows上获取cpu info, cpuid, cpu id 方法整理

    1 使用cmd获取cpu id 在 CMD中输入如下命令 xff1a wmic cpu get processorid 2 使用源代码编译获取 cpu id xff1a 借码 三个源代码文件 调试通过 原文链接1 原文链接2 get cpu
  • 八大排序算法、稳定性及时间复杂度

    什么是稳定性 xff1f 假定在待排序的记录序列中 xff0c 存在多个具有相同的关键字的记录 xff0c 若经过排序 xff0c 这些记录的相对次序保持不变 xff0c 即在原序列中 xff0c r i 61 r j xff0c 且r i
  • Ubuntu18.04与deepin+nvidia-docker的构建与踩坑+puppeteer在docker中的使用

    写在前面的废话 首先说什么docker xff0c 之前我啥也不知道 xff0c 大概了解 xff0c 就是一个集成环境 xff0c 然后可以带着这个跨越各种平台什么的 就这几天的使用来看 xff0c 差不多是的吧 xff0c 在使用上 x
  • 百度笔试题——开发测试工程师(深圳)

    题目大致意思 一 简答题 1 设计一个自动测试方案测试软件的MTTF xff08 平均无故障时间 xff09 2 线程有执行中 xff0c 就绪中 xff0c 等待中三个状态 xff0c 请描述着三个状态和之间的转换条件 3 数据库设计要满
  • axis入门

    axis入门很好的例子 http www iteye com topic 1119880
  • Gentoo 历程(1)在xfce4图形界面中隐藏窗口边框:devilspie

    OT xff1a 0 作为一个计算机系的学生 xff0c 注册CSDN帐号是个很正常的事 xff0c 但一直用来潜水看论坛以及下载东西 xff0c 最近开始折腾gentoo xff0c 觉得有必要找地方记录一下学到的知识 xff0c 想了想
  • 一位程序员妹纸讲述她是如何拿到美团offer的?

    作者 xff1a 只爱羽毛球的程序媛 来源 xff1a http t cn EaXy17r 美团 xff0c 我是在拉勾网上投的简历 xff0c 之前也投过一次 xff0c 简历都没通过删选 xff0c 后来让学姐帮我改了一下简历 xff0