后端岗如何拥抱ai应用开发?双非硕方向转换实录(附学习路径)

本文以有java后端基础/python基础如何转向ai开发岗进行讨论分析。

个人bg : 专升本,26届双非硕,硕士转码,25.6 - 26.2 小厂ai应用开发实习,入职前ai相关项目 * 1 ,春招面试时含公司实习项目共计10+ai相关项目(简历体现4个),ai相关内容学习实习前累计1m左右,深入了解时长等同于实习时长。

重要经历 :实习期间参与三个ai项目开发,垂直领域涉及金融审核相关业务(涵盖文档、检索、分析、agent等)

1. ai应用开发岗是什么?涉及什么?

ai应用开发岗作为新兴岗位,主要分为两部分:

  • 上游任务(偏向于算法) : 模型后训练,微调(SFT,QLora) ,场景定制化模型开发 - 如 : 标题分级,内容抽取,舆情检测等细分领域场景模型二次开发优化等,语言以python为主;
  • 下游任务(偏向应用层) :针对指定任务进行下游开发,主要以RAG,MCP,Agent,prompt Engineering为主,最近新兴的Skill,Clawdbot等也归为此类,在这类任务中,框架以springAi,Langchain(Langchain4j)为主,数据库主要采用Mineru,postgreSql等。

在多数公司中,上下游基本不进行分离或进一步细分,如某公司岗位jd所示。

同时,有的同学存在一定的误区,认为后端开发与ai应用开发是完全区分开的岗位,但实际上,ai应用开发不止要了解ai相关内容,同时对于后端的内容也必须尽可能的扎实,因为在实际业务场景中要进行落地,那后端开发一定是必不可少的,甚至在部分场景中,后端的内容要占据一大半——即适合场景的才是最好的,比如在文档指定字符检索类任务时,如果完全依赖ai,那么首先幻觉问题无法解决,同时业务的总耗时会达到一个非常夸张的数字,而此时采用ac自动机模式进行匹配,整体耗时甚至可以达到大模型的1/100,且只是简单的字符匹配,不考虑文档跨页的情况下,准确率可以达到100%。

2. 后端如何转向ai应用开发岗?路径简析

正如前文所言,后端岗位与ai应用开发岗位并非分离,而是相互依存的关系,所以后端在转向ai应用开发岗位时整体而言用时较短且难度较低(一定一定要有后端经验)。以下是个人转岗学习路径:

(bg: 暑期实习面试成功的岗位即ai应用开发岗,所以属于是边干边学,干中学了)

2.1 语言以什么为主?

在实际的开发中,Java和Python通常都会用到,实际应用层在多数公司中会选择java,而在ai层(如后训练模型,微调后模型)通常会选择python然后通过fastapi暴露相关接口来进行调用,所以两个语言尽量都需要掌握,可以选择一个自己更为精通的进行深入,就目前而言,RAG、MCP、Agent等在python上的生态更为成熟,但是java依托于spring ai等框架,两者相差不大,所以语言可以按需选择,不需要太过纠结。

2.2 项目如何选择

目前github上的开源项目极多,也有非常多的知识星球,目前来看多数知识星球均有ai相关项目,所以在项目上大家可以自由选取,按照自己手头的资源来进行就可以。

个人项目学习路径顺序建议 :

  1. RAG : 在这一部分完整实现一个项目,且同时必须要了解掌握包括但不限于以下内容:
  2. Embedding , 要了解什么是embedding,为什么要embedding,选取什么embedding模型,每个模型的优缺点是什么;
  3. Chunk(文本切块),要了解什么是文本切块,为什么需要文本切块,都有哪些策略;
  4. 选用什么向量数据库,每个向量数据库的特点是什么;
  5. 如何计算文本相似度,都有哪些算法;
  6. re-ranking,Top-K是什么
  7. 不同格式文档如何处理
  8. prompt engineering - 压缩查询,自查询等如何实现,如何通过修改prompt使得模型表现更好
  9. 如何评估rag性能
  10. …………
  11. MCP :在这一部分完整实现一个项目,这一部分强烈建议自己改造一个java微服务项目为MCP,会对业务理解的更为深入, 且同时必须要了解掌握包括但不限于以下内容:
  12. 整体流程是什么,什么是MCP协议,如何进行项目改造
  13. 如何确保工具调用的准确性,降低调用幻觉,如何进行实际执行,prompt设计,参数传递,以及大模型在这里扮演了什么角色
  14. 项目改造完成后,如何替换原有加载方式,如何排查配置加载失败的问题,如何进行动态更新,如何保证原有性能
  15. 如何与其他项目进行有机结合?如何设计降级、熔断方案?
  16. 如何评估mcp整体性能?
  17. Agent :agent目前相关生态非常丰富,大家可以结合自己的实际项目进行生态引入,如Prometheus等,也可以在开源的基础上进行自己的二次开发和改造,但还是建议找一个项目从零开发,玩具项目的意义就在与构建对整体的理解:
  18. 如何实现对话历史的管理和持久化?如果原生框架不支持,可以通过哪些方法进行自主实现?
  19. 如何实现multi-agent?
  20. react范式/Plan-and-Execute 范式的区别及如何选取
  21. 如何与其他生态进行有机结合?
  22. 如何优化指定场景下的agent性能?
  23. 如何对原生agent性能进行测试?
  24. 多模态场景下如何进行推理?
  25. AutoGPT如何实现自主决策?
  26. …………

