写点什么
学习 MySQL 开源 云计算 行业资讯 算法 Python 人工智能 区块链 Linux 前端 个人成长 面试 架构师 编程 企业动态 新基建 敏捷 安全 读书笔记 高效工作 团队管理 创业 活动专区 生涯规划 知识管理 运维 产品经理 查看更多

双非渣本后端,三个月逆袭字节,入职那天“泪目”了

用户头像
Java架构师迁哥
关注
发布于: 2 小时前
双非渣本后端,三个月逆袭字节,入职那天“泪目”了

个人背景情况

2017 年毕业于一所不知名双非本科大学,毕业时就有着一颗想进大厂的心,但又想留在成都,不愿意去北上广,现在其实相当后悔。当年在成都的大厂少之又少,再加上校招时非常努力地玩耍,导致投的几个大厂面试都全部挂掉。也错失了进大厂最好的机会,所以我奉劝大三的同学如果对自己的职业有追求,有进大厂的梦想,在大三的时候一定要好好准备,在校招的时候拿 offer。

最后我在成都一家本地科技公司做了 Java 开发,中间也跳过一次槽,也是做的 Java。但这几年时间里总感觉公司能给的成长太慢,虽然自己也在学习,还是免不了焦虑,特别是像自己这种学历和公司背景都一般的程序员,要保证自己以后不被淘汰,必须得做点什么。所以在听到一个前同事被公司裁掉,最后进入大厂这个事情之后,彻底点燃了我心中想进大厂的那把火,我也准备内推试试字节跳动。

因为疫情原因,很多企业生存困难。我也保持了理智,没有辞职进行面试。而是给自己制定了学习计划,不得不说,在职的情况下复习确实很难,因为可能加班打乱计划。于是我把所有能利用的个人时间全部利用了起来,比如早上十点上班,我六点钟就会起床,刷两个小时 LeetCode,八点钟洗漱之后去上班。晚上如果有时间就会把早上刷过的题拿出来继续复习,花了两个月的时间,一边复习(预习)数据结构,一边做题,LeetCode 上面的高频题基本都过了一遍。花了那么多时间 刷题,都是因为自己 算法太菜,以前没有进行专门的练习。题做得差不多之后,就开始复习专业知识了,具体内容我都会总结出来。前前后后准备了三个月,我才敢进行内推,经历了八次面试之后,面试时间又持续三个月,皇天不负有心人,终于在这个月等到了 oc。

下面是面试内容,时间太久了,可能记得不太全,但基本上包含了所有问题,白天上班,我都是选择晚上进行面试,哈哈

一面 A 部门

  1. 讲 项目,串起来讲,可能遇到的问题,怎么解决,怎么实现,讲了发送客服消息

  2. Spring 里面的 bean 怎么回事

  3. HashMap 和 ConcurrentHashMap,HashMap 中的 红黑树,两者 rehash 的区别

  4. Mysql 的一致性是什么,数据库 redolog,undo log,MySQL 的索引结构,为什么二级索引叶子节点不能直接存储行数据的指针,这样可以不回表,怎么考虑的?

  5. redis里面的 zset,跳表怎么实现,怎么增删,

  6. redis是怎么 rehash 的

  7. 算法, 二叉树转双向 链表

二面 A 部门

  1. 自我介绍

  2. 再一次聊 项目,功能,架构,角色,量级

  3. Spring 里面有哪些设计模式

  4. SpringMVC 和 SpringBoot 有什么区别

  5. SpringBoot 的自动配置是怎么实现的

  6. 刚刚你说了线程池,你线程池是用的什么,参数有哪些,为什么这么设置

  7. 线程池核心线程满了怎么办,里面的阻塞队列是干什么的

  8. 说说 ThreadLocal 是什么

  9. CAP 理论知道吗,为什么不能同时满足

  10. Redis 里面的数据结构有什么场景

  11. Redis 怎么实现锁( redis锁的所有坑都说了一遍)

  12. 分布式事务知道吗,有哪些方案(说了 2PC,3PC,TCC,MQ)

  13. 算法题, 树的直径

  14. 有什么要问我的

三面 A 部门

  1. 介绍 项目

  2. 场景题,设计一个朋友圈,读 QPS 1000w,写 QPS 10w

  3. 算法题LFU

  4. 你有什么问题

这个面试官是个 leader,比较强势,很多细节回答的不是很好,所以脸色一直不好,给人压力较大,面完就觉得凉了。果然面完之后和前两次不一样,HR 那里就没有任何通知了,到这里还是很失落,准备了那么久,因为最后一面没表现好导致挂掉。之后等了一个月,这一个月没有任何消息,一个月过后又接到字节 HR 的电话,说我之前两面面评都不错,让我试试他们部门,我就同意了。

一面 B 部门

  1. 介绍 项目,细节

  2. 怎么做服务拆分,边界怎么划分的

  3. 分布式之后会遇到什么问题,CAP 的各个情况介绍一下

  4. dubbo 调用过程是怎样的,PB 知道吗

  5. thrift 了解过吗

  6. zk 介绍一下,有哪些节点类型,特点

  7. 怎么知道 项目中接口的重要性,怎么做监控,你说的自动化测试是怎么做到的(这个问题回答完,他笑了。。。)

  8. 你所理解的 SLA 是什么,要达到什么等级

  9. 说说你理解的 k8s

  10. nginx 的 upstream 是干什么的

  11. nginx 有哪些负载均衡策略

  12. 算法题:岛屿数量

  13. 你有什么问题要问我

