服了,一线城市的后端都卷成这样了吗!?

2024-04-01 23:52
文章标签 城市 一线 卷成

本文主要是介绍服了,一线城市的后端都卷成这样了吗!?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

声明:本文首发在同名公众号:王中阳Go,未经授权禁止转载。

先听TA的故事

投稿的主人公是一名工作5年的后端开发工程师,最近2年用Golang,之前其他语言。去年春节前被裁员了,各种心酸史,好愁人啊。

刚开始找的特别费劲,简历已读不回,也不知道怎么做准备更好。在撞了很多南墙之后,终于摸到了门道,开始能约到面试了。

然后更难顶的事情发生了:经过各种努力和约面,我拿到了北京的两个offer,但是深圳一个都没拿到,我自己更倾向在深圳工作的,实在实在没办法才会去北京。

深圳这边的工作很卷,越面试考察越难,刚开始那几家我还扛得住,主要是八股和算法,后来不少公司更多的是考察各种各样的场景题,甚至还有公司问我如果让我带一个5~10人小团队做项目会考虑哪些事情?

我真是服气了,我只是一个想找20K工作的gopher程序员,要求已经这么高了吗?太卷了。。。。

在各种学习各种突击、踏踏实实提高自己之后,目前已经成功上岸深圳的公司了,在这里真心分享一个靠谱的经验:别想着速成,踏踏实实的提高自己才是王道。

秉承着好人有好报的原则:我授权阳哥把我最近面试了十几家公司,将近30场面试的面经和经验都分享出来,希望对大家有帮助,希望阳哥的粉丝们都能顺利上岸!把我这份好运传递下去!!!

下面开始秀一下最新面经:

北京外包-掌阅科技

面试题:

  1. 自我介绍
  2. 介绍一下你参与的模块的业务以及架构设计 交易流程
  3. 说一下微信支付流程
  4. 介绍一下你最了解的业务的技术实现 做了哪些业务封装?解决了哪些问题?
  5. mongodb的集合是什么?文档是什么?
  6. mongodb的底层数据结构是什么?怎么实现的?怎么存储的?

编程题写代码

使用go实现1000个并发控制并设置执行超时时间1秒

func worker(c context.Context, wg *sync.WaitGroup, id int) {defer wg.Done()select {case <-time.After(time.Second):fmt.Sprintln("执行完成 %", id)case <-c.Done():fmt.Sprintln("请求超时 %", id)}
}func main() {ctx, cancel := context.WithTimeout(context.Background(), time.Second)defer cancel()var wg sync.WaitGroupwg.Add(1000)for i := 0; i < 1000; i++ {go worker(ctx, &wg, i)}wg.Wait()
}

北京自研-小刀万维

  1. 了解基础信息 学历、年龄、经验、老家哪里、为什么来北京、为什么离职
  2. 自我介绍
  3. 说一下你负责最多模块的业务?用户中心和交易中心业务
  4. 技术团队多少人?
  5. 项目上线了吗?用户群体多少人?是tob项目?
  6. 介绍一下你涉及的技术栈
  7. go是怎么分配内存的?go启动的时候怎么去划分的?划分为几个区域
  8. 碰到过内存泄露没有?什么情况下会内存泄露?如何去定位排查?
  9. 怎么通过go控制并发数?
  10. 原子操作了解过吗?
  11. map数据结构了解过吗?如何实现数据扩容?
  12. map是不是并发安全的?
  13. map删除一个key 内存会不会释放?
  14. 你平常是怎么学习的?看过什么go相关的书没有吗?
  15. 你短期的目标和长期目标是怎么规划的?计划在哪里定居?
  16. 你还有什么想问的吗?技术团队组成
  17. 你对公司有没有什么要求?

