字节教育后端开发日常实习

一面+二面 4.14

  1. 多进程问题
    大概长这样:
    ......
    int main() {
    ........
    int pid1 = fork();
    int pid2 = fork();
    ........
    }
    总***生多少个进程, 如何区分父子进程
  2. msql 隔离级别 然后给了一道题,两个事务并发,在可重复读和读已提交的情况下,select语句分别输出什么
  3. http和https区别,然后接着问TLS四次握手的过程、对称密钥和非对称密钥、数字证书和CA
  4. get和post区别, 有哪几种post请求,还有一些和包头、编码有关的问题
  5. session和cookies
  6. 滑动窗口和拥塞窗口
  7. Go语言的并发模型(GMP)
  8. 进程和线程的区别
  9. redis基本数据类型
  10. mysql聚簇索引和非聚簇索引、主键索引是不是聚簇索引、唯一索引呢?
  11. mysql索引 b+树
  12. TCP三次握手、四次挥手、为什么握手要是三次,而不是两次或四次
  13. C语言内存对齐
  14. 联合索引, 一面问知道联合索引吗,怎么用 (知道、没用过); 然后二面问了一道联合索引的题,大概长这样:
select *
from table
where a=1 and b=2 or c= 3
order by d;
问如何设置联合索引(不会, 根据自己的感觉强答了一波)

然后二面中间问了项目做得啥,因为项目很简单,没啥可问的,在我说明了项目的需求和功能之后就没继续问了
其他的记不太清鸟。。。
一面代码题:leetcode 25 k个一组翻转链表
二面代码题:leetcode 92 翻转链表II

三面4.20

一上来就做题:
leetcode 15 三数之和
做完跑用例,一开始忘加去重的条件了,只过了20%的用例,然后改了一下, 跑通了。

然后就是各种结合项目问问题:
做项目过程中索引怎么用、项目里联合索引怎么用、redis数据丢失怎么办 ,balabalabala,
淘宝网站如何设计数据库表(因为之前在写论文,只有一个很简单的和Web相关的项目,而且那个项目的需求还是区块链,其实只涉及到一点点很简单的后端开发,所以都不太会。看得出来面试官不太满意)

因为项目没啥可问的,然后就问了一些基础的东西
mysql 幻读、ACID
redis 项目里怎么用的 (文件分块上传过程中用hash存文件总块数和各块是否成功上传)
redis里快表怎么用的
一个url从输入到收到返回值的过程
linux的一些命令:
查看进程命令 (我说了ps和top)
在一个文档中查找某个字符串 (我说我一般用vim /,grep应该也可以)

然后三面很快就结束了。
然后反问:因为三面面试官前面的问题都要结合项目回答,我实在是没啥项目,答得很不好,当时感觉已经凉了。所以只问了问想要提高项目能力,该看点啥书,面试官建议多看看数据库(mysql和redis),


总结:面试的问题和代码都不难,都是平时常见的。
主要还是项目经验太少了,这一点很吃亏。
然后代码平时还是要多练练,要不当着面试官的面手撕代码,一紧张就容易出错,一出错就慌,一慌就理不清思路了。
不说了,祝大家都面试顺利吧,我去看数据库了。

#实习##面经##字节跳动##Java工程师#
全部评论
有人知道联合索引那个题怎么做吗,使用or之后联合索引不是会失效吗
点赞 回复
分享
发布于 2021-04-21 16:32
楼主 base哪里啊
点赞 回复
分享
发布于 2021-04-21 21:09
阿里巴巴
校招火热招聘中
官网直投

相关推荐

3 39 评论
分享
牛客网
牛客企业服务