边无际 | Golang后端开发 | 2022.06.25

边无际 | 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语言#
全部评论
太棒了
1 回复 分享
发布于 2022-07-11 00:01
这家公司实习能不能学到很有用的东西
点赞 回复 分享
发布于 2024-05-14 20:27 辽宁
请问这个测试是什么哇,下下来他们的东西根本用不了
点赞 回复 分享
发布于 2023-06-25 21:15 河北
想进群
点赞 回复 分享
发布于 2023-02-23 23:32 辽宁
可以看看github嘛,不知道做什么golang项目
点赞 回复 分享
发布于 2022-10-13 17:01 四川
先面试后笔试?
点赞 回复 分享
发布于 2022-09-21 20:56 陕西
这个公司怎么投的啊
点赞 回复 分享
发布于 2022-08-23 09:33 上海
大佬真强
点赞 回复 分享
发布于 2022-08-05 14:41
牛呀,2024届的都已经找到golang实习了吗
点赞 回复 分享
发布于 2022-07-10 17:37

相关推荐

03-22 15:56
东北大学 Java
做了这周的美团笔试加 ai 面,笔试大概 6 道大模型训练方面问题,4 道后端常规题,题型和上周差不多。算法 a 了两道,第一题看着吓人实则签到送分,第二题也是比较经典的括号相关问题,第三题一看做都不想做直接交卷走人了。据说美团几乎不怎么看笔试。ai 面试方面总体体验还不错, ai 面试官笑呵呵的一直点头,一直瞎说也点头,整体很轻松😂。最开始用 edge 浏览器进不去不知道为什么,后来换个夸克就好了。结合别人的面经来看,整体题型也比较固定,上来先选语言(java,c++,go),然后讲下自我介绍和 ai 使用情况,然后会再追问一下 具体怎么用 ai 的。之后就是出三四道八股题,第一题是计网(udptcpipv4ipv6httphttps 这些),第二题是根据选择的语言出,三四题差不多是中间件比如 mysql,redis,mq 这些。每到题回答之后基本都会追问两到三个问题,这里的追问是根据你的回答来的,所以说回答的时候自己不熟悉的词一定要少说,尽量多强调自己会的知识点。然后第五题是系统设计题,会让你设计一个具体的系统,然后讲讲整体对象间的关系,数据库表设计,api 设计等等,我遇到的是一个邀请系统,我看还有好多项目管理系统的。第六题是场景题,我遇到的是后端如何统计 token 以及一系列数据,最后做整合报表。这道题可以换题。然后五六题会追问三到四个问题左右,也是尽量答自己熟悉的知识点。第七题应该是个人经历相关,让我讲一个具体怎么顶住压力克服困难的经历。
查看9道真题和解析
点赞 评论 收藏
分享
03-31 00:30
已编辑
门头沟学院 golang
无手撕,被面试官暴打一小时,第一次被拷打 go 相关的内容,被拷打得我想找个地缝钻进去,😭我是菜🐶,我的腾讯面试之旅结束了 qwq。1. go routine 是啥怎么调度的。2. 如果 gmp 中 p 的分配是怎么分配的(go语言 runtime系统进行内存管理,调度器还有系统调度封装)3.向一个 nil channel发送读取消息会怎么样?4.向一个close的channel接发消息会有什么结果?5.slice是引用还是还是拷贝(我最开始很干脆地说是引用,结果面试官一副匪夷所思的语气:你确定?我就跟他说是拷贝,被戏耍麻了😭,只能怪自己基础不牢)6.内存逃逸是什么,简单介绍一下。7.接口的底层实现,接口的类型。8.闭包求输出:funcs := []func(){}for i := 0; i < 3; i++ {funcs = append(funcs, func() {fmt.Println(i)})}for _, f := range funcs {f()}其实这个答案根据 go 的不同版本,输出结果不同。在 1.22 之前,输出是三个 3, 因为循环内的 i 实际上地址是指向同一处的。但是在 1.22 及之后,结果是 0, 1, 2, 如果这个时候你打印一些 i 的地址,你会发现地址是不相同的。因为 go 在 1.22 更新了 for 循环(包括 range)的方式,循环内的临时变量 i 和 range 中取出的数据都是完全独立的一份拷贝,而且指向的地址不相同!9.Go GC 机制讲解一下,什么是写屏障,如果没有写屏障,可能会有什么情况?10.让我们来聊聊你的项目吧,来看看你的项目,啊哈!~达人探店项目,高并发店铺点评博客项目",介绍一下你的项目,你如何实现异步秒杀的?如何防止超卖,如何实现一人一单,如何使用分布式锁,lua 脚本是怎么写的?怎么实现消息不丢失的?压测怎么做的?有没有使用过阿波罗普罗米修斯宙斯哈迪斯盖亚(已晕qwq)等压测工具,有没有压测过你的各个缓节的时间,你的性能瓶颈在哪里?Redis 如果 set 数据量较大的情况下如何进行大 key 值拆分,你的 Redis 是单机还是主从?你的 kafka 有几个节点,划分了几个 partition?有几个消费者节点,你的项目有几个服务?11. 有什么经常用的 AI coding 的工具?有 Agent 开发相关的经历吗?哦?你还了解过 Agent 开发? MCP、RAG#@$*^~你能展开讲讲吗?12. 反问:请教之前空接口,受教了。给了本菜🐕一点建议:go 的基础太不牢了,作为主要的开发语言来说是不够格的。期间面试官一直没开视频,但我隐隐听到他在偷笑
点赞 评论 收藏
分享
评论
14
78
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务