商汤 大装置容器网络开发 一二面面筋
感觉整个比起说开发咋感觉我还是在面SRE呢,索性也加入SRE面筋豪华午餐。
一个幽默的小插曲,之前HR跟我说会在一周内出结果,一周后我看没结果还以为给挂了,就选择接了shopee,结果报到前一天,我人已经到深圳,住处也找好,准备第二天开始上班生活的时候突然告诉我oc了;给我整不会了,本来想的是两边oc后比较比较,现在才oc我只能拒绝了
timeline: 2024.4.26一面→2024.5.7二面→2024.5.16HR面→2024.5.28OC(拒)
由于时间有点久+录音有点模糊,可能有些记得不太清或者笔误
一面:
- 介绍docker底层网络模型
- bridge网络实现原理
- 介绍一下overlay网络
- 怎么实现overlay网络
- 隧道和用路由之间的比较
- 使用路由的话要怎么出去到外网
- 了解大二层网络吗
- 项目相关
- 介绍一下项目的工作流怎么实现的
- 讲一下pod创建流程
- 用k8s遇到过什么坑吗
- 讲一下linux的内存管理机制
- malloc的实现原理
- 和内存回收相关,反正结局是要做一个内存池,可能是设计一个模式来管理那些细小的内存吧
- 怎么实现对野指针、重复释放的及时检测和解决措施(完全不会)
- 讲讲TCP和UDP,二者的区别和特征
- 介绍一下ping和icmp协议
算法:翻转链表
当时面完基本以为挂了,当时以为是KPI面并没有好好准备这次面试,然后被狠狠拷打,但出人意料的进了二面
二面:
- 介绍项目
- 项目怎么实现高可靠->容器可能的故障
- 容器虚拟网络bridge的实现原理
- 能实现跨宿主机/host吗(overlay)
- 怎么实现不同容器间的网络隔离->多租户
- 有没有用过openwrt xxx?(没听清是openwrt的什么
- 询问编程语言->go和py
- go协程的有没有类似的全局锁
- 讲一下项目中的分布式锁实现
- iptables相关有使用吗
- 了解负载均衡产品吗,讲讲你对这些产品的了解(nginx 和 lvs)
- 项目中的防止大量恶意访问的措施
- 讲一下常见的底层网络协议(arp,dhcp等)
- 项目里的ip是怎么分配的(bitmap),为什么不用开源的dhcp库
- dns的作用
- 有没有了解过ping包的协议
- 了解过vlan协议吗,讲到了vxlan
- 讲到了vxlan的包封装
- vxlan外层udp包的目的ip和源ip分别是
- 内层的以太网帧是完整的frame吗,还是只包括了相关的地址
- 为什么vxlan能实现跨三层不同网络的大二层效果呢(vxlan技术的关键特性)
- 对bonding技术了解吗(完全不了解,听面试官讲了好几分钟)
- 引申了22,不同物理服务器怎么连接的: 光纤/光模块故障造成链路级失联->每台服务器出两个网口来连接实现高可靠->涉及到bonding问题,这两个网口独立管理还是做一个虚拟网口?
- 有没有听过sdn,(只知道名字,瞎勾八讲的哈哈)
- 有没有用过一些云平台的网络服务?然后问了一系列相关的小问题
- 对vpc概念有没有了解(完全没听过)
- 熟悉哪些数据库产品
- 设计表结构之间的关系,有什么考虑因素吗
- 有没有做过容器镜像吗
- Ingress和service的区别
- 代码简洁性,可读性和性能你更看重哪个因素
无算法
二面是相当酣畅淋漓的一面可以说,体验来讲比一面好了太多,自己能讲的也不少,不过还是有点力竭
嘛,现在才发现SRE的日常工作好像就是打杂,哈哈,有时候也在想如果当时接了商汤的话会不会摆脱打杂能真正学到点开发的东西,但仔细一想你干网络开发不也得经常接触运维,说不定干的是一样的杂活。说到底还是得靠自己