杭州晶绮信息科技有限公司

  1. 自我介绍
  2. 说一个你做的/遇到的一个比较有意思的功能聊一下
  3. 除了偏移量还有什么其它优化的方式吗?
  4. 覆盖索引在mysql如何实现的?底层原理是什么?
  5. 聚簇索引和非聚簇索引在B+树里面存储有什么区别?
  6. B+树里面叶子节点的数据结构是怎么样的?
  7. 联合索引在什么场景下会失效?大概有哪几种情况会失效会违背最左原则?
  8. 做过哪些场景下做过哪些SQL优化
  9. 会使用EXPLAIN?怎么使用的?你会关注哪些指标?重点哪些指标出现异常你会比较注重?
  10. 你项目中kafka中主要的应用场景是什么?
  11. kafka中Partition有了解吗?
  12. kafka如何做幂等处理的?
  13. kafka里面的offset概念你了解吗?
  14. 你们Redis用来做什么的?
  15. 缓存和数据库的一致性如何做的?
  16. 你们有做熔断、限流、降级相关的操作吗?你们业务中哪些地方用到了这些?怎么做的?底层原理是怎么样的?
  17. mongodb有做分片吗?
  18. mongodb设计索引会考虑什么?会考虑分片来设计索引吗?
  19. map的底层数据结构可以说一下吗?
  20. slice底层数据结构是怎么样的?如何扩容?
  21. 程序写完之后你们如何做测试的?
  22. 你们项目搞完之后如何部署的?有了解吗?如何做热更新?如何优雅启停?

编程题

  1. 说下打印顺序
func main() {a := []int{1, 2, 3}b := a[:2]b = append(b, 4)fmt.Println(a)  // 1,2,4,3b = append(b, 5)fmt.Println(a)  // 1,2,5,4,3b[0] = 10fmt.Println(a)  // 1,2,10,4,3
}
  1. 使用go实现一个set 为什么要使用struct{}来做map 的value
  2. 启动3个goroutine 循环100次顺序打印123
  3. 编写一个程序限制10个goroutine执行,每执行完一个goroutine就放一个新的goroutine进来

深圳自研线下万领钧

  1. 自我介绍
  2. 如何部署
  3. jwt
  4. gc
  5. redis用来做什么
  6. http和grpc的区别

杭州云智创心

  1. grpc底层用的什么协议?http2.0和1.1有什么区别?
  2. RPC有几种请求模式?同步请求和异步请求
  3. protobuf了解过吗?和json有什么区别?对比json有什么优势?压缩率对比json来说能达到多少?
  4. 数组和slice的区别是什么?
  5. 使用var 定义一个slice不make能使用吗?
  6. go里面有几种方式可以解决并发安全问题?
  7. mysql 单值索引和联合索引 各自的优缺点?
  8. 如何判断一个字段是否不适合建立索引?
  9. 如果让你去设计一个消息队列你会怎么去设计?
  10. 分布式的环境下需要做数据一致性的话,你有几种设计方案?
  11. 我说了TCC,他继续问这个是强一致性,如果需要最终一致性需要怎么处理?
  12. 服务熔断、限流、治理是怎么使用的?用的第三方框架还是自己去做的
  13. 如果让你去设计一个限流器你怎么去设计?

北京易诚高科推易车网

编程题:

写代码实现两个 goroutine,其中一个产生随机数并写入到 go channel 中,另外一个从 channel 中读取数字并打印到标准输出。最终输出五个随机数。

  1. 如何优化MySQL的?除了索引和锁还有其它优化方式吗?
  2. 索引失效的场景?
  3. redis用到了什么数据类型?应用在项目什么地方?
  4. slice切片扩容说一下
  5. 说一下go里面的内存回收?
  6. 说一下GMP并发模型
  7. docker什么地方用到了,会哪些命令,了结的流程
  8. 介绍一下你项目,说下你负责的地方
  9. 说一下库存超卖的设计思路

北京兆殷特集团外包推易鑫集团

  1. 自我介绍
  2. 介绍简历第一个项目,深入挖掘里面的业务细节聊了接近20分钟
  3. 分布式项目你缓存数据更新怎么做?本地的cache如何更新的
  4. kafka如何确认消息消费成功了?如果ack出问题了呢?如果没确认成功
  5. 一个订单被多次消费有吗?如何解决?消费消息的代码逻辑是怎么样的?
  6. redis数据类型一般用的什么?go里面redis用的第三包用的哪个?
  7. 哈希的过期时间怎么做的?面试管一直说他用的包没有设置过期时间的功能 这块需要了解下过期时间底层如何设计的
  8. 分库分表有用吗? 这边答用了mongodb自动扩展 没有用mysql所以避免了分库分表相关问题
  9. 项目中ES是怎么用的?ES如何优化的?ES的的数据类型
  10. 介绍一下你第二个项目
  11. 说下你文章表的表结构是怎么样的?文章内容如何存储?
  12. 文章内容搜索功能有做吗?怎么做的
  13. protobuf中怎么存储数组切片的?
  14. 文章中点赞数是怎么做的? 针对点赞数设计方案问细节
  15. 你们项目有没有做一些防爬的机制?怎么做的?
  16. redis有遇到丢数据的情况?如何解决?
  17. 切片的底层数据结构是怎么样的?底层数据是存储在堆上还是栈上?
  18. map的底层数据结构是怎么样的?
  19. 空interface的底层数据结构是怎么样的?
  20. 问了下平常用的一些web框架,但没有深入问框架里面的细节?
  21. 框架中的熔断是怎么做的?
  22. mysql的数据库事务隔离级别
  23. mysql事务的的原子性是什么
  24. 一条SQL的具体执行过程可以说说吗?
  25. 去日志文件搜索错误信息 linux命令说下

