lz是非科班自学的java,毕业后进入卡中心,现在是2年开发经验。20年年初先后面了头条、拼多多和阿里(淘宝和支付宝),并成功拿到阿里和头条两家的offer。
 
面试前我主要是在牛客网看大家的面经进行查漏补缺,所以面试完后也想记录下来,权当给大家提供点信息吧。(面试过了一周了,记忆也有点混乱, 争取想到多少就记下来多少 )。
 
顺便提一下面试体验:头条 > 阿里 > pdd
拼多多最垃圾的面试体验,没有之一。我约的视频面,结果面试官说有事给我打电话面,然后给我一个文档,是一个算法。我在写算法的时候没察觉到电话信号不好断掉了。然后我回拨过去,面试官来了一句:你不要故意挂断电话去查答案。我%@#¥@#%@5,保持微笑解释信号不好。后来为了信号好一点我去阳台面试,冻的瑟瑟发抖,这个时候心态已经炸了,又冷又紧张,算法题有思路但是一直被这个人否定,最后挂了。
 
头条
 
最开始面的头条游戏中台,当时是第一次面试,没有经验,导致算法题虽然有思路,但是没有写出最优解,直接挂了。后来又被捞起来,因为此时已有阿里的offer,所以胆子也大起来了,收拾心情开始面头条。
 
头条的面试特点基本就是一个套路:【自我介绍】->【项目介绍】->【手撕算法】->【基础知识】,屡试不爽。
 
  • 自我介绍:我是xxx,来自xxx,毕业后在xxx几年,期间负责xxx。
  • 项目介绍:xxxxx。项目的时候面试官会问你难点和解决方案,同时会给你提出场景,问你更优化的思路。
  • 手撕算法:多刷题,也可以看看别人面过的算法题,可能会重复。
  • 基础知识:针对简历写的东西问,我被问的较多的是一些中间价,Redis、MySQL、Kafka、ElasticSearch,Java基本没问,因为头条这边使用Go。
 
一面
  1. Two Sum
  2. 给定m个不重复的字符 [a, b, c, d],以及一个长度为n的字符串tbcacbdata,问能否在这个字符串中找到一个长度为m的连续子串,使得这个子串刚好由上面m个字符组成,顺序无所谓,返回任意满足条件的一个子串的起始位置,未找到返回-1。比如上面这个例子,acbd,3。给定m个可能重复的字符[a, b, d, d]呢?
  3. 提供一个整型数组以及一个整数s,如果该数组中存在n个连续元素,且元素相加之和大于等于s,则返回满足该条件的连续元素的最小长度;否则返回0
  4. MySQL集群。假如集群出现延迟怎么处理。
  5. Redis的zset实现延时任务
  6. 设计题:如何设计tiny url
  7. 为什么要四次挥手
  8. HTTPS
第二天收到hr小姐姐的电话,约了面试时间。
二面
  1. 自我介绍
  2. 项目介绍
  3. K Group反转链表。写了栈和迭代两种实现方式,链表的题写起来真痛苦,很容易边界出错。
  4. Redis的持久化机制
  5. MySQL的隔离级别
  6. MySQL索引,聚簇索引和二级索引
  7. Redis高可用方案
  8. 介绍一些Kafka的一些概念
  9. Kafka如何保证消息有序 ...忘了
过了一天又收到hr小姐姐的电话,开心。
 
三面
  1. 自我介绍
  2. 项目介绍
  3. 第K大的数
  4. 设计题:秒杀系统
  5. MySql的索引优化
  6. HTTPS ...忘了
 
三面完了正好是周五,忐忑的等到了周一,以为挂了。结果下午收到hr加微信,约了hr面。
 
hr面
  1. 为啥离职,怎么想的
  2. 介绍项目
  3. 怎么和团队的人沟通,和成员出现冲突时怎么解决。
  4. 期望薪资,你现在的薪资
三个工作日收到了offer,头条面试体验还是很棒的。

 
 
找朋友内推的蚂蚁金融核心,结果第二天就被拒了,杭州淘宝给我来电话,说我被捞起来了。确认了一下,确实如此,那就面吧。
 
阿里
 