以上为项目学习路径的简单规划,可以按照自己手头的资源进行项目选择然后进行开发,实际上在我学习的过程中,对于网课或视频的依赖程度并不高,多数在不了解相关内容时按需搜索查看,从我的经验来看的话,如果按部就班的看视频 -> 做项目 -> 背八股,这条路径所花的时间成本极高,同时收益不一定会更好,ai应用开发的相关内容并不多,边做边学可能效果会更好,结合开源项目和付费项目,做完几个项目对于整体的理解程度已经足以进行面试了。

在面试过程中,面试官对于实际项目的兴趣点会更高,对于论文/八股的兴致缺缺,而且机会比较大(综合来看),如果有ai实习的话,基本进面率会非常高(没有实习的情况个人不太了解),所以有后端经验的同学可以深入学习项目。

预祝大家前程似锦,都找到心仪的offer!

#AI求职实录#
全部评论
写的真好
1 回复 分享
发布于 今天 17:42 北京

相关推荐

LastWh1spe...:ssob真有些人和那个没睡醒一样
点赞 评论 收藏
分享
部门:搜索框架部门工作内容:赋予搜索引擎Agent的能力,好像是类似于perplexity。投递时间:12月30日,过完元旦约面。一面:1月6号(40min)面试官是个美女,面试体验感很好,没有压力1.上来先做两道算法题:二叉树的右视图最长递增子序列秒了,用的是百度自家的面试软件,叫如流(一坨),acm格式,自己写测试样例。Agent相关:2.multi-agent怎么做的?共享上下文哈希冲突怎么解决?3.上下文压缩的策略?4.上下文储存?黑马点评:(因为写在简历上面了)5.Cache Aside的策略6.Redisson的作用7.为什么使用RocketMQ?8.多级缓存怎么做?八股:MySQL的联合索引到这里我都懵了,面试官一直问Java后端相关的,我回答得都一般,很多都忘了,但是面试官没有压力我。(感觉国内智能体这一块整体水平不太行,都是Java后端转过去的,好喜欢问Java项目)。反问:问:工作的内容?答:部门是搜索框架,内容可能和perplexity差不多。问:还有什么需要提升一下的?答:我觉得都挺好的。当时真的贼开心,人生第二面就被夸了,感觉稳了。但是后面hr一直没有联系我,我觉得应该挂了,然后又到期末周了,猛猛复习,一直到考完试,1月15日,回家的前一天下午,打着永劫,突然间一通电话约二面,问我,为什么不看我们的岗位了?😫我都无语了,因为在ssob上面投百度的简历,在官网看不见的,所以不知道是捞起来的还是忘了。告诉我面试过了晚上9点给我打电话,没有hr面。二面:1月16号(1h)面试官很NB,水平很高,对Agent了解很深,压根不问我黑马点评的,但是我感觉我表现挺好的,基本上是三次模式里面最好的一次,结果挂了。第一个项目:1.multi-agent怎么做的?为什么直接用Claude agent sdk?2.任务调度器的实现?3.MCP你是怎么做的?4.上下文压缩5.假如有bug怎么办?只有重试吗?(这里我自己也不懂,项目的骨架全部是Claude Code写的,所以这点表现一般)6.假如我现在有一个代码重构的任务,你这个agent的完成?第二个项目:1.LoRA的原理?上升20%的准确率,怎么测出来的?这里也算被拷打了,只记得ROUGE,BLEU,然后编20%都是Claude Code在没有知情的情况下测的2.Mem0的架构?这里不懂,我只记得有一个付费版的Mem0有一个Gragh Memory。3.长期上下文的触发?这里被深挖拷打了一下。4.agent的评估体系,也是深挖了一下,Function Calling的调用agent的准确性?是评估调用的时机还是调用的结果?5.RAG的优化?查询重写,多召回,重排。6.RAG怎么分?我的思路+语义相似度。你知道有哪些embedding模型?只记得qwen有一个,openai有一个。然后问我平常时使用什么AI工具?Claude Code,geminicli,codexcli,cursor之前用,主要是Claude Code,网页版主要是perplexity和geminiClaude Code用什么模型?opus4.5。opus4.5有一个5小时强制限制知道吗?唔知道,我没试过一下子跑5个小时。然后出算法:直接告诉我屏幕共享然后写一个最长回文子串😂,用本地的IDE,不能使用代码补全,这里有点无语,虽然秒杀题,但是我的vscode有Copilot代码补全,另一个cursor更加不能用,我说用记事本可以吗?他说用vscode就行,我硬是假装每一个看见代码补全,应该Tab键不敢摁,只敢摁空格,写出来了。你才大二,就出来实习,学校不上课吗?可以实习多久?我谎称学校不管实习,不离开北京就行,可以来5个月,6个月你是很想做agent吗?对,搜广推也行(毕竟是搜索框架部门,不懂也表示一下)反问:问:我还有什么地方需要提升一下:答:搞一下AI infra。(心理暗骂一句:连cursor,Claude Code这些估值几百亿美元的团队都直接用基座大模型,都不微调,国内这些大厂要求会pytorch会TensorFlow的什么心理?你比cursor还牛呗,也不见得国内有任何一个agent产品能对标cursor,对标Claude Code吧)感想:国内的agent,智能体,AI应用的生态真的烂的没边了,我在简历上写了agent skill,结果没有任何一个面试官问,反而前几天看见一个后端的哥们面腾讯的帖子说面试官问,难怪manus成了最后一舞,我相信国内的下一个manus绝对不可能是大厂做出来的,绝对是某个50人左右的小团队。晚上9点没有hr电话,一直到现在过了两周也没用消息,发邮件也没有回复。😫😫😫无后续
等闲_:兄弟我觉得做人还是要谦虚一点,尤其在实力不是很强的时候
查看27道真题和解析
点赞 评论 收藏
分享
评论
2
5
分享

创作者周榜

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