杭州默安科技

  1. 自我介绍
  2. 介绍一下你的项目,说一下你负责的模块,说里面你觉得设计的比较好的地方 说了一个微服务之间一致性问题,又接着问还有没有,又继续说了 高并发下避免库存超扣 这两个场景追问细节
  3. go map底层 sync.map底层实现
  4. go 有map哈希冲突的可能性?你会怎么解决?
  5. 互斥锁和读写锁区别?读写优先级一堆扯底层原理 一直有goroutine占有读锁/写锁 是不是会有读锁/写锁被阻塞 这个是挖坑题目 然后聊到后面让我结合GMP讲这个锁
  6. 将GMP的东西大致都讲了一遍,后面一直问是不是先进先出然后我说了分片执行,得根据场景来判断
  7. 自旋和GMP结合来讲?自旋解决了什么问题?
  8. mysql索引执行顺序 多个索引mysql如何选择哪个索引先执行
  9. 删除索引会怎么处理?会重构索引树吗?
  10. 索引为什么快?
  11. 有大量的IP格式数据?假如让你设计高效查询,你会怎么设计
  12. mongodb为什么比mysql快,从哪些方面体现出来

杭州稻壳网络

  1. gorm的使用 锁怎么用 sqlx那些用过没
  2. 分布式数据一致性的问题怎么处理?问细节
  3. ES的使用
  4. go-zero和kratos的区别
  5. mysql存储json数据

北京蓝标传媒

  1. 自我介绍
  2. 介绍项目负责模块,深挖业务,分布式事务一致性场景 下单和其它服务数据一致性
  3. 假如你去设计订单服务的时候,你是怎么去组织你代码的一个结构的,如何如何代码会考虑哪些点
  4. 重复支付怎么设计处理
  5. 你们用的kratos,代码是怎么分层的,详细问data层做了些内容
  6. 说下你的职业规划
  7. 设计模式有了解过吗

杭州爱果酱

  1. 自我介绍
  2. 介绍下项目背景,难点,方案 一直抠项目细节
  3. 库存超卖问题设计思路?库存如何更新
  4. 库存更新怎么做的呢?分布式锁
  5. 分布式锁如何设计?setnx和setex有什么区别?如何续期
  6. map、channel底层原理

北京 Runner建霖家居

  1. 自我介绍
  2. 二级缓存cache 数据一致性如何保证 reids呢,如何保持数据一致性?
  3. 分布式锁如何设计的?追问细节,问的很细,实现细节
  4. 你用mongodb的过程中有没有遇到什么问题? mysql和mongodb你觉得有什么区别?你觉得mongodb和mysql哪个性能更好,你怎么看待?mongodb你们这边最大并发怎么样 追问细节
  5. 分布式下单场景数据一致性 如何设计? 追问细节
  6. 社区项目中文章是怎么存储的?内容怎么存储
  7. 文章如何做缓存的?全部缓存进去吗?
  8. 然后介绍第三个项目业务,简历三个项目都问到了
  9. 数组和切片的区别
  10. 说一下内存逃逸?
  11. 函数入参的话,你觉得什么时候适合传值类型什么时候时候传指针类型?
  12. 进程、线程、协程的区别

