SmartX-软件定义网络SDN-实习生offer面经
首先每轮都有面试官和我的自我介绍(这点体验感拉满)
一面(62 min):
- 问项目(15min)
- jwt 和 session 的区别
- 为什么jwt 不安全
- docker的实现机制
- 能详细的讲解一下cgroup和namespace吗
- cgroup 用的什么版本
- cgroup v1和v2有什么区别?
- 开发中应该都经常用git吧,讲讲git的常用的命令
- 如果两个协程中用channel进行通信,结束后需要close channel吗?
- 不close channel 会发生什么?
- 用过设计模式吗?
- 能详细的讲一讲你最喜欢的设计模式吗?(观察者模式)
- 用户态和内核态有了解过吗?
- 什么时候用户态和内核态会发生切换
- 从操作系统层面解释tcp链接
- 虚拟内存和物理内存
- 算法题
(1)快排 :
- 时间复杂度是多少?
- 最坏的情况是那种情况?
(2): 根据前序中序遍历构造二叉树,再后续遍历:
- 时间复杂度是多少?
- 有没有优化的方法?
- 你对云原生的理解是什么?
- 你未来的规划是什么?
Q&A:
- 如果我来到贵公司这边实习,具体是做什么工作
- 目前SDN团队大概有多少人
- 面试表现
问的比较深入,少部分题没答的很好。总体体验还是很好。
--------------------------------------------------------------------------
二面(70min):
- 自我介绍
- go语言中内存泄露知道,一般什么情况下会导致内存泄露
- 你一般写一些并发的业务的话,你一般怎么去实现。
- waitgroup大概是怎样实现的你了解吗
- 你写的程序中你碰到过死锁的问题吗
- 实际的项目中你遇到过吗
- 后续就是关于死锁的问题的一些探讨
- go如何实现函数返回多个返回值的
- 队列有了解过吗,在并发情况下如何实现一个无锁且并发安全的队列
- 协程和线程主要有什么区别
- 协程相比于线程有什么不好的地方
- 想要实现一个共享内存给多个不同的线程去用的话你会怎么实现
- 线程和进程之间核心的区别
- 线程间,进程间分别的通信方式有那些
- 操作系统 虚拟内存到物理内存的映射是如何实现的
- 32位的操作系统下面 一般的话会用几级页表
- 需要支持 64的指令集呢,几级页表
- 为什么需要四级或者五级页表
- ip地址使用在那一层上面 他的作用是什么
- mac地址在那一层 他的作用是什么
- ip地址和mac 地址之间的关系是什么
- 你现在手头上有一台电脑,电脑上有一张网卡,网卡上面有一个mac地址。那么IP地址是否也配这张网卡上面的呢
- 从输入url到显示页面的过程
- 你平常做项目中 碰到问题一般怎么去调试和定位Bug
- Prometheus 的采集量有多大
- 有多少服务器几点
- 说说你对云原生和微服务的理解
- 微服务有什么缺点
- 你觉的k8s最核心的思想是什么
- 你平时对什么样的技术比较感兴趣
- 算法题 滑动窗口
- go test 会写吗,有代码覆盖率要求吗
Q&A:
面试官:
- 现在是大二还是大三&可以实习多久
- 对实习的一些公司有什么期望吗
- 你现在拿到过其他公司的offer了是吧
我:
- 团队目前有多少实习生
- 目前的团队的主要方向是什么
- 后续多久有结果
问的比较深(需要自己答的时候深入底层和具体原理),部分题没答的很好。
--------------------------------------------------------------------------
三面(CTO面):30min
- 自我介绍
- 项目介绍
- 项目架构
- 可观测性如何具体实现的
- 未来规划和发展
- go channel 底层实现
- 对那些方向比较感兴趣
- 有过开源经历吗(无只有几个pr)
Q&A 环节就不写了
没有coding环节
--------------------------------------------------------------------------
三面过了,后面hr说还有 一个hr沟通 不是说好了三面吗
后续OC
#晒一晒我的offer##实习##smartx##实习面试初体验##面经#