软件开发IT企业软件工程师实习报告_第1页
软件开发IT企业软件工程师实习报告_第2页
软件开发IT企业软件工程师实习报告_第3页
软件开发IT企业软件工程师实习报告_第4页
软件开发IT企业软件工程师实习报告_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件开发IT企业软件工程师实习报告一、摘要2023年7月1日至2023年8月31日,我在某软件开发IT企业担任软件工程师实习生,负责企业级管理系统的需求分析、模块开发与测试工作。通过参与三个项目,共完成28个功能模块的编码实现,其中12个模块通过单元测试,错误率低于5%。熟练运用Java、SpringBoot和MySQL,结合敏捷开发流程,将平均开发周期缩短20%。在项目二(客户管理模块)中,通过引入Redis缓存机制,将查询响应时间从500ms优化至100ms,提升用户体验。总结出可复用的代码重构方法,包括抽象公共接口、采用设计模式优化逻辑,以及自动化测试脚本编写流程,有效提升了团队协作效率。二、实习内容及过程1.实习目的想看看企业里软件是怎么开发的,跟学校里写的玩具项目不一样,想知道真实项目里需求分析、技术选型、团队协作都是怎么玩的。2.实习单位简介我们实习的地方是个做企业服务的软件公司,主要是帮其他公司做管理系统,技术栈以Java为主,用SpringBoot框架比较多,数据库用MySQL和Oracle的都有。3.实习内容与过程7月1号开始实习,第一个月主要是熟悉环境,跟着导师做需求分析,整理文档。比如项目一是个客户管理模块,要实现客户信息录入、标签管理、跟进记录这些功能。我负责的是标签管理那块,花了3天时间把相关接口梳理完,用Jira写了用户故事,还画了时序图。第二个月开始写代码,用到了SpringBoot和MyBatis,本地开发环境搭了快一周,因为公司用的是特定版本的Java和Maven,跟我在学校的环境不太一样,踩了不少坑。比如有个Redis缓存配置一直报错,后来发现是版本兼容问题,换了个包版本就好了。项目二是个订单处理模块,需求是支持批量导入订单,然后自动分发给不同业务线。我接手的时候发现原版代码没考虑并发问题,一跑就死锁。导师建议用乐观锁解决,我学了下分布式锁的实现方式,最后用了Redisson这个组件,把订单处理失败率从8%降到了1%。前后调试花了12天,测试用例写了56个,覆盖率达到了92%。4.实习成果与收获最明显的成果就是能独立完成一个小模块的开发了,比如客户管理那个模块,上线后测试反馈说用起来挺顺的,查询速度比之前快了30%。还学会了怎么用GitFlow管理分支,写单元测试用JUnit和Mockito,这对我现在写代码帮助特别大。最大的收获是认识到软件工程不是一个人埋头写代码,需求变更、沟通协调、文档规范这些其实更重要。遇到的挑战有两个。一个是需求不明确,有次做报表功能时业务方一直变想法,我花了5天重新改写代码,最后发现是业务方自己没想清楚。另一个是性能问题,订单导入那个模块用JDBC直接跑,服务器CPU飙升到90%,后来改成分批处理加缓存就好了。学到了SpringBatch这个框架挺实用,还看了点数据库索引优化的知识。职业规划上,我发现自己对后端开发还挺有兴趣,但前端和测试好像不太感冒。这次实习让我意识到,做技术不能只埋头写代码,得懂业务,会沟通,不然很多想法都实现不了。5.问题与建议公司培训机制有点弱,刚开始没人带,都是靠自己摸索。建议可以搞个新人训练营,比如每周安排技术分享,或者给导师配个新人专项任务。另外,有些项目需求变更太频繁,导致返工很多,可以早些用原型确认需求。我建议搞个需求评审会,业务和开发一起过,能省不少事儿。三、总结与体会1.实习价值闭环这8周,从7月1号到8月31号,感觉自己像个真正的小工程师了。之前在学校写项目,跑通就行,现在得考虑性能、稳定性、可维护性。比如订单处理模块,为了把失败率从8%降到1%,我捣鼓了Redisson分布式锁、SpringBatch分批处理,还写了56个测试用例,最后上线测试覆盖率92%。这让我明白,做软件不是画图,得实打实地解决问题。导师说我的代码重构方法还不错,几个公共接口抽象出来后,后续修改方便多了,这让我挺惊喜的。原来把基础打牢,真的能事半功倍。2.职业规划联结这次实习让我更确定要做后端开发,但同时也发现,光会写代码不够。几次需求变更沟通时,我发现业务方不懂技术,开发不懂业务,来回传话容易出问题。比如7月15号客户管理模块需求调整时,我花了5天重写代码,最后发现是业务方自己没想清楚。这让我意识到,做技术得懂用户,得会沟通。未来打算深化SpringCloud微服务这块,公司那个订单系统其实可以拆成几个服务,我看了下资料,觉得分布式事务、服务治理这些挺重要的,可能下学期就考个云原生相关证书试试。3.行业趋势展望公司用的技术栈里,Java和SpringBoot还是很主流的,但项目里已经隐隐透出微服务和云原生的风头,比如订单系统那种高并发场景,单体架构估计扛不住。7月底技术分享会听同事讲,现在不少公司都在用Elasticsearch做日志分析,我之前有接触过,但不太深入。感觉学东西不能只局限于学校那点课,得主动关注行业动态,像Docker、Kubernetes这些容器化技术,肯定以后是大趋势。这次实习最大的感受是,学校教的基础挺重要,但企业里还得靠持续学习,不然很快就被淘汰了。4.心态转变刚开始7月1号入职时,我老是想露一手,结果发现很多基础没掌握扎实,比如GitFlow分支管理,在学校小项目里都没用这么规范,第一次搞分支合并冲突搞到崩溃,花了3天才搞明白。还有次提交代码被Review怼回来,说没写单元测试,虽然有点委屈,但确实学到了,现在写代码前必写测试。这8周感觉自己抗压能力强了不少,以前遇到问题想找老师,现在先自己查资料,查不到再问导师,效率高多了。这种感觉挺奇妙的,像是从学生到职场人的过渡,虽然还没真正工作,但已经能像个小老板一样思考问题了。四、致谢1.感谢实习期间给予指导的导师,在技术难题上给予的点拨和在职业发展上的建议,让

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论