深圳及刻

  1. nacos是AP还是CP,你们项目中如何使用的?
  2. 说下你们微服务框架的执行流程?
  3. 介绍下你负责模块的业务流程?如何实现的
  4. 库存超卖设计思路说一下 问的超细
  5. 表数据多大?用什么存储?mongodb支持事务吗?
  6. 分布式数据一致性设计思路 问的超细
  7. 微服务限流怎么做?有没有了解底层实现
  8. 消息幂等性如何设计?
  9. 消息队列宕机之后重启怎么知道它上次消费到哪里?offset记录?offset数据存储在哪里?
  10. 用kafka有遇到什么问题?消息堆积 业务流程
  11. 微信支付流程说下 追问里面一些细节 回调方法逻辑 加锁处理
  12. 分布式锁设计思路
  13. 提高QPS你会从哪些方面去设计
  14. mongodb索引底层数据结构是什么?
  15. B树和B+树的区别?
  16. 回表是什么意思?如何减少回表?除了覆盖索引和索引下推还有其它方式吗? 使用主键查询
  17. 使用二级缓存的流程是怎么样的?有了解过go-cache底层用什么数据结构存储的吗?
  18. 你们接入了多个第三方平台?什么设计的? 应该是想问下使用策略模式来实现
  19. ES使用场景?数据怎么放入到ES中的去?如何保证数据一致性的问题
  20. 假如在不影响业务的情况下,让你来设计一个数据迁移的方案你怎么设计?老数据要同步新进来的数据也要考虑
  21. channel了解过吗?项目中哪些场景用到了?你认为channel是个什么东西?channel有几种?channel关闭之后再去读会怎么样?如何知道channel关闭了呢?
  22. 一个主服务同时去调用多个子服务,其中一个服务关闭之后 就中断所有子服务执行 你如何设计实现这个需求
  23. channel底层数据结构是什么?问细节
  24. Mutex底层实现原理?是公平锁还是非公平的锁?饥饿模式下数据是通过什么存储的?
  25. 队列和栈有什么区别?如果让你来实现一个栈你怎么实现?
  26. git的命令、linux命令
  27. redis的持久化如何实现的?redis有遇到什么问题?
  28. redis的淘汰策略什么?你们用的哪个?lru和lfu的区别
  29. 如何做一个切片去重?
  30. 项目中nginx怎么用的?反向代理 负载均衡怎么做的?负载均衡里面的原理有了解吗?
  31. mysql事务隔离级别?你们用的是哪个?有什么问题?RR如何解决可重复读

深圳线上Ximmerse

  1. 自我介绍
  2. go并发有哪些同步机制
  3. channel什么情况下什么时候会 发生死锁
  4. 协程泄露是指什么?如何排查协程泄露
  5. 代码调优的手段?代码层面如何做协程调优
  6. mysql调优说一下?覆盖索引和单列索引的优缺点?
  7. mongodb如何存储大文件
  8. nginx和apisit的区别
  9. k8s如何去做路由
  10. 如何大数据导出?导数据把服务拖垮了你会怎么办?怎么定位到具体的代码行?

深圳线上网心科技

  1. 自我介绍 && 个人职业规划 && 最近在看什么书
  2. http每个版本更新的点有了解吗?http状态码了解吗
  3. https如何做中间人攻击
  4. 数据库事务隔离级别讲一下
  5. 在使用mysql的过程中需要注意哪些问题?表设计、索引设计、事务使用、更新表结构、sql注入预编译
  6. redis哪些数据结构用的多一些?跳表了解?redis主从复制了解过吗
  7. redis使用的过程中有些什么需要注意的点? 一直问还有吗
  8. go的内存管理了解吗?针对这个内存管理在实际编码中有什么需要避开的吗? 一直问还有吗
  9. channel缓存和无缓冲区别

一起上岸!

我们搞了一个免费的后端面试真题共享群,互通有无,一起刷题进步。

没准能让你能刷到自己意向公司的最新面试题呢。

感兴趣的朋友们可以加我微信:wangzhongyang1993,备注:面试群。

本文首发在我的同名公众号:王中阳Go,未经授权禁止转载。

这篇关于服了,一线城市的后端都卷成这样了吗!?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/868460

相关文章

基于 YOLOv5 的积水检测系统:打造高效智能的智慧城市应用

在城市发展中,积水问题日益严重,特别是在大雨过后,积水往往会影响交通甚至威胁人们的安全。通过现代计算机视觉技术,我们能够智能化地检测和识别积水区域,减少潜在危险。本文将介绍如何使用 YOLOv5 和 PyQt5 搭建一个积水检测系统,结合深度学习和直观的图形界面,为用户提供高效的解决方案。 源码地址: PyQt5+YoloV5 实现积水检测系统 预览: 项目背景

2024年上海松江启动建筑绿色低碳发展专项检查,共绘城市节能新篇章

