字节提前批《高频汇总之前端水真的不深》

字节的后端一直是大热之选,不少人对字节跳动技术岗的职级体系和技术要求还不太了解,想去面试心里没底,下面带大家简单了解一下。

此外,还有由字节面试官整理的最新前端面试题(答案正在整理到时候通过一篇文章向大家推送还望大家多多订阅小码哥  ),新鲜出炉!希望大家了解并掌握这些知识点,争取通过每一轮面试!

字节跳动的职级研发序列一共10级
不同序列间月薪base差异较大,技术base整体偏高。比如2-1月薪会在20k+,2-2的package

会在60w-100w左右(算上期权,大概会占30%左右)。T2-2 级别的薪资约40k,500股票/每年,字节跳动的现金薪酬要比BAT 们高出25%-40%。

字节后端工程师要求
1、熟悉TCP/IP协议,熟练掌握Linux网络编程和多线程编程技术;

2、  熟悉面向对象编程,掌握Java/C++/Python/PHP中的至少一门语言;

3、有较强的系统问题分析经验和能力,能够解决复杂的系统问题;

4、熟悉 redis、memcache、消息队列等基础技术;

5、具有系统性能分析及优化经验者优先;

6、开源社区活跃贡献者优先。  

绩效考核与晋升
字节跳动内部的绩效考核一共有八级,从低到高为F、I、M-、M、M+、E、E+、O,并会进行强制分布,对应年终奖和月薪百分比的涨薪。M就有涨薪机会。晋升面试也是主要还是看绩效考核。

每年两次考核,一般在三月和九月。考核方式借鉴了google的OKR+360模式:头条是双月OKR,可以在lark 上看到所有人的OKR,知道大家在做什么,你对齐的大目标是什么,支持对齐你的人在做什么。360评估:每个人都可以评估别人同样也会被别人评估,无论是领导还是普通员工。

福利
三餐免费还有下午茶。

如果住在公司附近还有房补, 北京1500杭州800。

后端篇需要掌握的知识
Java
synchronized,lock,AtomicInteger 底层原理

IO流分为什么?

字节流字符流一般应用场景

抽象类和接口区别

抽象类的异同和使用以及分别适用的场景

HashMap,ConcurrentHashMap 底层结构原理

HashMap的put方法

进程,线程和协程

线程之间如何实现通信,有没有用到过?
说说MVC的执行流程

web中的三大组件分别是?起到了什么作用

常规的前后端交互请求头有几种

共有多少种设计模式,在spring中用到了几种,分别用到了哪里?

spring中的设计模式又分为几种模型?

讲讲服务注册于发现。这部分主要讲了springcloud eureka 和部分 zookeeper,zookeeper的选举机制

spring AOP 的实现方式, siglib 能否代理final修饰的类

Sprngboot常用注解以及组合注解有哪些(讲部分)

Sprngboot实现原理 yml和xml有什么区别

jvm 垃圾回收过程,并详细讲一种垃圾回收器
强引用,软引用,弱引用,虚引用应用场景

计网
拥塞控制和流量控制
快重传和超时重传

简述下三次握手四次挥手的过程

为什么四次挥手后客户端等2MSL  
常见的网络协议有哪些?

pop3属于哪个层次的协议

http和https的区别

https是如何实现数据加密传输的

OSI有几层结构以及每层结构分别用到了什么协议

DNS解析全过程
http2.0,http3.0
https的连接过程
CA证书的验证过程
RPC框架了解吗
如何设计 基于udp的可靠传输
tcp如何保证数据安全性的,磁盘如何保证数据不丢的,应对坏道情况,这个应该是问数据备份的,不是很懂。
操作系统
阻塞io和非阻塞io
进程和线程区别,通信方式分别是什么
虚拟内存和物理内存
linux 按 ctrl + c 中断的原理
协程高效在哪
Mysql
mysql的存储引擎

SQL优化(百嚼不烂-----------------必会)

Innodb,B+树,聚簇索引和非聚簇索引区别
一千万条数据,问 b+ 数大概多高
为什么用 b+ 树而不是 b树,红黑树
在设计联合索引需要注意什么
联合索引最左原则的底层原理
mysql 的 MVCC 以及是否解决幻读
手写sql,实现一个 按时间降序的分页查询
redo log,bin log,undo log

Kafka
kafka的rebalence
ISR
如果新加进一个消费者会发生什么
如何保证数据一致性
Redis
RDB和AOF区别
为什么RDB 要 fork 子进程而不是线程
redis基本数据类型
zset的底层数据结构,跳表何时增加高度
分布式 redis,缓存和数据库读写不一致,答 延迟双删
面试官让随便讲讲redis,所以还说了缓存穿透,击穿,雪崩以及处理方法
场景题和智力题
若是系统发生死锁让你来解决你会怎么排查

一般你在开发中遇到问题都是怎么解决的?
你平时空闲的时候都会去干什么?

抖音直播弹幕 如何防止高并发怎么设计
操作系统给你一块空闲内存,你如何设计使用和回收。

若是让你去设计一个项目你需要在数据库层次上考虑什么
手撕代码
给定两个字符串s1,s2,默认s1长度大于s2.求出字符串s1中包含s2所有字符的最短子串

柱状图中矩形最大面积 leetcode 84
查找第k小的数,用堆以外的方法做
给m个房子涂n种颜色,相邻房子不同色,cost[i][j]表示给i号房子涂j颜色代价,求最小上色总成本。力扣应该有原题

总结:
字节面试后端总结基本在这里了,希望大家好好复习争取消灭offer成功上岸,这里小码哥建议大家多多了解Vue3尤其是学习前端的,现在的Vue3真的很不错。

字节面试题很多,多会设计到安全的问题,尤其是字节底下怎么多app是吧,最少了解一样去深入分析。如:抖音之类的。




作者:小码哥

欢迎关注微信公众号 :码出宇宙

扫描添加好友邀你进技术交流群,加我时注明【姓名+公司(学校)+职位】