边无际 | Golang后端开发 | 2022.06.25

这算是我学习go语言来第一次参加面试。

一面

一面是在5月份左右
  • 自我介绍

  • channel关闭了去读去写会出现什么问题?这个我回答的还不错

  • 直接两道算法题,我直接蒙逼了。

  • 第一道是 给一些括号 匹配成功返回true,失败返回false,括号匹配问题

  • 第二道是传入字符串键值对(a=1,b=2),转化为map型(key:value),这个就很尴尬,因为对map的不熟悉,在初始化上出了错误

  • 中间问了 索引二叉树的时间复杂度,没有回答上来

面试完算法题就结束了,我知道结果肯定寄了,虽然一开始也没有报太大的希望

二面

二面主要是笔试,二套试卷,一套是go语言相关的(30道选择题和一道算法题),一套是算法题(二道),总结如下:

第一套试卷(后端golang)

  • golang基本结构

  • golang特性

  • go语言触发异常的场景

  • CSP模型 GMP

  • 读写锁

  • 线程进程协程

  • for循环

  • make和new的区别

  • 指针

  • 引用类型

  • select

  • beego框架

  • Gin框架

  • Ginkgo

  • GoStub

  • Go vendor

  • Go Mock

  • 还有没写的就是代码运行结果相关的

  • 然后就是一道 算法题

第二套试卷(算法)

二面总结

题目不算太难,选择题很多库都没见过,不熟悉,最后还是很顺利的通过了笔试

三面

过完二面笔试之后,第二天收到了答复,当天晚上七点就直接进行面试(三面)。以下是面试内容

  • 自我介绍

  • 为什么选择Golang?前景好,性能好,小而精

  • 擅长做什么事情?做项目

  • 聊天室项目怎么实现的?通过几个goroutine

  • go语言的垃圾回收?这个项目怎么进行的? 这个项目没有用到垃圾回收,是语言的特性。

  • 了解docker?连接简单指令,部署了聊天室的服务器

  • 使用什么网络框架?实现了什么东西? 登录注册

  • 登录注册是怎么实现的?校验信息,密码加密保存

  • 怎么进行加密的?通过github上的包

  • 看了github项目很多,介绍写的很好,怎么写出来的?参看README模板

  • 写两道算法题,在showmebug网站

  • 第一道是 通过管道实现生产者消费者模型,运行出来了

  • 第二道是 将每个单词的首字母移到至单词结尾,并在单词结尾添加「so」。保留标点符号不变。 没太写出来

心得

  • 面试的这家公司非常注重算法,也狠狠的打击了我,让我有动力去提升我的算法能力

  • 希望自己面对面试保持平常心,该干什么就干什么,不要被面试打乱了正常的学习和生活

  • 面试前不要慌乱,这样反而准备不好
有24届想交流的可以私信我,我建立了一个24届的实习交流群,大家会分享一手的热乎的面经!
#go后端开发实习##go语言##字节跳动功go语言#