2024年9月4日,2024年度松江区建筑工程绿色低碳发展工作专项检查会议正式开展,会议内容主要围绕以下三点, 1、《关于开展 2024年度本市建筑领域绿色低碳发展工作监督检查的通知》宣贯。 2、分项计量、能效测评工作验收要求介绍。 3、专项检查工作安排。 我国在早期没有高度重视建筑物的环保节能,造成了过去30年内竣工的建筑绝大多数是高能耗工程建筑,这类工程建筑在未来几十年里将耗费许多能源

五星级可视化页面(06):城市鸟瞰页面,居高临下,高屋建瓴。

本期分享城市鸟瞰图的可视化大屏幕,这类场景一般在智慧城市和城市治理可视化中常用。

利用高德API获取整个城市的公交路线并可视化(四)

副标题:公共汽电车站点覆盖率——以厦门市公交线路为例 书接上回,我们有了公交的线路、站点数据,并同时对数据质量进行了校验,但是不同城市情况不同,需要看当地对公交交通数据的开放程度,部分城市建设的有大数据平台,也可以检索到公共交通的一些标签数据,这篇文章我们来讨论一下公交覆盖率; 公交数据获取方式参考我上篇文章:利用高德API获取整个城市的公交路线并可视化(三)-CSDN博客 首先先根据行政区

P4842 城市旅行(拆贡献 + LCT)

https://www.luogu.com.cn/problem/P4842 发现题目就是要维护一个LCT,然后我们只要把pushup写成功了就行。 那我们现在就不管LCT了,就单纯想用一棵二叉查找树怎么维护。分母是好搞的,分子我们要想点办法。 考虑右子树对左子树的贡献,我们假设处理出一个 L [ k ] L[k] L[k] 表示左子树中每个值乘以左边界的可选数量,我们现在再乘上右子树的大

可以进行非机动车违停、人员聚集、临街摆摊、垃圾满溢、烟雾火情等城市治理场景的智能识别的智慧城管开源了

智慧城管视觉监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。 基于深度学习技术及强大的专家团队,针对多个工业垂类场景进行算法优化,打造最优的工业AI算法模型,提供更加精准的工业AI模型库,客户可直接选择适合自己业务场景的模型,快速实现业务落地

渣土车识别算法解决城市治理难题

随着城市化进程的加速,渣土车作为建筑工程中不可或缺的运输工具,其频繁的穿行和装载运输过程往往引发一系列问题,如超载、扬尘污染、乱倒渣土等,对城市环境和交通秩序造成了不良影响。为了解决这些问题,采用基于视觉分析的渣土车识别算法已成为现代城市治理中一种有效的技术手段。本文将从背景、技术实现、功能优势和应用方式等多个方面,探讨如何利用视觉分析技术来识别和管理渣土车,从而实现智能化、精细化的城市管理。

智慧环卫:城市清洁的未来图景与技术革新

在智慧城市的宏伟蓝图中,“智慧环卫”正以其独特的姿态,悄然改变着城市的清洁与环境卫生管理方式。智慧环卫不仅仅是技术的简单应用,更是城市管理智慧化、生态化的重要体现。本文旨在深入探讨智慧环卫的内涵、技术支撑、实践案例及对城市环境改善的深远影响。 智慧环卫:定义与价值 智慧环卫是指通过集成物联网(IoT)、大数据、地理信息系统(GIS)、人工智能(AI)等技术,对城市垃圾收运、清洁作业、公厕所以及

中国各城市、各区县、各省份-PM2.5相关数据(1998-2021年)

PM2.5是指直径小于或等于2.5微米的颗粒物,它们能深入人体呼吸系统,对人体健康产生重大影响。这些数据对于监测和改善空气质量、评估政府环保政策的效果以及进行环境科学研究等方面都具有重要意义。 数据及指标包括: 省、省代码市、市代码县代码、县年份均值、总和、最小值、最大值、标准差 这些指标通过主成分分析的方法进行标准化和降维处理,从而得到地级市数字经济指数。数据年份覆盖从1998年到2021

【2024-2025源码+文档+调试讲解】微信小程序的城市公交查询系统

摘    要 当今社会已经步入了科学技术进步和经济社会快速发展的新时期,国际信息和学术交流也不断加强,计算机技术对经济社会发展和人民生活改善的影响也日益突出,人类的生存和思考方式也产生了变化。传统城市公交查询管理采取了人工的管理方法,但这种管理方法存在着许多弊端,比如效率低下、安全性低以及信息传输的不准确等,同时由于城市公交查询管理中会形成众多的个人文档和信息系统数据,通过人工方法对用户、线路、