普本非计算机,三面字节,只因精通这七大技

北京皮肤科医院好 http://pf.39.net/bdfyy/bjzkbdfyy/140802/4439528.html

前言

作为一个Java程序员,平时总是陷在业务开发里,每天噼里啪啦忙敲着代码,上到系统开发,下到Bug修改,感觉自己无所不能。然而偶尔的一次聚会,听说和自己一起出道的同学早已经年薪60万,而自己却囊中羞涩。于是也想看看新机会,找个新平台,好好发展。

于是恶补了下Redis、MySQL、K8S、Nginx、Kafka、Docker还有算法,当时恶补算法完全是因为在阿里的一位朋友的说法:

现在大厂面试时都在问算法,尤其是应届生问的更多,未来找工作算法肯定是刚需,有时间你一定要好好学下算法,我这有左程云左神的《程序员代码面试指南》你回头看看吧

谁知后来刚好收到字节跳动的面试邀请,这就有点戏剧性了(左神的算法书没白啃),抱着试试看的心态参加了面试,拿到了28*16薪的offer,虽然最后因为某些原因,没去吧~~

下面分享下面试的大致过程

一面:

hashmap,怎么扩容,怎么处理数据冲突?怎么高效率的实现数据迁移?

Linux的共享内存如何实现,大概说了一下。

socket网络编程,说一下TCP的三次握手和四次挥手

同步IO和异步IO的区别?

JavaGC机制?GCRoots有哪些?

红黑树讲一下,五个特性,插入删除操作,时间复杂度?

快排的时间复杂度,最坏情况呢,最好情况呢,堆排序的时间复杂度呢,建堆的复杂度是多少

二面:

自我介绍,主要讲讲做了什么和擅长什么

设计模式了解哪些?

AtomicInteger怎么实现原子修改的?

ConcurrentHashMap在Java7和Java8中的区别?为什么Java8并发效率更好?什么情况下用HashMap,什么情况用ConcurrentHashMap?

redis数据结构?

redis数据淘汰机制?

三面(约五十分钟):

mysql实现事务的原理(MVCC)

mysql数据主从同步是如何实现的?

mysql索引的实现,innodb的索引,b+树索引是怎么实现的,为什么用b+树做索引节点,一个节点存了多少数据,怎么规定大小,与磁盘页对应。

如果redis有1亿个key,使用keys命令是否会影响线上服务?

redis的持久化方式,aod和rdb,具体怎么实现,追加日志和备份文件,底层实现原理的话知道么?

遇到最大困难是什么?怎么克服?

未来的规划是什么?

你想问我什么?

最终给我的offer薪资也还是高了,不过咱不是只看薪资的人。谈薪资的时候要注意,如果你们有什么补贴比如说饭补(或者包吃啥的),直接说道你的薪资里面,不要算补贴,这样最后你可以在这个基础上加工资。比如你薪资20K然后有1K饭补,那你直接和面试官说你的薪资16K,不要说15K有1K的饭补,这样别人在20K的基础上给你加薪,而不是在16K。

针对面试总结的面试提纲(思维导图+面试宝典+笔记)

面试复盘

以下是我在面试前恶补的一些Redis、MySQL、K8S、Nginx、Kafka、Docker的实战书籍,觉得颇有作用,如果大家喜欢的话可以转发


转载请注明:http://www.aierlanlan.com/tzrz/2674.html