22暑期实习字节,拼多多,百姓网(offer)
写在最前面
阶段:暑期实习
岗位:Java后端开发
面试记录:字节跳动二面跪,拼多多一面跪,百姓网三面收offer,还在进行中。。。
背景
本人魔都211渣硕,研究生和本科皆为机械(老机械人了),无奈听说机械这行待遇确实不行,实体行业拉垮,
于是心生转计算机的想法。期间遇到很多挫折,一方面来自老师的压力,另一方自学刚开始确实孤立无援,没
有什么头绪,不知道要学哪些东西【很崩溃】,但是贵在坚持,在不断受挫的过程中,会对这门语言越来越敏感。
字节
一面
- 自我介绍【除了介绍基本个人信息外,最好说一下你的技术栈,项目信息】
- 什么是JVM内存屏障?作用是什么?volatile原理?
- 常见垃圾收集器有哪些,各有什么特点?STW?安全点?jvm堆内存模型?
- synchronized锁升级?原理?死锁概念?加在静态方法上有什么影响?
- CAS了解吗?存在什么问题?怎么解决?
- mysql索引优化原则?sql怎么优化?索引底层结构是什么?
- TCP三次握手和四次挥手?粘包和拆包?
- redis缓存三大问题?其中缓存击穿怎么解决?redis实现分布式锁?
- 中间技术有哪些?其中rabbitMq应用场景和实现原理?
- linux常见指令?统计字符个数?
- KMP算法?快排?(手撕了快排,但是KMP卡在了一半)
- 有关项目的一些问题,比如说表关系,并发处理,redis缓存的使用,登录功能实现等等
一面问的特别基础,回答的还行,应该有二面
二面
- 自我介绍
- JVM调优参数?young GC和full GC?分代年龄?CMS?
- HashMap底层实现原理?【1.7和1.8区别,扩容机制,哈希冲突,链表转红黑树时机,为什么使用红黑树等】
- rentrantlock?AQS原理?公平锁和非公平锁?死锁?
- Java对象内存布局?锁住对象和哪个属性有关?
- mysql锁机制?读写锁区别?慢查询日志?主从复制?innodb的特点,与memory的比较?
- redis缓存与数据库一致性?redis的epoll原理?
- 设计模式?DCL?
- 动态规划【不会】?最小生成树【也不会】?ACM自动机【也不会】?
二面算法一个没答上来,毫无思路,game over
拼多多
面试官听说我是非科班的,顿时对我失去了兴趣,哈哈哈
一面
- 自我介绍
- jvm堆内存模型?内存屏障?
- 阻塞IO和非阻塞IO的区别和原理?
- HashMap等层原理?扩容机制?哈希冲突?
- CAS原理?存在问题及解决?synchronized锁升级及原理?偏向锁原理?
- 乐观锁和悲观锁?应用和原理?
- mysql索引优化原则?sql调优怎么做?
- DCL?
- linux常见指令?
- 基数排序?LRU?链表反转?
表现一般,但是面试官认为我是非科班的,不大想要,呜呜呜
百姓网
一面
- 自我介绍(啊吧啊吧)
- HashMap底层实现原理?【从1.7的链表加数组讲到1.8的链表加数组加红黑树,哈希冲突,扩容时机,链表转红黑树时机,为什么要红黑树比B+树要好】
- 垃圾回收器都有哪些?哪些是新生代,哪些是老年代?CMS的特点?STW是什么?安全点?垃圾回收过程?jvm调优参数?
- 内存屏障是什么?DCL为什么要加volatile?
- 堆内存模型?比例如何?怎么处理内存分配?
- mysql使用的存储引擎,特点?和memory区别?
- redis怎么实现分布式锁?三大问题?数据一致性?
- 中间件技术都会哪些?nginx的反向代理和正向代理?
- synchronized锁升级原理?
- spring的bean对象的生命周期?beanProcessor的作用?
- hystrix怎么实现限流和熔断?
二面
- 自我介绍
- jvm的类加载过程?双亲委派是什么?
- 生产者,消费者设计模式现场写案例?
- volatile怎么实现内存可见性?
- mysql读写锁区别?应用场景选择?慢查询日志分析?
- 索引优化?mysql慢查询日志?
- 布隆过滤器解决什么问题,它的实现原理?记录一款app的月活怎么用redis实现?
- spring的aop和ioc的实现原理?springboot和spring的区别?
- TCP粘包和拆包?三次握手四次挥手?
- 什么是异步?rabbitMq的实现原理及使用场景?
- CAS解决什么问题?它本身有啥问题?怎么解决?与synchronized的区别?
- 项目中的问题:表结构,哪些字段加索引,表关系如何,订单处理业务时序图,验证码登录功能的时序图等等
三面(hr面)
聊了聊个人情况,愿不愿意实习转正,一周能来几天,薪资,带我见了部门leader,诚意很足,很nice的一次面试,最重要是重新找回了自信。