java吧 关注:1,308,010贴子:12,881,893

回复:25届,JAVA找工作记录。

只看楼主收藏回复

我最近一直在用ai,无论是在工作中,还是平时私底下搞自己的项目,ai会大幅度降低程序员的学习成本,像一个放大镜一样去放大我们的能力,思想在ai时代会变得愈发重要,只有你有想法就能在ai的加持一下很快的就去实现,以前可能要一个完整团队,需要花几周的时间。
马上就拥有一年真实的开发经验了。最近主要就是ai编程相关的深度实践;学了ES,重新看看redis(公司封装了一层接口,根本接触不到redis相关);在github上找了ai相关的项目学习:learn claude code,all in rag,看完learn claude code收获非常多(尤其是自己先做了一个ai相关功能之后),all in rag也看了一点;我把我有的4台主机(2个手机,1个云服务器,一台300块装的主机)都通过claude code+cc-connect的方式一起放到了一个飞书群里面,他们能够相互对话交流,一起协作完成一个需要跨4台主机的任务,本质都是claude code。
在ai的帮助一下,做了一个ai生成draw io图的ai,我把我能想到提示词工程,上下文工程都在这个上做了,感觉还是很有收获的。这个过程,最有成就感的是解决了spring ai集成deepseek v4开启思考模式时工具调用报错的问题(我在github看到了issue,通过debug调试,以及网上一些资料,外加ai辅助,最后是用自己写一个类替换掉Spring AI带有缺陷的DeepSeekChatModel)。ai接口大部分时间都花费在io上,我用虚拟线程解决和sse去避免ai接口在高并发的情况下耗尽tomcat线程池资源的问题(接口入口用tomcat的线程,正式调用ai会转到虚拟线程,快速释放掉不阻塞tomcat线程,后续通信全部通过sse去完成)。Spring ai 1.1.5的版本是不支持流式时的工具调用的,我重写了toolCallAdvisor流式调用的逻辑支持了流式调用下的工具调用,这个部分本来打算做线程池去完成并发工具调用,仔细想想好像必要性不是很大,我在学spring ai的demo阶段做了,做这个项目的时候就没做了。做了动态的提示词管理(其实就是skill),ai能够根据需要去动态的加载需要的提示词。做了动态的tool注册,基础的提示词里面只会包含必要的tool,这部分是配合skill去实现的,实际需要的tool会和对应skill一起暴露出去,这个功能配合skill去使用,这两个结合在一起充分的体现了渐进式披露。还做了上下文压缩功能,终有一天上下文窗口会被打满,这里通过模板方法+策略模式去设计整个上下文压缩模块。最近读完learn-claude-code又有了一些新的想法,正好都在这个项目去完成相关harness的实践。整个ai应用的迭代,提示词工程,上下文工程,harness工程
最近工作一直用Claude code写代码,基本很少手写了,我能接触到的大部分活claude code都能干。很明显的感受到在慢慢的从原来的将思维转变成代码逻辑的过程转变成把思维和问题转变成ai能够懂自然语言/提示词,然后ai将这个思维和问题输出成能解决问题的代码,我觉得未来程序员的编程模式大概就是这样。自己私底下来也会用ai去写自己的项目,一个月用了接近150块钱,因为是自己的代码所以胆子就大一点只做功能验证,平时claude主要就是superpower+openspec去完成一个需求的开发。举个例子来说,一个涉及3到4张表的需求,我个人开发的话可能要一周左右,用ai开发1小时搞定前后端代码,我再1-2个小时的时间去验收和让ai去微调代码,基本上一个需求半天或者几个小时就能搞定,真正上线用起来偶尔还是会有点bug的,主要是只做功能测试。原本古法编程开发周期要用1-2周的时间,现在用ai估计也就2-3天,1天开发时间去开发,2天的时间验证功能、微调代码和代码review。


IP属地:江苏40楼2026-06-15 00:15
回复