软件工程专业软件企业开发实习生报告_第1页
软件工程专业软件企业开发实习生报告_第2页
软件工程专业软件企业开发实习生报告_第3页
软件工程专业软件企业开发实习生报告_第4页
软件工程专业软件企业开发实习生报告_第5页
全文预览已结束

下载本文档

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

文档简介

软件工程专业软件企业开发实习生报告一、摘要

2023年7月1日至2023年8月31日,我在一家软件企业担任开发实习生,负责后端模块的代码实现与测试工作。通过参与3个项目的开发,累计编写代码约1500行,独立完成5个API接口的开发与调试,支持前端联调并通过全部单元测试。熟练应用Java和SpringBoot框架,将敏捷开发中的Scrum方法应用于每日站会与迭代计划,推动项目按时交付。在导师指导下,掌握代码重构技巧,将某模块的响应时间从800ms优化至200ms。提炼出的自动化测试脚本复用率达80%,为团队后续项目节省约20%的测试时间。这些实践验证了课堂学习的软件工程理论,深化了对企业级开发流程的理解。

二、实习内容及过程

实习目的是想把学校学的软件工程知识用到实际开发里,看看企业项目是怎么跑的。2023年7月1号开始实习,在一家做企业软件的公司干开发。公司不大,但氛围还行,主要是做B端系统,技术栈以Java为主,用SpringBoot框架比较多。

我的岗位是开发实习生,跟着一个经验比较丰富的导师做东西。前期主要是熟悉环境,看他们之前写的代码,学他们的编码风格。7月10号左右,我开始接手一个模块的开发任务,是给一个客户定制的一个报表功能。需求是让用户能自定义选字段,然后导出Excel格式的文件。这活儿听着简单,但实际做起来坑不少。

我花了大概两周时间把需求搞清楚,设计数据库表,然后写后端接口。用Java写业务逻辑,调数据库查数据,最后用ApachePOI把数据塞进Excel文件。导师让我注意性能,说用户数据量大的时候不能卡死。我一开始用循环拼接字符串,导几千条数据就慢得要命。导师指点我用流式API,效率提升明显,导10000条数据也就用不到5秒钟。

7月25号左右,我开始写单元测试,用JUnit框架。本来觉得写测试麻烦,但导师说没测试的代码不敢随便改。结果8月2号晚上,我把一个排序算法的Bug改了,没注意到把另一个接口也搞坏了,还好有测试用例报警。这次我老实了,把所有接口都写了测试,覆盖率现在有85%。

实习期间最大的挑战是8月10号遇到的一个并发问题。系统突然响应特别慢,查日志发现是某个方法被好多线程同时调用,导致数据库死锁。我完全没遇到过这种事,手忙脚乱。导师教我用JProfiler工具查线程堆栈,定位到是数据库查询语句写得太蠢,加了重复的WHERE条件。改完之后问题解决,但我也意识到自己这块短板,后面专门学了点JVM和并发编程的知识。

最后成果嘛,那个报表功能按时上线了,客户反馈还不错。我写的接口通过Postman压测,每秒能处理150个请求,比他们原来的老系统快不少。我还整理了一套Excel导出的通用代码,后来其他同事的小项目也用了我的库。

这8周让我明白企业开发跟学校项目完全两码事,需求变更频繁,要不断沟通确认。我以前觉得代码写好就行,现在知道要考虑可维护性、可扩展性。比如那个报表功能,如果用硬编码的方式,以后客户要改字段就很麻烦,现在用配置文件的方式就好多了。这经历让我对后端开发更感兴趣了,想以后往分布式系统方向钻。

但实习也看出些问题,比如公司培训机制一般,就给我发了本过时的技术文档,很多问题要问导师。另外我的岗位跟数据库接触不多,但项目里用得不少,感觉技能树没补全。建议公司能给新人做点系统培训,比如数据库优化、微服务治理这些,不用太深,但至少知道个大概。还有就是岗位匹配度问题,我分配的任务偏后端,但之前学过点前端,要是能接触点全栈开发就更好了。

三、总结与体会

这8周,从2023年7月1号到8月31号,在软件企业的开发实习,感觉像是把书本里那些抽象的软件工程概念,一个个摸到了手里。开始的时候,面对实际的业务逻辑和代码库,有点懵,毕竟学校的项目规模和复杂度差远了。但跟着导师一点点做,从7月10号接手那个报表功能的开发,到最终稳定运行,每个环节都挺有收获的。写单元测试那段,虽然花时间,但8月2号晚上避免了一个大Bug的上线,那种感觉挺值的,覆盖率搞到85%以上,也让我明白质量是慢慢堆砌出来的。

最直接的收获是技能上。之前Java后端接触不多,这次用SpringBoot和MyBatis做了不少实际开发,还把ApachePOI用到Excel导出优化上,性能从800ms降到200ms让我直观感受到技术选型的重要性。那个并发问题虽然把我难住了,但后来用JProfiler定位到数据库锁,导师教我调整SQL,这比单纯看理论书深刻多了。现在写代码,会下意识考虑线程安全、数据库索引这些,这种思维转变挺关键的。

实习也让我更清楚自己想要什么。我发现我对构建稳定、高性能的后端系统很有兴趣,之前觉得微服务太复杂,现在觉得分布式架构的设计思路挺吸引人。这趟经历直接影响了我的职业规划,我想接下来深入学习Java虚拟机、分布式事务这些硬核知识,甚至考虑考个AWS或者阿里云的认证,为以后求职加码。实习中看到团队用GitLab管理CI/CD,流程挺顺畅,我也在想学校实验室的DevOps环境是不是该加强一下,毕竟企业里这玩意儿是刚需。

行业趋势这块,感觉现在云原生、Serverless这些概念越来越火,但企业落地程度还不一样。我在实习单位看到的系统,很多还是传统的单体架构,但新项目已经开始尝试微服务拆分了。这让我觉得,技术更新太快,得保持持续学习的状态,否则很快会被淘汰。导师常说“技术是为人服务的”,这点我记住了,以后做技术,不能只埋头写代码,要多想想用户到底需要什么,业务怎么才能通过技术优化。

从学生到“准职场人”,心态上变化挺大的。以前写代码,能跑就行,现在要考虑成本、效率、可维护性,压力确实大,但责任也重了。比如那个报表功能,客户盯着呢,不能出Bug,每天下班前还要看一眼日志,这种责任感是以前没有的。抗压能力也练出来了,遇到那个并发问题时慌得不行,但硬着头皮查资料、问导师,最后解决了,感觉自己也扛得住事多了。

总的来说,这8周实习没白费,把理论联系了实践,也认清了自己的短板。接下来,我会把实习中遇到的问题,比如数据库优化、微服务治理这些,当作后续学习的重点,多敲代码,多看书,争取把基础打得更牢。这段经历,就像给我未来的职业生涯打了个地基,希望以后能盖出更牛的软件来。

四、致谢

感谢在2023年7月1日至8月31日期间的实习单位给予的机会,让我接触了真实的软件开发环境。感谢我的导师,在实习期间耐心指导我完成开发任务,特别是报表功能实现和单元

温馨提示

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

评论

0/150

提交评论