bg:双非本+非科班 双debuff 三段实习(两段三线大厂golang开发,一段架构组实习三个月,一段技术中台实习五个月) timeline: 一面 1.29 二面 2.1 三面 2.23 一面 时间7pm(57min) 自我介绍 介绍一下最近一段实习做的项目 实习项目的架构 你主要负责哪部分 你对程序会关注哪些指标(cpu使用率,内存使用率,pod重启次数,oom) 你刚才说的某个服务的cpu
一个小时问raft:模块;复制流程;一致性保证;压缩怎么实现;投票分裂。 为什么要学raft,怎么理解分布式。 看了什么书,最近在做什么,有什么。 算法题:一个任务列表,一个任务占用1时间,相同任务必须间隔n,求最小时间。(完全不会写了30min) hr在旁边一起面了: 为什么实习离职;收获;与同事差距;怎么追赶 总共接近2h,难绷
40min算法: 二叉树的公共祖先 sql:第二高的薪水 😩 启动2个线程或协程,按顺序交替打印从1到N(让用chan或者信号) 实现死锁(我直接mu.Lock()两次) 八股 死锁条件 怎么避免 😩忘了 课 飞书视频在网络上发生了什么 怎么设计RPC和HTTP 为什么要有计算机网络(??😄😄没有我吃什么) OS怎么处理网络的 Socket有什么用😩 反问 业务:教育初创, 刚上线 为什
八股: mysql索引怎么存 优点 慢查询优化 redis hash怎么存, 哈希冲突 扩容, 查询流程 kafka为什么快, 消息怎么存 kafka怎么保证消息一定被消费 go的map底层结构 自选锁 互斥锁 自选锁的应用场景 😩忘记了, 可以说CAS Raft模块最难的一个, 为什么 两个候选者票数相同发生什么 项目 实习的难点是什么😩没什么可说的 实习的系统你觉得可以怎么优化😩 需求怎
笔试(打字写写比较简单) 进程和线程的区别,如何通信 TCP/UDP的区别和特点 sql语句 go中defer的顺序 面向对象语言的特点 面试 自我介绍 Mysql mysql存储引擎 - 哪个支持事务 char 和 varchar 区别 应用层索引 索引对左匹配原则 数据库的索引类型,使用过那些索引,还有那些索引 索引的数据结构 Go go有没有异常类型 介绍一下GMP,能不能去掉p层 go的竞
第一题:100% 第二题:100% 第三题:100% 第四题:100% package main import "fmt" func main() { n := 0 fmt.Scan(&n) nums := make([]int, n) dict := make(map[int]int) for i := 0; i < n; i++ { n, _ := fmt.Scan(&nums
全程一小时 1.关于项目询问…… 2.C++: 忘了有啥了,应该都是常见的 4.分布式: ACID是什么 CAP是什么 RAFT如是实现投票? 经典的超过半数投票…… Zookeeper如何避免脑裂? 答:采用2N+1个 replica。 反问:如果有一个宕机了就不能了吗? 答:不能,要么手动再宕机一个节点,要么加上一个replica。不然容易出问题 好像认可了我的答案…… 分布式系统中如果我向r
太难了 go中如何将string转为[]byte,不申请额外空间? 设计一个并发安全的计数器 有缓冲和无缓冲channel gin框架的路由数据结构怎么实现的 为什么用前缀树 go官方包的路由是用什么数据结构实现的? go的多路复用模型,数据结构? go中如果将Listener 关闭,那么之前已经 Accept 的连接是否会关闭 为什么不会关闭? go中如何判断读文件结束了 go中如何在打开一次文
30分钟纯八股(提前五分钟到,提前五分钟结束),带问号的表示回答的不好,无手撕 make 和 new 有什么区别 new 一个map结构会有什么问题 数组和切片有什么区别 传数组 和传切片有什么区别 切片的扩容机制 map的数据结构是什么样的,如何实现扩容的 为什么 bmap 里面存储的是八个键值对??? map是如何解决并发安全的 sync.map 是如何实现的 sync.map 适合什么样的场
1h左右 自我介绍 除了go还会什么语言 go 如何实现读写锁,写一下代码 给定一个 m*n的矩阵,存在若干障碍物,如何判断从中心点A上下左右八个方向移动,是否存在前往四个角落的路径 - dfs / bfs (效率太低) - 三维dp,让手写了转移方程 - 如何优化 - 启发式算法有了解吗? - 不了解,讲了一下大致思想,问如何设计估价函数,如何选择下一个节点? - 迪杰斯特拉了解吗,他和启发式算
自我介绍 进程、线程、协程的区别 进程、线程调度 线程同步,扩展:分布式锁(不会) 项目 Go语言基本类型 slice、map相关 数据成员访问权限 Go语言面向对象 chan类型阻塞、非阻塞 三次握手、四次挥手 epoll模型(没答好) MySQL索引 InnoDB和MYISAM区别(后端闪退了,没机会答)
纯面经帖,供后人参考,非经验贴,发完准备卸载牛客安心搞论文。 个人基本情况: BG双非硕(非知名双非) 混杂型开发:Go/Java + 前端(Vue) + 移动端 (Flutter/Swift) 都有真实项目(或开源项目) Leetcode 500+ 题 三段小厂实习,Github 700+ Star,博客访问量 100w+ 国际级、国家级、省级竞赛都有(特等、一等、二等、三等都有) 学校 BG
第一次面试有点紧张,感觉答的不咋样,结果第二天问HR说过了 1. 项目、主要做的内容(实验室的项目,没问多深) 2. go哪些数据类型是线程安全的(记错了一些) 3. map的两种扩容方式(没看过,答成溢出桶方向了) 4. map可寻址吗 5. 读已经close的channel会怎么样 6. 生产者、消费者用有缓存channel通信场景,如何让生产者和消费者退出 7. GMP中调度机制,有了解过h
大佬手机一直响个没停,说联系工作,记得的印象深刻的几个问题写一下 1. golang两个channel性能稳定,三个channel时性能会发生抖动,为什么? 2.当TCP发生拥塞时,维护窗口的两个指针是如何变的,详细说一下 3.说说linux内核源码里的内存管理部分,了解有多少,看过什么版本 本来以为都没面试等春招再冲了,面试前就看了看leetcode可能有的几道hard,问题答得稀烂😭 最后手
得物Golang实习面经 ---11.26 1、自我介绍 2、说一说golang中数组和切片的区别 3、go的gmp模型 4、聚簇索引和二级索引的区别 5、MySQL的主从复制原理 6、MySQL主从复制导致的数据不一致导致的超卖,我们怎么应对 7、如果让你设计一个支持10亿个用户登录的系统你要如何设计呢 8、10gb数据,你只有256m内存,你如何进行数据的排序 面试官说场景题回答的不是最优解,