二面 B 部门

  1. 介绍项目,细节

  2. 锁有哪些实现方式

  3. 分布式锁的实现方式

  4. JVM 的内存模型,垃圾回收算法

  5. MySQL 的事务介绍,ACID 的实现原理是什么(想问 MySQL 的日志)

  6. HashMap 的原理,其他线程安全的 Map

  7. Redis 的高可用,有哪些持久化方式

  8. Redis 的数据结构,线程模型

  9. 用过什么消息队列,有什么特点

  10. 怎么保证消息幂等消费

  11. docker 的网络模式

  12. 算法题: 比较版本号

  13. 提问

三面 B 部门(交叉面)

  1. 介绍 项目,细节

  2. Linux 的内存管理

  3. 浏览器打开一个网站的过程中会经历哪些网络处理,DNS 的具体过程是啥

  4. zk 是什么分布式模型(想问的 CAP 定理),主从怎么做选举

  5. zk 只有一个主节点,写性能不高,zk 怎么解决的

  6. etcd 或 consul 知道吗

  7. 多个服务中如何快速排查问题

  8. Redis 中的淘汰方式有哪些,Redis 性能高的原因是啥

  9. docker 的实现原理

  10. 算法题:相交 链表

四面 B 部门 (leader 面)

  1. 介绍 项目,细节

  2. 项目量级多大,QPS 最高的接口是怎么做的

  3. rpc 怎么实现服务发现

  4. zk 中的 watch 机制是怎么实现的

  5. 分布式锁有哪些实现,MySQL,zk,Redis 都说了一遍,并且分析了各自的优缺点,这个问题问的频率太高了

  6. 怎么提高数据库读写性能

  7. k8s 了解吗

  8. servicemesh 有做过吗

五面 B 部门(HR 面)

  1. 离职原因

  2. 职业规划

  3. 期望薪资

基础知识

  1. 常用集合、数据结构(数据增删改查操作的原理具体实现、各参数的含义,以及如何组合使用)

  2. Java 的语法,OO 的思想要熟悉,常用设计模式要知道场景

  3. JVM 内存模型,垃圾回收 算法,垃圾收集器的区别,GC 调优

  4. 线程模型

  5. IO 模型(包括操作系统底层 IO 模型和常见 BIO、NIO、AIO、IO 多路复用的原理)

  6. Redis(数据结构的内部实现、淘汰原理策略、持久化、集群、扩容、数据同步、以及一些常见缓存问题的解决方案)

  7. MySQL(索引原理,查询优化,三大日志)

  8. 消息队列(内部原理,常见消息问题解决方案)

  9. 分布式原理、 算法、rpc 原理(paxos、raft、zoo keeper 的原理)

  10. 分布式场景题(高可用,高性能相关)

其他知识

  1. 位运算

  2. 大数据量操作(在有限时间内完成、在有限空间内完成)

  3. 设计题(看一些常见的分布式 ID、分布式计数服务等等)

算法

  1. 数组

  2. 链表

  3. 位运算

  4. 二叉树(dfs,bfs,相当重要,只要会了 二叉树,回溯那些 算法也会了)

  5. 设计题

  6. LRU/LFU

  7. 排序

  8. 查找



点击并拖拽以移动

面试前的备战资料



点击并拖拽以移动

整份手册分为了七个篇章,分别是:高并发篇、分布式篇、中间件篇、数据库篇、设计模式篇、数据结构与算法篇、阿里巴巴 2021 年全年面试题总结篇!

点击此处   或者扫码 凭截图即可免费获取 PDF 版


点击并拖拽以移动

高并发篇

秒杀的核心思想:层层过滤

尽量将请求拦截在上游,降低下游的压力

充分利用缓存与消息队列,提高请求处理速度以及削峰填谷的作用



点击并拖拽以移动


大型互联网应用(大数据、高并发、多样数据类型)的难点和解决方案



点击并拖拽以移动


分布式篇



点击并拖拽以移动


中间件篇



点击并拖拽以移动


根据得到的文档和查询语句的相关性,对结果进行排序



点击并拖拽以移动


数据库篇



点击并拖拽以移动


设计模式篇



点击并拖拽以移动

工厂模式

简单工厂



点击并拖拽以移动


数据结构与算法篇



点击并拖拽以移动

分析 HashMap 的 put 方法



点击并拖拽以移动


阿里巴巴 2021 年全年面试题总结篇



点击并拖拽以移动


配置中心之简版



点击并拖拽以移动


总结

我给大家的建议就是慢慢来,不管是社招还是校招,制定自己的计划,一定要有自己的知识体系,针对自己薄弱的地方进行强化复习,不放过任何一个细节。 简历上写的东西一定要会,一般都是针对简历来提问的。如果在预习的过程中感到困难或者吃力,那就对了,等你熬过去了,就是胜利。祝福大家都能拿到满意的 offer。


点击此处   凭截图即可免费获取 PDF 版


用户头像

Java架构师迁哥

关注

还未添加个人签名 2020.09.07 加入

还未添加个人简介

评论

发布
暂无评论
双非渣本后端,三个月逆袭字节,入职那天“泪目”了

代做工资流水公司东莞银行流水修改打印江门企业对公流水徐州办理贷款工资流水舟山工资流水账单费用惠州房贷工资流水 代办苏州银行流水账代做大连查入职工资流水蚌埠打签证流水廊坊企业对公流水办理合肥工资银行流水样本济宁查询工资流水黄冈代办收入证明曲靖打薪资流水单宁德银行流水修改制作杭州代做企业对公流水郑州代做背调银行流水湘潭制作企业对公流水泰安房贷银行流水 公司南昌查询流水信阳查工资银行流水常州工作收入证明样本肇庆企业银行流水样本宿迁自存银行流水办理绍兴消费贷流水价格阜阳制作工资流水临沂办理贷款银行流水芜湖购房银行流水查询洛阳对公流水多少钱贷款银行流水湘潭流水费用香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

代做工资流水公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化