还是很想去阿里的,所以也很忐忑,淘宝一共经历了4轮技术+1轮笔试+hr面,流程很长,面的我压力山大。
阿里的面试特点:【自我介绍】->【项目介绍】->【场景解决】->【基础知识】,阿里面试除了基础以外,也很看重候选人的解决问题的思维。还是需要候选人有点积累的,假如你写的项目不是自己的,很容易就被问出来。
 
一面
  1. 自我介绍
  2. 项目难度介绍
  3. 如何实现延时任务
  4. 如何实现限流
  5. 线程池的参数
  6. 能不能自己实现一个java.lang.String并加载
  7. Redis为什么这么快
  8. epoll和poll的区别
  9. 进程同步的方式
 
二面
  1. MySQL的索引机制
  2. 如何自己实现内存分配和管理?不太懂,然后说了jvm的垃圾回收机制
  3. 你们公司内部的RPC框架,介绍一下
  4. Redis的key过期策略
  5. 缓存穿透和缓存雪崩
  6. 分布式锁
  7. 如何实现全局的id生成策略
  8. 悲观锁和乐观锁
  9. 红黑树了解么
 
三面
  1. 如何实现群消息已读
  2. 消息推送如何保证不重复
  3. Kafka如何保证消息的可靠性
  4. RPC是什么,和http调用有什么区别
  5. 说一说你项目的架构
  6. GC
  7. MySQL的索引原理,给了一个场景,如何优化 ...忘了
 
面完3面后居然又来了一个笔试题
笔试
  1. producer-consumer
  2. 两线程交替打印
  3. 多线程模拟100分钱随机分给20个人,每个人最少分配到2分钱
 
四面
  1. 写个producer-consumer吧,我说上次写过了。。傻了。。不该说的,然后面试官换了一道题,还好比较简单,写个二分查找,2分钟写完完事。
  2. 项目难点
  3. MVCC
  4. HTTPS
  5. ElasticSearch的查询过程
  6. Kafka如何保证高可用
  7. Reids的集群和选主
  8. 知道什么分布式一致性算法
  9. 如何实现定时关单 ...忘了
HR面
阿里的hr面真是让我难忘。
  1. 说说看,假如你是部门技术经理,线上商户数据丢失怎么办
  2. 怎么将一个产品推荐给其他的团队,怎么界定边界
  3. 怎么样协调关系 (我才2年啊喂,到这里我已经快冒汗了,生怕最后一关毙掉了)
  4. 你和同事相处的情况怎么样,说说你帮助同事的一次经历
  5. 薪资
阿里的面试流程很长,而且一个部门挂了以后,会被另一个部门捞起来,不停的面。总之来说,阿里的面试体验也还不错,就是经常被放鸽子。
支付宝的面试经验其实也大同小异,我就不贴了。

