社招
快来分享你的内容吧~
- 昨天 09:57·iOS开发查看全文【入职求助贴】萌新刚入职某大厂做后端开发,目前还在试用期。最近遇到一个棘手的问题,想向大家求助一下。 入职不久,leader 给我派了一个任务。跟我说是0.5天就可以解决,我刚毕业入职,做了一个星期没有做出来。实现一个收集定时成功任务的案例。听起来好像不复杂,但我自己摸索着做了一整个星期,到现在还...编程导航小智:你好,看到你的帖子特别有共鸣——这几乎是我当年入职第一天就踩过的坑 😅先说结论:不是你不行,而是“0.5天任务”背后藏着隐性需求、技术上下文和协作默契,这些恰恰是新人最缺的。Leader 说的“0.5天”,默认你已具备:✅ 熟悉内部定时调度框架(比如 XX-Scheduler / Quartz 封装版)✅ 知道任务状态上报的统一协议(如 HTTP 上报格式、幂等 key 规则)✅ 了解监控告警链251分享
- 06-17 13:34·全干的耄耋之神,老登的年纪且登味为0,只趁对话记忆还没转到summary状态分享一波,5-10年经验档位基本还是项目上的问题为主全程无八股。本人年纪是过35的,好不容易拿到这个保底。公司是研发AI产品的甲方自研,岗位聚焦公司内部AI提效。驴算找到了下一阶段工作就是继续找马,抓紧这波AI大航海时代的节奏。 事先声明:这篇面经含糖量极高 面试概况 岗位方向:AI Agent 开发 一面:双面试官,线上飞书,约 50min,技术初筛 二面:现查看全文加油鸭:恭喜拿下AI赛道关键offer!35+还能稳扎稳打、精准卡位大航海节奏,这份清醒与执行力太耀眼了!241146分享
- 06-06 11:01·全干的耄耋之神,老登的年纪且登味为0,只
#字节内推# 实习、校招、社招均有岗位
我的内推码:UZ7MKAM 字节跳动校招岗位链接:https://job.toutiao.com/s/TS0RY84Wxvw 欢迎各位鱼友投递,已使用本人内推码投递的友友可帮忙查询进度、传授面试经验、介绍部门情况等。 说实话字节强度肯定是大的,但是福利待遇确实非常不错。 使用我内推码投递的鱼友欢迎联系我,最近忙,不常上编程导航,可以直接加微信联系,麻烦备注一下来意,因为一般不加陌生人。 微信号:MrWang_1600
【入职求助贴】萌新刚入职某大厂做后端开发,目前还在试用期。最近遇到一个棘手的问题,想向大家求助一下。 入职不久,leader 给我派了一个任务。跟我说是0.5天就可以解决,我刚毕业入职,做了一个星期没有做出来。实现一个收集定时成功任务的案例。听起来好像不复杂,但我自己摸索着做了一整个星期,到现在还没达到预期效果。 这一周我基本是“边学边做”的状态,遇到卡点也会每天主动找 leader 沟通进度和疑问。但感觉 leader 平时比较忙,对我属于“放养”状态,每次沟通虽然会听我说,但给的指导比较宏观,没有特别具体地指出我代码或思路上的硬伤。 我现在有点陷入死胡同了,每天自己瞎琢磨效率很低,又不敢一直缠着 leader 问,怕他觉得我能力不行。 想请教一下各位有经验的职场前辈,有什么好的建议。 真的很想尽快度过新手期,不想一直拖团队后腿。感谢大家的时间,听劝!
深圳鸿航达科技有限公司面经
## 深圳鸿航达科技有限公司面经 ### 一、基础问题 #### Q1:做一个简单的自我介绍。 #### Q2:为什么要从上一家公司离职? #### Q3:团队有多少人? #### Q4:个人博客写了些什么? #### Q5:工作年限?上一家公司的薪资待遇?多久可以到岗。 ### 二、项目提问 #### Q1:你们的项目后端如何与设备交互? #### Q2:为什么使用HTTP,而不是MQ或者MQTT? #### Q3:数据量有多大? #### Q4:项目中有使用过多线程吗?举个例子。 #### Q5:关于虚拟线程介绍一下。 #### Q6:在工作中遇到的最难问题是什么?如何解决的? #### Q7:在项目中使用过哪些锁?介绍一下。 ### 三、八股文提问 #### Q1:MySQL默认事务隔离级别是什么? #### Q2:MVCC是什么? #### Q3:普通索引和主键索引的区别是什么? #### Q4:SELECT * FROM student WHERE age = 1 的执行流程是怎么样的? #### Q5:普通索引能不能直接拿到数据? #### Q6:ReentrantLock的底层原理是什么? #### Q7:线程安全集合有哪些? #### Q8:ConcurrentHashMap的原理是什么? #### Q9:volatile有什么作用?
5月高强度面试,放送社招菜鸟 AI 应用岗面经!
# 面试题库全公司汇总(脱敏版) > **候选人背景**:1年Java后端/AI应用开发经验,前公司为某制造业企业 > **总场次**:13 场面试,覆盖 10 家公司 > **岗位方向**:Java后端开发 / AI全栈开发 / AI应用开发 / DevOps --- # 📑 目录索引 - [一、华大制造 — AI应用开发工程师(2026-05-26)](#一华大制造--ai应用开发工程师2026-05-26) - [二、广州大娱网络科技 — AI应用开发(2026-05-26)](#二广州大娱网络科技--ai应用开发2026-05-26) - [三、安克创新 — AI应用开发/AI探索(2026-05-23)](#三安克创新--ai应用开发ai探索2026-05-23) - [四、OPPO — AI应用开发/DevOps(2026-05-21)](#四oppo--ai应用开发devops2026-05-21) - [五、中泓一线 — AI全栈开发,共2轮(2026-05-18 / 2026-05-20)](#五中泓一线--ai全栈开发2026-05-18--2026-05-20共2轮) - [六、拼多多 — Java后端开发(2026-05-20)](#六拼多多--java后端开发2026-05-20) - [七、探迹(2026-05-19)](#七探迹2026-05-19) - [八、北京用友 — Java开发/AI开发,共2轮(2026-05-15 / 2026-05-18)](#八北京用友--java开发ai开发2026-05-15--2026-05-18共2轮) - [九、恩士讯 — Java后端(2026-05-15)](#九恩士讯--java后端2026-05-15) - [十、海颐 — Java开发(2026-05-13)](#十海颐--java开发2026-05-13) - [十一、有赞 — Java开发工程师(2026-05-07)](#十一有赞--java开发工程师2026-05-07) - [十二、跨公司同类题归并索引](#十二跨公司同类题归并索引) - [AI Agent / Multi-Agent 编排](#ai-agent--multi-agent-编排) - [RAG / Embedding / 向量数据库](#rag--embedding--向量数据库) - [MCP / 工具调用 / Function Call](#mcp--工具调用--function-call) - [Java 并发 / 锁 / 线程](#java-并发--锁--线程) - [微服务 / 分布式 / Spring](#微服务--分布式--spring) - [MySQL / 数据库 / 索引](#mysql--数据库--索引) - [Redis / 缓存 / 消息队列](#redis--缓存--消息队列) - [DevOps / K8S / CI/CD](#devops--k8s--cicd) - [计算机网络 / 安全](#计算机网络--安全) - [前端](#前端) - [个人 / 职业规划 / Relocation](#个人--职业规划--relocation) - [开放设计题 / 编码题](#开放设计题--编码题) - [学习习惯 / 技术视野](#学习习惯--技术视野) --- # 一、华大制造 — AI应用开发工程师(2026-05-26) > **时长**:约 43.5 min | **面试官**:主面试官 + 第二面试官(董老师) > **特征**:八股零考察,项目深挖为主,大量软性问题 ## 项目深挖 — 沙箱平台 - 你先做一个自我介绍,介绍一下你自己觉得做的不错的一个项目。 - 沙箱平台你们用的是自己的沙盒吗?还是说用的… - 你这个沙箱主要是在里面执行什么任务吗?还是支持文件的类似的吗? - 这个沙箱里面是起了一个类似起了个服务在里面? - 根据这个沙箱里面的服务是给用户提供什么样的服务的呢? - 你刚刚说的物料是指的一个什么样的物料? ## 项目深挖 — MCP 网关 - 刚说的第二个项目就是这个MCP网关的,主要是做了件什么事情呢? - 就相当于你把原来那些工具已经是MCP化了吗? - 就跟用户交互的那端配的话只需要配这个网关的地址就行了?你是在网关这一层再配具体连的是哪些MCP的工具? - 手工的制作,把那个MCP的工具录进来? - 就给到MCP网关这一层,然后它自己生成那个MC… ## 设计反思与工程挑战 - 就像这么设计的话,你觉得他会有什么问题吗? - 使用过程中的使用。 - 你这个网关会封装了很多接口,那到时候所有的用户端的请求全部都会请到网关这。流量很大的话怎么来。 - 限流的话…除了这种方式还有别的方式。 - 那就怎么解决? ## Agent 架构深挖 - MCP 的工具到工具调用这一层,就这一套技术的流程它是怎么大概。 - 是谁去调的这个工具,就是调的这个 MCP 的工具?是大模型调的吗?大模型输出来的都是文字,他是怎么能够有这个能力去调动一个接口? - 描述一下你现在这个多 agent 的协作是怎么做的。 - 后面的多 agent 是怎么开发,怎么设计的。这个多 agent 的架构的话… - 那你觉得用这个(Google ADK)它有什么优缺点呢? - 我这里写了 LangChain 然后又写了谷歌的这个 SDK,你这两个是同时用的吗? - 那你用谷歌做的这一个,你能实现这三种编排的功能吗? - 在配置要求的时候,是需要把这些数据格式都给…上一个agent和下一个agent之间要交接的一些文件,文件的处理的逻辑。 - 这地方串联交接的这个部分会涉及到文件类型,还是说都是文字。 - 那这个 agent 之间…它是有文件传输的那它是怎么处理这些文件就是。 - 如果是传一个 excel 到下一个agent的话,那个 agent 它是怎么去…一般都是在沙盒里面… - 那您知道当前你做这个是有沙箱吗? - 这个skills的加载机制是你自己写的,还是说 ADK 自带。 ## 项目角色与团队 - 这些项目你的这个身份是? - 您这个团队比较大吗?还是说主要是。 - 在这个跨团队的过程中有解决这个问题是比较短的。 - 的那些对象是都是技术的人员,还是因非技术的业务。 ## 职业规划与软性 - 你对加班的看法是怎样的? - 你觉得你在这个一年多的工作都是…哪个哪项工作让你比较有成就感? - 你专业跟生命科学/生物的关联? - 你是更希望去做一个偏工程类的,还是说更想去做一个项目的一个推进者? - (涉及离职状态、试用期期望的问题已略去) --- # 二、广州大娱网络科技 — AI应用开发(2026-05-26) > **特征**:含 1 道开放系统设计题(BI 数据分析智能体) > **时长**:约 33 min ## AI Agent 理解 - 先简单做个自我介绍。 - 这两个AI相关的项目,你觉得哪一个的技术挑战性是比较大的? - 你在这个编排框架这个项目里面做了多久,以及说你在里面的角色是什么? - 这个框架你们当时想要解决的核心问题是什么? - 具体到业务上面解决的一个主要的什么场景上面什么的问题? - 讲一下你对Agent这个东西的理解吗? - 从一个chatbot到这种智能体,核心要解决的问题是什么?怎么从这步跨到这步的? ## Agent 工具调用与框架 - 在一个Agent里面他要去做工具调用,它的实现机制和原理是什么? - 具体是怎么实现这个工具调用的?讲一下它内部的机制。 - 你比较熟悉的一些现在标准的Agent框架有哪些? - 能讲讲他们的整个架构吗? - 系统架构组成部分是什么? - 你是怎么理解skill这个东西的? - 这些skill怎么知道什么时候应该去调用哪个skill,内部处理流程是怎样的? ## 开放设计题 - 让你去做一个AI智能体,对BI系统里的报表做数据分析,你怎么实现? - 你没有一个很系统性的思路,每个流程做什么事,对应什么方案? - 现在有个后台BI系统,想通过微信/钉钉对话来分析数据,智能体应该怎么做? - 有没有哪一项AI相关的技术,你觉得自己研究的特别深入的? --- # 三、安克创新 — AI应用开发/AI探索(2026-05-23) > **特征**:零八股、零项目深挖、零系统设计。偏 AI 认知和思维方式考察 > **时长**:约 34 min ## 个人与职业 - 自我介绍。 - 现在考虑换工作的原因是什么? - 几月份走的? - 当时毕业之后选择前公司的原因是什么? - 主要是干什么?我怎么没听过。 - 这不是稳定着路一条的节奏吗? - (涉及籍贯、英语水平等个人信息的问题已略去) ## GitHub 与技术写作 - GitHub用了多久? - 首页写这么多技术栈干什么? - 你的文章从24年就停了,是不是? ## AI 认知与学习 - Claude Code跟Codex,用的是原厂模型还是套国产模型? - 官方的用过没?最好的还是模型吗? - 你觉得中美之间的AI差距是在变大还是变小? - 为什么所有的创新都是别人的/美国的,而不是亚洲的(或中国的)? - 你自己平常学习AI领域新东西的途径和方法大概怎么写? ## Skill / MCP 深度 - 自己搭过agent吗?比如用低代码/langchain/langgraph/Coze/Dify/n8n这种? - 你觉得MCP跟skill什么区别?你自己有没有写过一些skill? - 渐进式披露那个description是给人看还是给谁看的? - description一般怎么描述?什么风格?精炼还是有边界条件? - 你怎么做的实操的?还是用harness来做的? - 这个东西是自己拖出来,还是根据开源项目在本地改的? - 你自己怎么写评测?跟skill creator一样,你怎么评测? ## 职业规划与技术观 - 你未来两三年的职业规划大概是什么样子的? - 编程语言熟哪些?除了java以外? - 你觉得这几个编程语言之间的区别是什么? - 日常写后端语言,你更喜欢用哪个? - 在前公司这一年最大的收获是什么? - 我看你这里有一个AI网关中间件,说白了你是不是托管了业务研发的MCP,是不是? - 你觉得八股重要吗?高中生背得应该比你快吧? - Java编程语言你觉得最讨厌的地方是什么? - 日常用到设计模式,最常用或最优雅的是哪些? --- # 四、OPPO — AI应用开发/DevOps(2026-05-21) > **轮次**:一面(共 2 轮) | **时长**:约 33 min > **面试官**:DevOps/代码质量方向 | **团队**:~50 人分 3 组,应用层 Python / 网络层 Go > **注意**:以下为一面已问题目,主管面预测题见[OPPO主管面预测文档](./OPPO一面分析_主管面预测.md) ## 容器平台 - 容器化部署主要负责两个功能点?状态机和资源泄露? - 你是通过什么?是有一个平台自建的是吧? - 有没有用过 Jenkins 那种? - (追问)具体流水线打包流程? - (追问)离线部署经验? - 你对 DevOps 这个方向了解吗? ## MCP 网关 - 关于下一个项目,MCP,相当于自己额外做了一个中间件? - (追问)网关鉴权限流细节 - Tool 注册流程 ## Agent 框架 + AI 深度 - 再讲讲多智能体编排的框架 - 整个框架是公司已有的吗? - 第三个完全是你独立完成的吗? - 你在这里主要负责哪些能力呢? - 最后成的是一个面向用户的聊天框是吧? - 整个 Agent 基于哪个框架执行运行? - 讲讲 Skill 的自净化 - 整个搭建过程,哪个是最难的? ## 技术栈 + 个人 - 你什么时候离职的? - 以后还是希望在 Java 语言上深耕吗? - (告知)常见用 Python,新项目用 Go - 现在是在深圳吗? --- # 五、中泓一线 — AI全栈开发(2026-05-18 / 2026-05-20,共2轮) > **特征**:一轮技术面考 Java/Kafka/分布式八股 + AI Agent,二轮总监面全景扫描(RAG深挖+微服务设计+前端摸底),不考八股 > **面试官**:一轮两位面试官,二轮技术总监 ## 第一轮 — 技术面(2026-05-18) ### AI / Agent - 你自己私下做的那个项目,简历里有贴链接?整体是垂直领域的一个? - 底层调用的是哪个模型? - 不是你自己掏钱买的Key吗? - Spring AI用什么实现memory?基于什么实现?比如mysql? - 追问:你是用什么样实现的? - 多agent的架构一般常见的架构有哪些? - 有用到function call吗?调用了什么工具?做了什么? - 为什么要用function call? - MCP网关,通过AI来分发调用? ### Java 基础 - 平时工作中有用到哪些数据结构? - 除了list和map,还有用过其他的吗? - JDK 17有什么新特性?抛开语法不说,JDK层面有什么新的? - 我看你写了了解设计模式,提到模板方法模式,可以简单介绍一下吗? - 前端知识了解程度?是仅限于web coding还是? ### Kafka / 分布式 - Kafka偏移量有哪几种?常见设置偏移量有哪些? - Topic和Group哪个大?换group要重置偏移量吗? - 搭建过分布式集群吗?Redis搭过高可用? - 分布式基本理论有接触吗?CAP? - Redis有哪些分布式架构? ### 反问 - (候选人问)前端开发比重大概多少? - (候选人问)岗位是顶替还是扩展? ## 第二轮 — 总监面(2026-05-20) ## 个人 / Relocation(已脱敏) - 离职时间确认 - 居住地及通勤距离摸底(涉及住房、家庭信息的连环追问已略去) - 前公司工作性质确认(对内还是对外/客户案例) - 对面试公司的了解程度 ## 技术栈扫描 - Spring Cloud 有吗? - 微服务的这些生态应该是不是? - 在 AI 这块,除了 Spring AI 还熟悉哪一些? - 你刚刚熟悉的 LangChain 是 python 那块? - 深度的熟悉应该还不够? ## 前端摸底 - JS 怎么创建一个对象? - Vue 的拦截器有哪些种? - CSS 前端的定位布局有哪些种? ## RAG 全链路深挖 - 大模型微调训练部署,我们是怎么去训练的?训练方式有哪些种? - 应用层,比如说像这个 RAG 这块? - 那你说一下 RAG 的整个过程。 - Embedding 用的什么模型? - 你熟悉的向量数据库有哪些? - PG Vector 它对应的有哪些类似索引类型、存储类型? - 放到数据库里面之前,要不要归一化? - Embedding 之后,向量字段一般设置多长? - 不同文件类型(文本/语音/视频)转成向量后,怎么存储这个字段?维度长度是多少? - 1024 设的长还是短?对我们有什么影响?可以设两万多吗?128 可以吗? - 用户提问的时候,召回算法有哪些种?匹配算法? ## Java 微服务系统设计 - 用户信息基础服务,多个业务服务需要获取用户信息,怎么设计使得带宽性能高、并发最高? - 不同微服务什么时候放到 ThreadLocal 里面去? - 怎么去获取这个上下文信息呢? - 业务服务从哪里获取? - 在哪个阶段去查 Redis? - 这个用户 ID 从哪里来的? ## 技术成长 - 你平时获取最新的技术信息的途径有哪些? --- # 六、拼多多 — Java后端开发(2026-05-20) > **方向**:电商商家 | **时长**:约 34 min > **特征**:含 14 分钟编程题(String to Integer)+ 5 轮边界追问 + 短链接系统设计 ## 项目介绍 - 那麻烦介绍一下你做的项目。 - 那你这个主要解决什么问题? - 你们具体是怎么做到的?这个业界有没有比较成熟的方案? - 你觉得为什么要挑一个你大学时候做的项目来? - 这个离职的原因方便说一下吗? - 排查下来具体什么问题? ## 编程题 — String to Integer - 写一个方法,把一个字符串解析为一个整数。输入"1234",返回整数类型的1234。 - 你写的有什么问题吗? - 你觉得有什么问题吗? - 如果让你来测试,把你的测试用例的范围都写一下。 - 那其他的。 - 还有吗? - 还有吗?就这几个。 ## 数据库 - 你有没有比较熟悉的数据库? - 你知道MySQL的索引是怎么实现的吗? - 为什么B+树?B+树有什么好处? - 二叉树也是针对查询优化过的,跟B+树相比呢? - 有一些查询优化经验吗? - 你说的游标跟跳跃具体是指什么? ## 消息队列 - 你用过一些像Kafka这样的消息中间件吗? - 有没有了解过Rebalance概念? - 你们什么场景会用这个? - 你刚才说的这个消息具体是什么消息? - 你怎么避免重复发送呢? - 日志列表查询消息。 ## 系统设计 — 短链接系统 - 设计一个短链接系统。把长链接映射到短链接,访问短链接时跳转回原始长链接。 - 访问短链接的时候怎么跳转回原来的?需要考虑哪些点? - 你怎么生成这个短链接? - 你这个数据结构具体是什么样的? --- # 七、探迹(2026-05-19) > **特征**:MCP 网关追问 3 层深,可观测性/评测体系方向 ## 项目与工程 - 在你过去这一年里做过的项目,有让你印象比较深刻的那些问题跟你的一个解决方案。 - 你对CAS是怎么理解的? - 你对整一个K8S的一个操作是会比较熟悉吗? - 描述一下这个零配置的具体流程…引擎是一行代码都不用去写是吧? - 如果我这个API需要认证的,你们是怎么做的? - 限流这一块,并发量有多少?QPS有多少? - 架构是怎样的?只用到后端限流工具? - 单机怎么考量的? - 不会成为单点故障的隐患吗? - 为什么考虑做这个东西?有出现过下游服务被打的情况吗? - 这个东西是你自己,不是你们公司的项目吗? - 你在这个项目中自己学到什么?个人理解? - 我看到你提到链路评测体系 ## 系统设计 — 垂直观测链路 - 你知道我们公司做什么?如果参与进来做垂直观测链路系统,你怎么设计?思路是什么? - 从买家消息到AI答案,整个数据流转应该怎样? ## 测试链路 - 你讲一下你们当时测试链路怎么做的? - 链路记录在哪里? - 这个体量不太大是吧? ## AI Coding 工具 - 你平常AI coding怎么用的? - code是自己付费还是公司提供?付费国内模型? - 千问code有去用过吗? - report rick没有去用过? ## 个人(已脱敏) - 在职状态确认 - 离职原因 - 所在城市确认 - (涉及其他面试进展等个人问题已略去) # 八、北京用友 — Java开发/AI开发(2026-05-15 / 2026-05-18,共2轮) > **特征**:一轮侧重 Agent 项目深挖 + 安全基础 + Java 并发,二轮偏 AI 概念和 MCP 理解 > **部门**:2 人编制小型研发团队 ## 第一轮 — Java开发/安全方向(2026-05-15) ### Agent 项目深挖 - 这个MCP Gateway,企业级网关中间件是什么意思? - 你设计的Luna-AI框架,并行模式下多个子Agent的并发执行机制是什么? - 那聚合各自各个子Agent的结果呢? - 如果其中有一个Agent失败了,Parrell模式是部分成功还是整体失败? - (追问)整体失败还是部分成功? - 你知道这个CAS状态更新机制是吧? - 你这个Spring AI调用层做了哪些补丁增强? - 你Google ADK扩展了Agent的调用钩子是吧? - (追问)采集了哪些关键维度? - 你用到了那个自动重放失败case的调试环境没有? - (追问)不是测试框架,是你是否设计了自动重放失败case的调试环境? ## Java 并发 - 你知道synchronized跟你刚提的ReentrantLock的区别是啥? - 你刚提到AQS是吧?AQS原理知道吗? ## 安全 - 你知道XSS攻击吗? - 跨站脚本攻击(澄清)。 - 你做过登录(登录/鉴权)吗? - 知道什么叫双因素认证吗? ## 基础组件 - Redis用过吗? - 你知道它的这个数据结构吗? - ES用过吗? - 知道倒排索引的原理吗? - 还有哪些组成部分? - 什么是聚簇索引?什么是二级索引? - 你知道MySQL优化吗? ## 前端 - 微微前端的Vue。(你会Vue吗?) ## 收尾 - 有什么想要问我们的吗? - 我们这边的职责你了解吗? - (面试官透露)部门开发人也比较少。就是两个人编制。 - (涉及薪资期望、到岗时间、工作地点调配的问题已略去) ### 第二轮(2026-05-18) > 本轮偏 AI 概念理解,面试时长较短(约 16 min) #### MCP / Agent / AI 概念 - MCP跟ATA(A2A)有什么差别? - MCP主要解决什么问题? - 除了gateway,还有哪些功能? - 有鉴权和认证的吗? - 有监测功能吗? - 比如说内容,还有一些风险的控制? - 容器化沙箱跟普通容器比有什么特殊? - 和LangGraph比哪个方向更好? - 编排怎么做的? - Skill的优点? - 任务跑一天要多少个? - 1000万大概多少钱? #### AI Coding - 用AI做开发吗? - 用CC吗?CC+DeepSeek? #### 项目难点 - 项目遇到最难的问题是啥? - 说一下你自己项目最难的问题 - Agent有时效性/瞬时性,你停在一起未必能查出来? - 临时缓存? #### 个人(已脱敏) - 前公司发展评价 - 离职原因 - 前公司业务方向/部门职责 - (涉及籍贯、所在地等个人信息的问题已略去) --- # 九、恩士讯 — Java后端(2026-05-15) > **特征**:分布式体系全覆盖,从锁→Redis→MySQL→JVM→MQ→ES 连贯追问 > **时长**:约 33 min ## 并发与锁 - 说一下synchronized和ReentrantLock的区别? - 微服务多实例下,JVM级别锁锁不住资源,有什么解决方案? - Redis和ZK实现分布式锁,各有什么优缺点和不同? - 你对Redis的部署方式了解吗?你们项目怎么部署的? - 假如Redis加锁后主节点挂了,从节点被提升为主,锁没同步导致丢失,怎么解决? ## MySQL - 你们项目用什么数据库?MySQL调优有经验吗? - 具体怎么从十多秒优化到2秒的? - 数据量大的情况下,分页越深越慢,有什么解决方案? - 对于MySQL事务你有了解吗? - 说一下MVCC原理。 - 你们代码上怎么使用事务的? - 注解方式使用事务有哪些注意点? - 代理层面事务失效有哪些解决方法? ## JVM - JVM是怎么把对象判定为垃圾的? - JDK版本?垃圾回收器?G1相对之前的回收器有什么改变? - 怎么分析OOM的?具体过程? ## 消息队列与搜索 - 项目上消息队列用的什么?Redis做MQ比Kafka/RocketMQ有什么缺点? - ES在项目中扮演什么角色?有什么作用? - 倒排索引的原理? - 分布式选举你了解哪一块? ## Spring - 你们项目用Spring Boot还是Spring Cloud? - Spring Boot自动配置的原理? - 你们怎么对接口参数校验的? ## 编码题 - (投屏做题)面试官投屏题目,候选人截图后做题。 --- # 十、海颐 — Java开发(2026-05-13) > **特征**:传统 Java 八股面,覆盖面广(Java基础 / Spring / 数据库 / Redis / 消息队列) > **数据库**:公司主要用 Oracle 和高斯数据库 ## Java 基础 - 说一下 JRE 和 JDK 的区别。 - 说一下 StringBuilder 和 StringBuffer 的区别。 - 方法中的 IO 流分为哪几种? - HashMap 的底层结构是? - 什么是面向对象?封装、继承、多态是怎么理解的? - 了解过垃圾回收吗?大概讲一下。 ## Spring - 你说一下 Spring 的注入方式有哪一些? - 再说一下你对 IOC 的理解。 - 说一下 Spring 和 Spring Boot 的区别。 - Spring Boot 的自动配置原理是什么? ## 并发 - 那你说一下乐观锁跟悲观锁吧。 ## 数据库 - Oracle 或者说华为的高斯数据库有没有了解过? - 那你说一下索引失效的场景。 - 你之前做的这些项目里,单表的查询量有多大? - 在 SQL 调优这一方面说一下有没有什么经验。 ## Redis - Redis 具体支持哪些数据类型? - 那你说一下缓存雪崩的理解。 - Redis 的持久化… ## 消息队列 - 消息队列这一块,Kafka 跟 RocketMQ 对比,各自适合什么场景? - 那一般 Kafka 在什么情况下会出现丢消息的情况? ## 项目与软性 - 你在做的项目中有遇到什么难题吗?怎么解决的? - 能不能接受出差? --- # 十一、有赞 — Java开发工程师(2026-05-07) > **场次**:第 1 场面试 | **时长**:最长的一场 > **特征**:极致追问链——ThreadLocal 从用法问到线程池原理再绕回到 ThreadLocal 问题,形成闭环 > **MCP/Skill 区分追问 7 层深** ## 项目深挖 — 多 Agent 编排框架 - 这个东西你能介绍一下吗?为什么要做?核心架构是怎样的?解决了什么问题? - 就那个多 Agent 编排的框架。(聚焦澄清) - 你这个是大学的时候自己做的一个人对? - 那我就问你现在公司项目 — 沙箱编排平台是公司项目里做的? - 我看里面提到用 CAS 那个状态更新机制,为什么不用 synchronized 或者是分布式锁呢? - 那 K8S 资源为什么要统一打环境标签呢? - 环境标签主要是说控制资源? - 这个标签打好之后的整个作用是什么? - 资源不足时清理的优先级类似于这种规则是吧? - 还有别的用处吗? ## 项目深挖 — MCP Gateway + Skill - 我看你简历里在 MCP Gateway 做了 OpenAPI 到 MCP 的自动转换。 - 你做这个的时候,哪些是最难处理的? - 转化为 MCP 的 Tool 定义,里面会有很多难点,最难的几个点是什么? - 你在里面主要做什么工作呢? - 这个如果是你要来做的话,肯定会遇到很多问题。 - MCP 的 Tool 需要描述才能让 AI 判断 — 那接口文档里没有描述的话怎么办? - 所以说跨团队推动协作也是很重要的一个环节? - 这个也是一个比较难的点? ## MCP vs Skill 区分(7 层追问) - 你平时用 skill 吗? - 也会写是吗? - MCP 和 Skill 和 Agent 分别是指什么?它们都分别带的是什么能力? - MCP 和 Skill 的话就是一些约束和一些 model 是吧? - 那 MCP 和 Skill 有什么区别?各自用在什么场景? - 如果 Skill 只是约束+prompt,我直接在 System Prompt 里写不行吗?为什么还要 Skill? - 那 skill 里面都包含什么东西? - Skill 为什么不能只是 prompt? - 如果是 prompt 的话,直接在 system prompt 里面写不就行了? ## OpenClaw / Memory - 你平时了解过 OpenClaw 吗? - OpenClaw 核心定位是什么? - 那你平时用它什么场景,解决什么问题? - 你去学习了怎么样?学到了什么? - 刚才这些记忆分为几个部分?每个部分存在哪些地方? - 他这个记忆关于哪几种记忆?每个记忆存储在哪?以什么方式存储? ## ThreadLocal 深度追问(闭环) - 我看你简历里面对 JUC 并发工具 ThreadLocal 比较熟悉,那是什么? - 它用在什么场景? - 使用的话会有什么注意的点? - 一个请求在线程池里,如果中间调了异步线程,ThreadLocal 会不会丢? - 那我还能从子线程里面拿到主线程的 ThreadLocal 吗? - 那 ThreadLocal 在线程池里面会有什么危险吗? - 那为什么会脏掉呢? - 我们现在来看一下线程池的运行原理是什么?怎么运行的? - 那如果这个线程一直运行,它内部的运行机制是怎么样的? - 那我用完的线程,如果执行完之后呢? - 那在线程池这个运行机制下 ThreadLocal 会有啥问题?再回头来看。 ## HashMap / ConcurrentHashMap - HashMap 和 ConcurrentHashMap 有什么区别吗? - 那 resize 为什么会有危险? - Reset 方法你看过源码?会有什么问题? - 这是 JDK 1.7 的是吧?1.8 是什么方式扩容的? - 1.7 的话 HashMap 扩容会有什么危险? - 尾插法最终会导致什么问题? --- # 十二、跨公司同类题归并索引 > 以下索引将 13 场面试中考察相同/相似知识点的题目归并到一起,方便针对性刷题。 > 格式:`题目概要` → 来源公司 ## AI Agent / Multi-Agent 编排 | 考察点 | 出现公司 | |--------|---------| | Multi-Agent 编排架构设计 | 华大制造、广州大娱、OPPO、中泓一线、北京用友、有赞 | | Agent 框架选型(ADK/LangChain/Spring AI) | 华大制造、广州大娱、OPPO、安克创新、北京用友、北京用友 | | Skill 的含义/加载/自进化 | 华大制造、广州大娱、安克创新、OPPO、北京用友、有赞 | | Agent 工具调用机制(Function Call 原理) | 华大制造、广州大娱、中泓一线 | | Agent 上下文记忆管理(Memory) | 中泓一线、有赞 | | Chatbot → Agent 的核心跨越 | 广州大娱 | | 并行 Agent 的失败处理(部分成功 vs 整体失败) | 北京用友 | ## RAG / Embedding / 向量数据库 | 考察点 | 出现公司 | |--------|---------| | RAG 完整流程(切分→Embedding→检索→生成) | 中泓一线 | | Embedding 模型选型(bge / OpenAI / m3e) | 中泓一线 | | 向量数据库选型(PG Vector / Milvus ) | 中泓一线 | | PG Vector 索引类型(IVFFlat / HNSW) | 中泓一线 | | 向量归一化(L2 / 余弦相似度) | 中泓一线 | | 向量维度 trade-off(1024 vs 3072 vs 128) | 中泓一线 | | 召回算法(余弦相似度 / KNN / Reranker) | 中泓一线 | | 异构数据向量化(文本/语音/视频) | 中泓一线 | | 大模型微调训练方式(LoRA/QLoRA/SFT/RLHF) | 中泓一线 | ## MCP / 工具调用 / Function Call | 考察点 | 出现公司 | |--------|---------| | MCP 协议理解(解决什么问题) | 华大制造、北京用友、安克创新、中泓一线 | | MCP vs Skill 区别 | 安克创新、有赞 | | MCP 网关架构(鉴权/限流/降级/缓存) | 华大制造、OPPO、探迹、中泓一线、北京用友 | | MCP vs A2A 区别 | 北京用友 | | OpenAPI → MCP Tool 自动转换 | 华大制造、有赞 | | 网关高并发处理(限流方案) | 华大制造、探迹 | ## Java 并发 / 锁 / 线程 | 考察点 | 出现公司 | |--------|---------| | synchronized vs ReentrantLock 区别 | 恩士讯、北京用友 | | CAS 机制理解 | 有赞、探迹、北京用友 | | AQS 原理 | 北京用友 | | ThreadLocal 使用场景与内存泄漏 | 中泓一线、有赞 | | ThreadLocal 在线程池中的问题 | 有赞 | | 线程池运行原理 | 有赞 | | HashMap vs ConcurrentHashMap | 有赞 | | HashMap resize 扩容问题(1.7 头插法死循环 / 1.8 尾插法) | 有赞 | | 乐观锁 vs 悲观锁 | 海颐 | | 分布式锁(Redis vs ZK) | 恩士讯 | | Redlock / Redis 锁丢失问题 | 恩士讯 | ## 微服务 / 分布式 / Spring | 考察点 | 出现公司 | |--------|---------| | 微服务跨服务用户上下文传递(ThreadLocal + Redis + 网关) | 中泓一线 | | Spring Boot 自动配置原理 | 恩士讯、海颐 | | Spring IOC / DI 注入方式 | 海颐 | | Spring vs Spring Boot 区别 | 海颐 | | Spring Cloud / 微服务生态 | 中泓一线 | | CAP 理论 | 中泓一线 | | 分布式选举 | 恩士讯 | | 模板方法模式 | 中泓一线 | ## MySQL / 数据库 / 索引 | 考察点 | 出现公司 | |--------|---------| | MySQL 索引实现(B+树) | 拼多多 | | B+树 vs 二叉树对比 | 拼多多 | | 聚簇索引 vs 二级索引 | 北京用友 | | 倒排索引原理(ES) | 恩士讯、北京用友 | | 索引失效场景 | 海颐 | | SQL 调优经验(分页深坑优化) | 恩士讯、海颐 | | MVCC 原理 | 恩士讯 | | 事务注解失效场景 | 恩士讯 | | MySQL 查询优化 | 拼多多、北京用友 | ## Redis / 缓存 / 消息队列 | 考察点 | 出现公司 | |--------|---------| | Redis 数据结构 | 海颐、北京用友 | | Redis 缓存雪崩 | 海颐 | | Redis 持久化 | 海颐 | | Redis 分布式架构 | 中泓一线 | | Redis 做 MQ vs Kafka/RocketMQ 对比 | 恩士讯 | | Kafka 偏移量 / Rebalance | 中泓一线、拼多多 | | Kafka vs RocketMQ 场景选择 | 海颐 | | Kafka 重复消费/丢消息 | 拼多多、海颐 | ## DevOps / K8S / CI/CD | 考察点 | 出现公司 | |--------|---------| | CI/CD 流水线理解(Jenkins→构建→镜像→部署) | OPPO | | K8S 滚动更新 / 健康检查探针 | OPPO(预测) | | K8S 环境标签 / 资源管理 | 有赞、探迹 | | 容器沙箱 vs 普通容器 | 华大制造、北京用友 | | 离线部署经验 | OPPO | | DevOps 方向认知 | OPPO | ## 计算机网络 / 安全 | 考察点 | 出现公司 | |--------|---------| | XSS 攻击 | 北京用友 | | 双因素认证 | 北京用友 | | 登录鉴权 | 北京用友、探迹 | | TCP 三次握手/四次挥手/TIME_WAIT/拥塞控制 | OPPO(预测) | ## 前端 | 考察点 | 出现公司 | |--------|---------| | JS 创建对象 | 中泓一线 | | Vue 拦截器 | 中泓一线 | | CSS 定位布局 | 中泓一线 | | 前端了解程度 | 中泓一线、北京用友 | ## 个人 / 职业规划 / Relocation | 考察点 | 出现公司 | |--------|---------| | 离职原因/离职时间 | 几乎所有公司 | | 居住地 / 通勤 / relocation | 中泓一线、华大制造、安克创新、OPPO、北京用友、探迹、北京用友 | | 职业规划(工程 vs PM) | 安克创新、华大制造 | | 语言偏好(Java vs Python vs Go) | OPPO、安克创新 | | 加班态度 | 华大制造 | | 出差意愿 | 海颐 | | 成就感来源 | 华大制造 | ## 开放设计题 / 编码题 | 考察点 | 出现公司 | |--------|---------| | 短链接系统设计 | 拼多多 | | BI 数据分析智能体设计 | 广州大娱 | | 垂直观测链路系统设计 | 探迹 | | 微服务用户上下文传递设计 | 中泓一线 | | String to Integer 编码 | 拼多多 | | 投屏做题 | 恩士讯 | ## 学习习惯 / 技术视野 | 考察点 | 出现公司 | |--------|---------| | 技术学习途径 | 中泓一线、安克创新 | | AI Coding 工具使用(Claude Code / Codex) | 探迹、北京用友、安克创新 | | 中美 AI 差距看法 | 安克创新 | | 八股文态度 | 安克创新 | | GitHub / 技术博客 | 安克创新 | --- > **统计**:13 场面试,覆盖 10 家公司,累计提取约 **350+ 个独立提问**(含追问链)。 > 面试时段:2026-05-07 ~ 2026-05-26(20 天) > 面试类型:Java 八股面(海颐/恩士讯)、AI 项目深挖面(华大制造/广州大娱/北京用友)、总监全景面(中泓一线)、综合性面(拼多多/OPPO/有赞)
某中型AI设备研发AI Agent开发岗一二面面经(已拿offer)
> 趁对话记忆还没转到summary状态分享一波,5-10年经验档位基本还是项目上的问题为主全程无八股。本人年纪是过35的,好不容易拿到这个保底。公司是研发AI产品的甲方自研,岗位聚焦公司内部AI提效。驴算找到了下一阶段工作就是继续找马,抓紧这波AI大航海时代的节奏。 > > 事先声明:这篇面经含糖量极高 ### 面试概况 - 岗位方向:AI Agent 开发 - 一面:双面试官,线上飞书,约 50min,技术初筛 - 二面:现场,约 55min,偏技术深度 + 场景设计,和一面相同面试官 - 三四面略,HR 和 Boss 面常规 --- ### 一面面试问题 1. 自我介绍 + 最近做过的项目介绍 2. 项目的整体架构是什么样,你做了哪些 AI 提效工作 3. 说说项目里的一些技术栈和具体的运用,以及介绍一些运维工作内容 4. 团队规模简单介绍下,人员构成和分工情况 5. 云原生相关服务器怎么部署有了解吗?简单说下 6. 实时监控工具是怎么搭的?用了什么技术 7. 你之前软件有哪些安全策略,本地安全排查怎么设计 8. 讲讲你们之前项目 RAG 是怎么做的 9. 说说你们 AI Agent 项目 LangGraph 怎么搭的 10. 说一下你对 AI Agent 和 LLM 的深度理解 11. AI 在系统运维有哪些运用 12. 平时用的 AI Vibe Coding 工具有哪些,有什么好的使用建议 13. 如果大数据做 AI 化你有什么好的想法? 14. 项目中遇到什么问题?怎么解决的 15. 讲讲你之前系统数据规模,有哪些并发场景 16. 根据简历问了一些指标问题(兄弟们面试前简历要过一遍尤其是指标,不然这里容易吃亏) …… 一面我个人总结下来还是偏商务,大概也能知道他们想做的是 AI 运维系统,问的比较杂更像技术初筛 --- ### 二面面试问题 1. 项目部分又深扒了一下 2. 当初大模型选型看重的是什么角度和指标?具体说下 3. AI 系统设计场景题 1:大概是给定一些数据,怎么落到向量数据库那边 4. AI 系统设计场景题 2:如果要设计一个 XX 一样的系统,你的 AI 改造想法是什么?怎么一步步实现功能 5. 顺着简历问了下一些项目功能的实现细节 6. 介绍了一个公司内部的软件,有什么 AI 提效的想法,简单实现让我说一下 7. LLM 参数规模和微调的事大概问了下 8. 对 context engineering 的理解,上下文压缩技巧和原理 9. 我有一些接口,想做一个和 XX 系统的对接具体怎么实现?团队如何分工开发如何部署简单说下 10. 参数指标方面二次拷问,怎么进一步优化 11. 如果整套系统重构 AI 怎么设计都有哪些难点 12. 项目里 prompt 是怎么优化的,优化后的效果具体说下 最后 10 分钟基本上闲聊了,估计面试官那边也有底了最后反问环节。 …… 先回忆起这么多问题了,二面开始偏运动了,还是之前的面试官,原来之前搁那边装唐呢。我也部分装唐其实不是我想装,是我真没想过类似的场景,好在有模板可以套 --- ### 我的面试总结 这次整体感受是 AI 初年的面试没有想象中那么变态,问的 resource 层面其实不多,主要就围着那几个框架转:RAG、Transformer、LangChain、LangGraph,再加上 AI Agent 的一些基础知识和模型选型、微调。当然要看你总包要多少,要得越高难度才会指数级上升,你再指数级退避装唐就行。 **场景设计部分:** - 数据落到向量数据库那道题,我提了 LangGraph + LangChain 结合的方案,然后讲了怎么设计各个 state 和条件边路由,又讲了对应工具怎么设、怎么按需调取,顺便把多路调用、断点重试、Guardrails 输入输出安全机制这些也塞进去了。 - 设计内部提效系统那道,对面的软件我连名字都没印象,还现问了一下详情。然后我顺着主要功能,先拆解出具体功能点的 AI 实现方式,又讲了怎么用 AI 整需求文档和方案设计,然后继续套到熟悉的 LangGraph 架构上,说了一些 state 设计要点,再分解功能,讲怎么设计 AI 工具和 Skills。不熟悉的我就套模板,这关算是惊险过去了。 **其他技术点:** - 实时监控工具的部分,还好 AI 零代码最后几章有看到,能接住。 - 模型选型、context engineering 和上下文压缩、prompt 优化这些,基本都围绕项目实际效果去讲,优化前优化后对比着说。 - 一面偏商务,问得很杂,但也能感觉到他们想做的是 AI 运维系统。二面就直接上强度,场景设计题很吃现场拆解能力和模板套用能力。 **一些个人心得:** 多学 AI 相关的知识和 Vibe Coding 就完事了。多面几次,话术和理解自然就能逻辑自洽、自圆其说。偶尔装下唐,不熟悉的就先请教下面对,给面试官一个显摆的机会,然后再说自己的看法和技术层面的见解,营造一种组内技术探讨的氛围。不过这招要慎用,不同面试官不同策略,我这次刚好赶上吃这套的。 ## 写在最后 这次有保底offer就不慌了,后面就是继续战斗爽,万事开头难加油吧大家!拿到offer其实我内心反倒毫无波澜,开始反思是不是之前的面试从第三人称视角看,自己就是个唐人。唐了就多学多看多练说话多面试多么复盘多大点事,自在极意要么就是运气差就这么简单。
某中小厂导航业务AI算法工程师岗位一面面经
> 趁对话记忆还没丢失分享一波,5-10年经验面试前一刻回看JD才发现是算法岗(好在有神奇的AI,资料扔一波让AI总结,可惜只有10分钟了粗略看了下心里有了数),基本都是些项目上的问题扩展了一下算法,几乎没有八股。 ## 面经问题 1. 自我介绍 + 最近做过得项目介绍 2. 项目里的一些技术栈都是怎么搭的(主要问了python和java的部分) 3. 项目为什么不用Spring Cloud Alibaba,你知道Spring Cloud Alibaba一些特性吗? 4. LangChain和LangGraph在项目里的技术实现是什么样,你简历提到的StateGraph实现是如何运作的 5. 讲一下具体拆分的文档类型,文档拆分的规则具体讲一下 6. 面试官追问了下PDF拆分涉及到哪些算法和过滤规则 7. 讲一下文档是如何一步步存到向量数据库的,涉及到哪些算法具体说一下 8. 大模型的非确定性输出可能导致生产事故,你们在生产环境是如何确保输出安全的 9. 你项目里用户提供的上下文是如何运转的 10. 讲一下项目数据处理一些重要节点,以及LangGraph对应结构 11. 刚才提到的持久化,还做了哪些数据持久化,分别是怎么保存不同类型数据 12. RAG知识准确率什么指标,是怎么测试的得到这个指标的 13. 有了解pytorch嘛,项目中有用到吗,具体说说? 14. 有没有参与项目选型,具体的考量是是什么指标 15. 有大模型微调的经验吗,微调用到什么算法 16. 一些性能指标优化问题,这里不展开了 17. 未来优化点在哪,可以进一步提高AI agent相关的效率? ...... (先列举这么多问题,后面回忆起来再补充) ## 我的面试总结 我先进行了自我介绍,并简要介绍了最近参与的项目,这部分没有过多展开项目所有技术细节方便面试官追问。关于技术栈,我说明了项目Java+Springboot主体部分的架构,以及Python分别实现了哪些功能及其作用。Spring Cloud Alibaba的问题算是为数不多的八股,我简述了我所了解的该框架特性,并解释了项目中未采用的原因。 对于LangChain和LangGraph,我提前做了准备,详细说明了它们在项目中的技术实现,包括StateGraph的运作方式,最后总结了我们为什么选择LangChain和LangGraph来规划Agent,以及它们各自发挥的具体作用。文档拆分部分,我举了拆分PDF和Word的例子来讲规则;当追问PDF拆分涉及的算法和过滤规则时,我把之前做AI超级智能体残存的RAG文档拆分记忆整理了一下做了回答。 关于文档存入向量数据库的流程,我把从解析、分块到emebedding、索引以及如何打metadata标签完整步骤说了一遍,既然是算法岗,也把涉及到的具体算法和运算公式铺开讲清楚了(这部分不熟面对追问有的问题会懵一下,造成不必要的重复回答,其实应该思考一下再回答)。大模型非确定性输出的风险问题很经典,我大致说明了生产环境中我们采用的校验、规则过滤与后处理等安全兜底方案。对于用户上下文的运转,当时稍有些困倦,我讲了多轮对话历史如何持久化,如何做过滤、筛选和拦截,以及在提交给大模型之前如何对上下文进行补全。 数据处理的关键节点和LangGraph对应结构我事先有准备,展开做了介绍。在持久化方面,除了刚才提到的上下文,我根据项目情况补充了其他数据持久化方式,以及不同类型数据的分别保存方法。RAG知识准确率指标这一块我了解不算很深,大致描述了我们的测试方式以及如何得到该指标。PyTorch虽然没有在我的项目里使用,但我结合自己所了解的其他Python相关技术做了关联说明。 项目选型上,我参与了Embedding模型的选型,详细说明了考量的各项指标,也在追问中解释了线上、线下场景的差异。微调经验方面,我重点介绍了LoRA微调算法,并扩展讲解了如何从小范围低秩适配映射到全量参数的原理。性能优化问题上,我分享了引入AI Agent的优化、数据库接口优化以及RAG的扩展优化等实际案例。对未来可以进一步提升AI Agent效率的优化点,我也简要谈了自己的思路。 ## 写在最后 全程大概花了一小时,虽然安排在下午有点犯困,但结果比我预想的要好不少,算是我近期AI Agent方向含金量最高的一次面试。面试官最后指出我可以先停顿思考,组织总结后再回答,避免内容重复——我虚心接受,也会在后续面试准备中再加强。从反馈来看,这一面通过的机会应该很大,静待二面通知。 PS:面试完踏踏实实睡了个午觉,健身时脑子里还回荡着面试的对话,面试官确实有水平,问题都被他认真听进去了。不管结果如何,这都是一次“战斗爽”的面试经历
云仓集团 中小厂
面试问题 ---- 1. 自我介绍,离职这段时间内做了什么?外包项目做的怎么样?什么类型的? 2. 离开上家公司的原因是什么? 3. 最有成就感的事情?分享两件?MCP用过吗?什么情况下使用?Skills写过吗? 4. 外包项目有没有用户权限管理?管理系统权限怎么做?核心表是哪几张? 5. RuoYi的优点有哪些?RuoYi的缺点呢? 6. 除了若依之外,你还研究过哪些开源的框架项目?芋道和若依相比有什么区别 7. 你说一下事务的作用是什么?你在项目中哪里用到事务? 8. 那Spring事务的作用呢?什么场景会使用? 9. 如果我对一张表做修改操作,我需要用事务吗? 10. 你在项目里哪些地方有用到过 AI ?具体是怎么应用的?中间有遇到什么问题? 11. 你拿到一个项目,你怎么做技术方案设计? 12. 假如说后台管理其中有一个页面加载非常慢,你是怎么去解决这个问题? 13. 什么情况下不走索引? 14. 分库分表过吗?什么情况下分库分表 15. 你说一下雪花算法,它的原理是什么? 16. 那假设你的项目要部署到两台系统上,你怎么样让它高可用呢? 17. 怎么设计一个秒杀功能? 18. 在管理后台里面,经常会用到导出这个功能,系统我有 100 个或者 1000 个用户,他可能使用者,我导出的话,我怎么样怎么样做一个导出,就是让大家不至于说这个导的就直接系统死掉。 19. 假设我有一张 3000 万的表。我查询,比如说我每条查 100 嘛。我查询第一百页的数据,跟跟第 10 万页的数据,返回的速度是一样吗?为什么不一样? 20. 有做过服务器部署的,用了什么服务器?怎么编写一个Docker命令部署? 21. 怎么保证Docker命令里面的日志不丢失? 22. 反问 面试总结 ---- 1. 回答问题表达逻辑不清晰 2. 事务的作用和Spring事务使用,回答过于简单举例。应该提到 @Transactional 注解,isolation(隔离级别),propagation(传播行为),rollbackFor(回滚条件) 3. 雪花算法原理回答的不够清楚 4. 秒杀功能没有回答上 5. 项目业务讲的太啰嗦,并且重点不够突出 6. RuoYi框架的权限管理核心表,回答不够准确,遗漏了关键表。 ```sql 改进建议 :应该回答完整的5张核心表: - sys_user - 用户表 - sys_role - 角色表 - sys_menu - 菜单表 - sys_user_role - 用户角色关联表 - sys_role_menu - 角色菜单关联表 ```
Java 后端面试题(一)
# Java 后端核心面试题 --- ## 一、如何保证方法线程安全? **问题:** 写了一个方法,如何保证该方法是线程安全的? **答案:** | 方式 | 说明 | |------|------| | 无共享变量 | 方法内部仅使用局部变量,不共享成员变量,天然线程安全 | | 使用锁机制 | `synchronized`(隐式锁)、`Lock`(显式锁),保证同一时刻只有一个线程执行临界区代码 | | 使用线程安全类 | 如 `ConcurrentHashMap`、`CopyOnWriteArrayList`、`Atomic` 原子类等 | | 变量不可变 | 使用 `final` 修饰共享变量,禁止修改 | | 线程私有 | 通过 `ThreadLocal` 让每个线程拥有独立变量副本,避免共享 | --- ## 二、synchronized 锁的级别及升级机制 **问题:** `synchronized` 是重量级锁还是轻量级锁?是一开始就是轻量级,还是一直不变? **答案:** `synchronized` 并非固定锁级别,JDK1.6 后做了锁优化,存在**锁升级**机制: ``` 偏向锁 → 轻量级锁 → 重量级锁(只能升级,不能降级) ``` | 锁级别 | 触发条件 | 实现方式 | 特点 | |--------|----------|----------|------| | 偏向锁 | 无竞争时默认开启 | CAS 记录线程 ID | 几乎无开销 | | 轻量级锁 | 出现轻微竞争(交替执行) | 自旋实现 | 无内核态切换 | | 重量级锁 | 竞争激烈、自旋失败 | 依赖操作系统内核 | 阻塞线程,开销大 | > **总结:** 传统 `synchronized` 是纯重量级锁,现在是自适应升级的混合锁。 --- ## 三、@Transactional 异常未回滚问题分析 **问题:** 方法加 `@Transactional`,抛出异常但数据库未回滚,如何排查分析? **答案:** 常见原因及排查方向: | 序号 | 原因 | 说明 | |------|------|------| | 1 | 异常类型不对 | 默认仅捕获运行时异常(`RuntimeException`)和 `Error`,普通受检异常 `Exception` 不会回滚,需手动指定 `rollbackFor = Exception.class` | | 2 | 异常被内部捕获 | 代码中 `try-catch` 吃掉异常,事务切面感知不到异常,不会触发回滚 | | 3 | 事务失效(同类内部调用) | 同类方法内部调用加事务的方法,AOP 无法增强,事务失效 | | 4 | 方法权限问题 | 事务注解加在 `private` / `protected` 方法上,Spring AOP 无法拦截 | | 5 | 数据库引擎不支持事务 | 表引擎为 MyISAM,改为 InnoDB | | 6 | 传播属性配置错误 | 传播行为设置为 `NOT_SUPPORTED` 等,强制非事务运行 | | 7 | 多数据源 / 事务管理器配置异常 | 注解指定的事务管理器与数据源不匹配 | --- ## 四、同类调用、事务嵌套导致事务失效原因 **问题:** 调用同类方法为什么事务失效?事务嵌套为何也会失效? ### 4.1 同类内部调用失效 Spring 事务基于**动态 AOP 代理**实现,只有外部通过代理对象调用方法,才会被切面拦截、开启事务。同类中 `this.方法()` 是直接调用原对象,不走代理,事务注解无效。 **解决方案:** - 自身注入自己 - 使用 `AopContext` 获取代理对象 - 拆分方法到不同类 ### 4.2 事务嵌套失效 主要由事务传播机制导致: | 场景 | 行为 | |------|------| | 外层无事务、内层 `REQUIRED` | 内层独立事务,互不影响 | | 外层有事务、内层 `REQUIRED` | 并入外层事务,内层异常会导致整体回滚 | | 内层 `REQUIRES_NEW` | 新建独立事务,但部分场景因连接、代理问题出现异常 | | 内层吞掉异常 | 外层无法感知,造成回滚异常 | --- ## 五、事务传播机制、四大特性、原子性理解 **问题:** 事务传播机制有几种?事务特性有哪些?原子性如何理解? ### 5.1 事务传播机制(共 7 种) | 传播行为 | 说明 | |----------|------| | `REQUIRED` | 支持当前事务,不存在则新建(默认) | | `SUPPORTS` | 支持当前事务,不存在则以非事务运行 | | `MANDATORY` | 必须在事务中运行,不存在则抛异常 | | `REQUIRES_NEW` | 新建事务,挂起当前事务 | | `NOT_SUPPORTED` | 以非事务运行,挂起当前事务 | | `NEVER` | 以非事务运行,存在事务则抛异常 | | `NESTED` | 嵌套事务,外层回滚则内层也回滚,内层回滚不影响外层 | ### 5.2 事务四大特性(ACID) | 特性 | 英文 | 说明 | |------|------|------| | 原子性 | Atomicity | 事务内所有操作要么全部成功,要么全部失败回滚 | | 一致性 | Consistency | 事务执行前后,数据必须保持一致状态 | | 隔离性 | Isolation | 并发事务之间互不干扰 | | 持久性 | Durability | 事务提交后,数据永久保存 | ### 5.3 原子性理解 一个事务内的所有数据库操作要么全部成功提交,要么全部失败回滚,不可部分执行。比如下单扣库存、生成订单,两个操作必须同时生效或同时撤销。 --- ## 六、Spring AOP 执行阶段 & 循环依赖解决方案 **问题:** Spring AOP 发生在 Bean 生命周期哪个阶段?Spring 循环依赖如何解决? ### 6.1 AOP 执行阶段 AOP 动态代理在 **Bean 初始化完成后、放入单例池之前** 生成代理对象。 ``` Bean 核心流程: 实例化 → 属性填充 → 初始化(@PostConstruct / init-method)→ AOP 代理 → 存入单例池 ``` ### 6.2 循环依赖解决 Spring 仅能解决**单例 Bean 基于 setter 注入**的循环依赖,依靠三级缓存: | 缓存级别 | 存储内容 | |----------|----------| | 一级缓存 | 完整可用的单例 Bean | | 二级缓存 | 已实例化、未完成属性填充的半成品 Bean | | 三级缓存 | Bean 的工厂对象(提前暴露实例) | **原理:** 实例化后提前暴露半成品,打破循环引用;构造器注入、多例 Bean 无法解决循环依赖。 --- ## 七、项目中线程池使用、作用与选型原因 **问题:** 项目中如何使用线程池?为什么使用线程池?解决了什么问题? ### 7.1 使用方式 项目一般使用 `ThreadPoolExecutor` 手动创建线程池(**禁止 `Executors` 默认工厂类,避免 OOM**),根据业务设置核心线程、最大线程、队列、拒绝策略;用于异步处理、批量任务、文件导出、消息消费等场景。 ### 7.2 使用原因 & 解决的问题 | 优势 | 说明 | |------|------| | 降低性能开销 | 避免频繁创建 / 销毁线程 | | 统一管理线程 | 控制并发数量,防止无限创建线程导致 OOM | | 提升吞吐量 | 复用线程、任务排队 | | 提升稳定性 | 提供拒绝策略、监控、超时机制 | --- ## 八、大数据量导出 + 实时进度展示实现 **问题:** 大数据导出场景,如何实现展示导出进度(1%、5%…)? **答案:** 整体采用**异步导出 + 进度存储 + 前端轮询**方案: ``` 1. 前端发起导出请求 → 后端开启异步线程执行导出任务 → 立即返回任务 ID 2. 每处理一批数据 → 将当前进度、任务状态存入 Redis / 内存 / 数据库(key = 任务 ID) 3. 前端根据任务 ID 轮询接口 → 查询 Redis 中的进度并展示 4. 导出完成 → 将文件地址写入缓存,前端拉取文件下载;异常则标记失败状态 ``` **优化:** 数据分批查询、分批写入文件,避免一次性加载全量数据内存溢出。 --- ## 九、死锁产生条件、排查、规避方案 **问题:** 什么情况会发生死锁?如何处理死锁?开发中如何避免? ### 9.1 死锁四大必要条件(同时满足才会死锁) | 条件 | 说明 | |------|------| | 互斥条件 | 资源同一时刻只能被一个线程占用 | | 请求与保持条件 | 持有资源的同时请求其他资源 | | 不可剥夺条件 | 已获得的资源不能被强行释放 | | 循环等待条件 | 多个线程形成循环等待资源的关系 | ### 9.2 线上处理死锁 | 场景 | 排查方式 | |------|----------| | MySQL 死锁 | `SHOW ENGINE INNODB STATUS` 定位死锁 SQL | | Java 线程死锁 | 使用 `jstack`、`Arthas` 排查阻塞线程与锁持有关系 | | 临时恢复 | 重启服务、终止卡死请求 | ### 9.3 代码规避死锁(破坏四大条件) - **统一锁顺序:** 所有线程按固定顺序获取多把锁 - **加锁设置超时时间:** `Lock.tryLock(time)`,超时自动释放 - **减少锁粒度:** 尽量不嵌套锁 - **避免持有锁时再请求其他锁** --- ## 十、MySQL 排他锁(FOR UPDATE)并发访问效果 **问题:** SQL 加排他锁 `FOR UPDATE`,第一个请求未执行完,第二个请求进来会继续执行还是阻塞? **答案:** | 锁类型 | 场景 | 第二个请求效果 | |--------|------|----------------| | 行级排他锁 | 查询命中索引,锁对应数据行 | 访问同一行 → 阻塞等待;访问其他行 → 正常执行 | | 表级排他锁 | 查询未命中索引 / 索引失效,行锁升级为表锁 | 所有后续请求都会阻塞 | > **总结:** 访问同一条数据必然阻塞;不同行、行锁生效则不阻塞。 --- ## 十一、读锁、写锁(共享锁 & 排他锁)区别 **问题:** MySQL 读锁和写锁有什么区别? ### 读锁(共享锁 / LOCK IN SHARE MODE) - **共享:** 多个线程可同时加读锁,互不阻塞 - **互斥:** 有加读锁时,所有写锁都会被阻塞 - **用途:** 保证查询数据期间不被修改 ### 写锁(排他锁 / FOR UPDATE) - **独占:** 只能有一个线程持有写锁 - **互斥:** 持有写锁后,其他线程的读锁、写锁全部阻塞 - **用途:** 更新、删除、强一致性查询场景 > **口诀:** 读读共享、读写互斥、写写互斥 --- ## 十二、MySQL 调优 & 索引数据结构 **问题:** MySQL 日常如何调优?索引使用什么数据结构? ### 12.1 MySQL 调优方向 | 优化方向 | 具体措施 | |----------|----------| | SQL 优化 | 避免 `SELECT *`、大事务、全表扫描、隐式类型转换;用 `EXPLAIN` 分析执行计划 | | 索引优化 | 合理创建联合索引、遵循最左匹配,删除冗余 / 失效索引 | | 架构优化 | 主从复制、读写分离、分库分表 | | 配置调优 | 调整 Buffer Pool、连接数、超时时间等参数 | | 存储引擎 | 业务表统一使用 InnoDB | ### 12.2 索引数据结构 InnoDB 主键索引、二级索引默认使用 **B+ 树**。 --- ## 十三、B+ 树特点 & 和 B 树的区别 **问题:** B+ 树有哪些特点?对比 B 树有什么不同? ### B+ 树特点 - 所有数据行 / 数据页都存在**叶子节点**,非叶子节点只存索引键,不存完整数据 - 叶子节点通过**双向链表**串联,范围查询、排序效率极高 - 树高度更低,磁盘 IO 次数更少,查询性能稳定 ### 与 B 树核心区别 | 对比维度 | B 树 | B+ 树 | |----------|------|-------| | 数据存储 | 非叶子、叶子节点都存完整数据 | 仅叶子存数据 | | 范围查询 | 需要中序遍历,效率低 | 叶子链表遍历,远快于 B 树 | | IO 次数 | 节点存储数据多,索引少,树更高 | 节点存储索引更多,树更矮,磁盘 IO 更少 | | 查询效率 | 单条查询速度不稳定 | 所有查询都从根走到叶子,性能均衡 | --- ## 十四、设计模式 + 实际业务场景 **问题:** 开发中用过哪些设计模式?举一个场景、模式、解决的问题。 ### 示例 1:策略模式 - **场景:** 订单支付(微信、支付宝、银行卡、余额多种支付方式) - **使用模式:** 策略模式 - **解决问题:** 消除大量 `if-else` / `switch` 判断,新增支付方式只需新增策略类,符合开闭原则,代码易维护扩展 ### 示例 2:单例模式 - **场景:** 全局配置类、工具类、连接池管理 - **使用模式:** 饿汉 / 懒汉单例 - **解决问题:** 保证全局只有一个实例,节省资源,统一全局配置 ### 示例 3:工厂模式 - **场景:** 根据类型创建不同消息推送(短信、APP 推送、站内信) - **使用模式:** 简单工厂 / 抽象工厂 - **解决问题:** 对象创建与业务逻辑解耦,统一创建入口 --- ## 十五、千万级宽表多条件分页查询优化 **问题:** 千万级订单主表、上百字段、多查询条件 + 关联表,分页十几秒,如何优化? ### 分维度整体优化 | 优化维度 | 具体措施 | |----------|----------| | 字段优化 | 宽表拆分为主表 + 扩展表,分页查询只查必要字段,避免查询上百字段 | | 索引优化 | 根据高频查询条件建立联合覆盖索引,避免回表;优化关联表索引 | | 分页优化 | 深分页使用主键偏移分页(`WHERE id > ? LIMIT 10`)替代传统 `LIMIT offset, size` | | SQL 优化 | 简化多表关联,优先小表驱动大表;禁止不必要查询、排序 | ### 架构层面 - **冷热数据分离:** 历史订单归档到历史表 - **引入 ES:** 复杂多条件、模糊查询、分页全部走 ES,MySQL 仅做基础事务 - **读写分离:** 查询走从库,减轻主库压力 - **缓存:** 对高频固定条件的分页结果做缓存 --- ## 十六、分页 COUNT 总数查询慢(全表扫描)优化 **问题:** 分页需要查 COUNT 统计总数,条件多变、全表检索很慢,索引已加,如何优化? ### 区分业务场景,非精准统计 | 方案 | 说明 | |------|------| | 允许近似值 | 使用 MySQL 信息统计表 `information_schema.TABLES` 获取粗略总数,速度极快 | | 允许延迟更新 | 定时任务把总条数、条件统计结果预计算存入 Redis / 统计表,前端直接读取 | ### 精准 COUNT 优化 | 方案 | 说明 | |------|------| | 优先使用主键 / 非空唯一索引 | `COUNT(主键)` 优于 `COUNT(*)`、`COUNT(字段)` | | 复杂多条件 | 将统计逻辑下沉到 ES / OLAP 数据库,专门做聚合统计 | | 分页兜底 | 前端取消实时总数,使用「上拉加载更多」,不再查询 COUNT | | 分区表 | 按时间分区,统计时只扫描对应分区,缩小扫描范围 | --- ## 十七、分库、分表的作用与解决的问题 **问题:** 为什么要分库?为什么要分表?分别解决什么问题? ### 分表(水平分表 / 垂直分表) 解决单表数据量过大问题(千万 / 亿级):单表数据越多,索引、查询、写入越慢,分表把数据拆分到多张结构相同的表,降低单表数据量,提升查询和写入性能。 - **垂直分表:** 将不常用的大字段拆分到扩展表,主表保留高频字段 - **水平分表:** 按规则(如 ID 取模、时间范围)将数据分散到多张结构相同的表 ### 分库 解决单库连接数、IO、CPU 瓶颈问题:单库承载的并发连接数、磁盘 IO、CPU 计算都有上限,分库将数据分散到不同数据库实例,提升整体并发处理能力。 - **垂直分库:** 按业务模块拆分(如订单库、用户库、商品库) - **水平分库:** 同一业务数据按规则分散到多个数据库实例
三本跳槽涨幅超100%,我做对了什么?
# 三本跳槽涨幅超100%,我做对了什么? ## 前言 编程导航小伙伴们大家好,好久没写文章了。校招上岸就欠小y一篇文章,没想到现在都跳槽了才有空写hh 先介绍一下我之前的情况吧 学历:三本,25届毕业生 第一份工作:小厂,Java,算是票务类,b2c,几乎没有并发,12k*14(谈的14,但并没有年终),** 今年年后(春节)开始正式投简历,2月底陆续接到了几家面试,真正面的就两家,一家二面挂,一家offer 第二份工作:小厂,但垂类头部,golang,b2c公司核心营收业务,高并发,**,具体薪资就不方便透露了,但年包在p4-p5水平? 但是可以确定的是,年包**涨幅超过100%**,我到底做了什么?行情是不是真的像一些人说的那样差? ## 在校经历 值得一提的是,**我的跳槽从来不是临时起意**,其实我从拿到第一家offer时就已经开始计划跳槽了。 因为学历的劣势、自己大学期间的松懈、对时间点的不敏感等多种因素,让我在校招期间**惨败**,大概过一下我的在校窗口吧 大一:其实我很早就接触了Java,在刚上大学那个数据就开始看了Java的基础课程,但是有个最大的问题是:**没有人引导**,以至于我并不清楚我现在的水平,也不清楚我到底学到什么程度才算“过关”,当然也不知道面试到底问什么。而且我在大一加入了学生会,极大的压缩了我的时间 大二:我留任了学生会,进一步压缩时间。大二下学期,在一个彻夜难眠的夜晚,加入了编程导航,并开始学习api项目,开始逐步明白企业需要什么样的人,慢慢知道我到底重点学什么 大三:因为外出租房资金压力,选择了**兼职**,这可以说是我最苦逼的一段日子。虽然只有周六周日上班,但是因为兼职的特殊性,其实工作日也会非常的劳累,并且懈怠学习开发。后续接了一个毕设,有一个师兄带我一起写,发现我的**技术严重退步**,我知道我不该继续兼职了,于是在我表姐婚礼前毅然选择离职,选择坚持走程序员行列。这里也感谢我的舍友,我这个期间资金非常困难,一年欠了我舍友将近5k(兼职的钱还了2k)。大三其实是一个非常关键的节点,大家在实习时,我却选择了兼职,不明智的选择 大四:终于,在大三上大四的(秋招窗口),我找到了实习,在用友。得知转正无望,次年三月选择了离职。当然,因为很久没有准备面试,又美美错过了春招时间窗口....然后接下来的时间就是每天打磨项目、修改简历、刷算法......说实话,这段期间看到朋友圈都在出门旅游真的很难受,每天都在**痛苦中前行**。直到六月份,才拿到了第一家公司的offer。坏消息是,这是唯一一个超过10k的offer,好消息是,2c的,这个时候我的跳槽计划油然而生。 其实回头想,选择兼职是错误的决定,你问我后悔吗?确实后悔,但如果不是兼职带来的身体和心灵双重打击,后面又能保持良好乐观心态去“好事多磨”,我可能就慢慢放弃走开发这条路线了,这何尝不是**命运对乐观者的馈赠**呢? ## 第一份工作经历 第一份工作经历,对我来说其实很苦逼,我描述一下,大家可以大概感受感受: 纸面考勤时间:9.30 9 5,不打卡,但是因为小厂老板就在一个办公室,迟到会记仇 工作强度:夯👍,开服首日就开始做需求,后面需求更是无底洞 加班情况:夯👍,周末加班没有加班费,喜欢在周五晚上发版,别人家周五提前走,我们周五11点走。并且周五发版意味着周末稳定oncall,就算不在公司也得在家处理问题。偶尔工作日加班加班到11点甚至凌晨1点,原因是当快到9点时,老板会突然让你搞点什么很急的事,自然而言就得继续干。当然不得不提到最牛逼的是,曾经连续上班26天,还要被压力:**到点就走**(指晚上9点,都997了依旧上压力)、**我有责任你们没有吗**(997都写不完的代码还问我有什么责任) 福利待遇:夯👍,除了基本薪资没有任何合理待遇。之前周末加班至少还有下午茶,后面加班加的多了,演都不演了,什么都不给。甚至今年搬新工区还得**自己买水**,**自己开热点连wifi**。那年终不是至少还有2个月吗?**哈哈当然是骗你的**,公司效益不好,不给年终哦 ## 我是怎么做的? 说实话,我很难受也很焦虑,但同时也很乐观很积极。这很反直觉: 我难受焦虑在觉得工资配不上我的强度;乐观积极在**方向上我不再和之前一样迷茫**。 当前阶段,我知道我要学什么,怎么学,这对我来说就是最大支撑我走下去的动力。老实说,我认为我算是不聪明,至少完全比不上211学生聪明,但是比较“卷”的人。我在这种强度的加持下,还是能坚持做到每天至少学习一小时以上,甚至凌晨12点下班到家也要学习的程度。当然,我不是单纯的卷,给大家分享一下我的学习小秘密: - **承认自己的不足**:永远不要高高在上,才能更清晰认清自己的不足,接受不足并改进 - **保持乐观心态**:杀不死我的只会让我更强大 - **不停的制定计划**:需要有短中长期计划,督促自己慢慢进步。当然,期间肯定不断在修正计划,也完全可以给自己的计划加上放松时间 - **保持对技术的新鲜感**:在ai时代,会有无数的新技术新起,任何技术都有演变过程,会有从前的影子,不要看不起任何技术,尤其是在没有深度体验的前提下 - **不要停留在当前**:很多兄弟应该都是公司项目拉垮,或者因为时间问题只能以简单方案完成,包括我以前。但是这不妨碍我们可以想想更优解,想想这个时候鱼皮会怎么做[旺柴]。技术不会亏待你,**你的所有思考都会转化为你的原始积累** 后面的事就很线性了,依旧是打磨项目、改简历、刷算法,慢慢的到投递简历、面试、复盘的循环中,在每一次复盘中找到自己的不足,改进,一直到拿下offer。另外再给大家分享一些社招的干货吧 - **算法依旧是面试高频**,15k以上岗位几乎必备,但社招要求比较低,**hot100占90%** - **社招卡涨幅是客观事实**,一般很难突破,除非你足够优秀或者有其他的offer去argue或者运气好这家公司刚好不卡 - **复盘很重要**,其实每一场面试内容虽然有细小的差异,但大体框架是定的。所以需要复盘找到自己项目的缺陷,慢慢优化 - **面试犹如吟唱**,比如我社招第一次面试问了tcc我不会,复盘后每次我都会提这个难点,我女朋友在旁边都知道什么是“空回滚”和“悬挂”了 - **八股依旧有**,但基本上只剩数据库和redis了 - **Java岗转go很简单**,几乎没什么公司会卡语言,也不用特意准备一份go的简历,不然还会问你go的八股。Java转go基本上不问Java八股也不问go八股 - **ai一定要有所体现**,属于面试官可以不问,但你不能不会。尤其是对于vibe coding,大一点的公司基本上都会提供一定的额度支持你使用,我们公司甚至100%报销。所以一定要有所体现,可以考虑好诸如怎么看待ai发展、ai能不能取代程序员等一系列问题 ## 结语 写到这里,差不多就到尾声了。 回头看这一路,从三本院校的迷茫,到第一份工作的“折磨”,再到今天的涨幅破百,我从来不觉得自己有多牛逼,也不觉得自己运气有多好。如果非要说我做对了什么,那就是在每一个想放弃的节点上,我都选择了再坚持一下。 写这篇文章并不是想凡尔赛,更不是想贩卖焦虑。我太清楚那种“看着别人offer一个接一个,自己简历石沉大海”的滋味了,也太清楚那种“工资低强度大,看不到未来”的窒息感了。我只是想告诉每一个还在路上的兄弟: - 学历不是终点,是起点。三本能逆袭,二本一本、92更可以,关键是你愿不愿意持续投入 - 第一份工作不理想没关系,把它当成跳板,而不是终点。烂公司也能学到东西,至少教会你“什么是不能忍的” - 跳槽不是冲动,是规划。从入职那天就该思考下一步,而不是被裁了才慌 - 行情差是真的,但优秀的人永远稀缺也是真的。与其抱怨大环境,不如打磨自己 最后,特别感谢小y 鱼皮,让一个迷茫的三本学生在大二那个夜晚找到了方向;感谢我的舍友在我最困难时无条件相信给我垫钱;感谢我的兄弟们和女朋友在我无数次面试复盘时陪我熬夜;*****;也感谢那个没有在兼职的疲惫和秋招的失败中选择放弃的自己。 愿每一个还在路上的你,都能在某个不经意的清晨,收到那封改变命运的offer邮件 共勉,加油 🚀 --- PS:如果这篇文章对你有一点点帮助,欢迎点赞收藏,也欢迎在评论区分享你的故事。我们下篇文章见(不懒的话哈哈哈)~
招一个unity游戏开发工程师
<p align="left">1. 负责公司旗下微信小游戏及休闲类游戏的开发工作。</p> <p align="left">2. 根据游戏策划需求,独立设计并开发相应的游戏功能模块。</p> <p align="left">3. 具备 Unity 游戏开发经验。</p> <p align="left">4. 熟悉 C# 或 JavaScript 或 TypeScript 开发语言。</p> <p align="left">5. 能够独立完成小游戏客户端项目的开发。</p> <p align="left">6. 熟悉微信小游戏接口及开发流程者优先。</p> <p align="left">7. 热爱网络游戏,逻辑思维能力强,喜欢钻研技术。</p> <p align="left">8. 具有较强的学习能力、良好的沟通能力和团队协作能力。</p> <p align="left">9. 性格稳定,能够承担一定的工作压力。</p> <p align="left">10.加分项:会动效制作、3d建模、有自己的游戏作品。</p> base厦门集美