两年银行经验的阿里、头条社招面经分享(已拿offer)的更多相关文章

  1. 社招C++后台面试-拿到offer

    社招C++后台面试-拿到offer 之前在一家小公司上班,主要是做C语言的嵌入式软件开发,涉及过一点点C++.工作大概三年,然后去试试大公司,这个面试题是我拿到offer后4个月才拖拖拉拉的开始写,题 ...

  2. 朋友的一年工作经验跳槽字节跳动社招经历分享(已拿offer)

    虽然已经临近年末,但是还是萌生要看新机会的想法,主要的原因是觉得在目前的岗位上技术增长遇到的瓶颈,因此想去做一些更有挑战的工作.因为仍然准备继续在深圳工作,因此选定了三家公司,腾讯.字节跳动和 sho ...

  3. 阿里巴巴面试-Java后端-社招5面技术总结(Offer已拿)

    最近接到阿里妈妈的面试通知,历经一个月,虽然过程挺坎坷,但总算是拿到了offer.这里简单记录下面试所遇问题,仅供各位大佬参考. 由于前面两面的时间过去的有点久了,只能根据记忆大概写些记得问题. 部门 ...

  4. 回答阿里社招面试如何准备,顺便谈谈对于Java程序猿学习当中各个阶段的建议

    引言 其实本来真的没打算写这篇文章,主要是LZ得记忆力不是很好,不像一些记忆力强的人,面试完以后,几乎能把自己和面试官的对话都给记下来.LZ自己当初面试完以后,除了记住一些聊过的知识点以外,具体的内容 ...

  5. 如何准备阿里社招面试,顺谈 Java 程序员学习中各阶段的建议

    引言 其实本来真的没打算写这篇文章,主要是LZ得记忆力不是很好,不像一些记忆力强的人,面试完以后,几乎能把自己和面试官的对话都给记下来.LZ自己当初面试完以后,除了记住一些聊过的知识点以外,具体的内容 ...

  6. 聊聊阿里社招面试,谈谈“野生”Java程序员学习的道路

    引言 很尴尬的是,这个类型的文章其实之前笔者就写过,原文章里,笔者自称LZ(也就是楼主,有人说是老子的简写,笔者只想说,这位同学你站出来,保证不打死你,-_-),原文章名称叫做<回答阿里社招面试 ...

  7. 大厂面试过程复盘(微信/阿里/头条均拿offer,附答案篇)

    背景 本人前端,3年经验,由于个人的原因,决定跳槽,于是大概3月开始找工作,总历时大概2个月,面试了微信/阿里/头条,三家都拿到了offer,来分享一下面经. 问题比较多,而且很多面试题都是跟个人项目 ...

  8. 写在19年初的后端社招面试经历(两年经验): 蚂蚁 头条 PingCAP

    去年(18年)年底想出来看看机会,最后很幸运地拿到了 PingCAP,今日头条的 offer 以及蚂蚁金服的口头 offer.想着可以总结一下经验,分享一下自己这一段"骑驴找马"过 ...

  9. 【社招】来杭州吧,阿里国际UED招前端~~

    来杭州吧,阿里国际UED招前端~~ 依稀记得,几年前在北京的日子,两点一线的生活方式,似乎冲淡模糊了身边的一切,印象最深刻的莫过于北京的地铁站了吧(因为只有等地铁,搭地铁的时候,才能够停下脚步,静静地 ...

随机推荐

  1. gorm demo

    package main import ( "fmt" "github.com/jinzhu/gorm" _ "github.com/jinzhu/g ...

  2. Linux的CentOs系统查看CPU个数、核心数、线程数

    1.查看CPU物理个数 grep 'physical id' /proc/cpuinfo | sort -u | wc -l 或 cat /proc/cpuinfo| grep "physi ...

  3. 内存不够用还要速度快,终于找到可以基于 File 的 Cache 了

    一:背景 1. 讲故事 18年的时候在做纯内存项目的过程中遇到了这么一个问题,因为一些核心数据都是飘在内存中,所以内存空间对我们来说额外宝贵,但偏偏项目中有些数据需要缓存,比如说需要下钻的报表上的点, ...

  4. springboot整合druid监控配置

    方式一:直接引入druid 1.maven坐标 <dependency> <groupId>com.alibaba</groupId> <artifactId ...

  5. .NET 数据库事务的各种玩法进化

    事务是数据库系统中的重要概念,本文讲解作者从业 CRUD 十余载的事务多种使用方式总结. 以下所有内容都是针对单机事务而言,不涉及分布式事务相关的东西! 关于事务原理的讲解不针对具体的某个数据库实现, ...

  6. Java数据结构——树、二叉树的理论知识汇总

    通用树的理论知识 一.树的定义 由一个或多个(n>=0)节点组成的有限集合T,有且仅有一个节点称为根(root),当n>1时,其7余的节点为m(m>=0)个互不相交的有限集合T1,T ...

  7. Kubernetes入门(一)——Kubernetes v1.18.5 安装部署

    Kubernetes的安装有两种方式:一是使用各个厂商封装的Kubernetes发行版,优点是可以一键安装部署,操作简单,缺点也很明显,若安装过程中某一步骤出现问题,很难定位处理:二是使用官方提供的k ...

  8. Vue 开发技巧总结

    ​博客地址:https://ainyi.com/95 本人玩了 Vue 两年多,在此总结一下开发时的一些技巧和方法 自定义组件 v-model v-model 是 Vue 提供的一个语法糖,它本质上是 ...

  9. oeasy教您玩转linux010107那啥在哪 whereis

    回忆上次内容 上次讲了 ls 的参数 (arguement) 和选项 (option) 的设置. 现在我们要制作这样一个列表:

  10. observeParents的使用

    observeParents参数 是布尔类型  默认false 在tab切换选项中有轮播图,切换后轮播图就不播了,并且显示也出现了问题,就可以使用observeParents 用法为 <scri ...