付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件工程XX软件公司软件开发实习生实习报告一、摘要2023年7月1日至2023年8月31日,我在XX软件公司担任软件开发实习生,主要负责后端系统模块开发与测试。期间完成3个核心功能模块的编码实现,包括用户认证系统、数据同步接口和报表生成器,累计编写代码1.2万行,修复Bug87个,其中高优先级Bug32个。熟练应用SpringBoot框架、MySQL数据库和Git版本控制工具,通过单元测试将系统稳定性提升至98.5%。在需求分析阶段,采用敏捷开发中的用户故事地图方法,将复杂业务流程拆解为12个可迭代任务,缩短开发周期约20%。提炼出基于Jenkins的自动化部署流程,将部署时间从8小时压缩至1小时,为团队后续项目提供可复用脚本工具。二、实习内容及过程1实习目的去XX软件公司实习,主要是想看看真实的企业开发环境是怎么样的,学点学校没教过的东西,特别是项目里用的那些工程化工具和团队协作方式。2实习单位简介我去的公司做的是企业级SaaS服务,用户主要是中小企业,产品线有十几个模块,技术栈以Java为主,前后端分离,测试用得比较多的是自动化测试和性能测试。3实习内容与过程实习刚开始那周,跟着导师熟悉项目,主要是看现有代码和文档,了解系统架构。导师给我分配了个小任务,重构一个旧模块的缓存逻辑。原代码用的是直接操作Redis,没加任何分布式锁,有时候会出现数据覆盖的情况。我花了两天时间,改成用Redisson来做分布式锁,还加了个本地缓存层。改完之后测了两天,发现稳定性确实好了不少,原来那种情况一天能跑个三四次,现在基本没有了。接下来一周,参与了一个新功能的开发,是给报表系统加个定时任务功能。需求是用户可以设定时间,系统自动把指定报表生成PDF发邮件过去。我负责后端定时任务的调度部分,用到了Quartz这个框架。因为之前没接触过,花了不少时间研究它的配置和插件机制。搞明白之后,发现默认的时区是服务器的,导致有些用户报告定时错乱。后来我加了个配置项,让用户可以自己选时区,这个问题就解决了。最后那两周,主要是协助测试组做集成测试。有个模块在并发请求多的时候会超时,我帮忙定位问题,发现是数据库查询没有加索引。加完索引之后,平均响应时间从800ms降到了150ms。测试环境压力测试的时候,系统扛住了500个并发,之前只能跑200。4实习成果与收获整个实习期间,我写了大概1.5万行代码,提交了87个代码合并请求,其中32个被接受。修复了15个Bug,还有3个是我自己发现并提交的。最大的收获是学到了一些实用的工程化技巧,比如怎么用Jenkins搞自动化构建部署,怎么写好单元测试,还有GitFlow这个工作流。感觉现在写代码思路清晰多了,以前写完就完事了,现在会考虑扩展性和可维护性。5问题与建议这次实习也让我发现了一些问题。首先是部门之间的沟通有点脱节,开发测试联调的时候,需求细节经常变,有时候测试组都没拿到最新的文档。建议可以搞个在线文档系统,所有人改的东西都能实时看到。其次,培训机制不太完善,给我配的导师虽然人不错,但也没系统地讲过团队的开发规范和工具链。可以搞个新人培训手册,或者每周搞个技术分享会。最后我觉得我的岗位匹配度有点问题,分配给我的任务偏测试多一些,希望能有更多核心代码的编写机会。三、总结与体会1实习价值闭环这8周,感觉就像把学校学的理论知识真的用了一遍。刚开始7月1号进去的时候,说实话挺懵的,很多工具和流程都不熟悉。后来接手那个报表定时任务,因为没搞懂Quartz的时区配置,差点耽误事,最后弄明白的时候,才意识到实践和纸上谈兵差得远。现在回想起来,修复那个Redis锁的Bug,优化数据库索引,这些具体的事情,真的把分布式系统、数据库原理这些课上的东西给巩固了。写的那1万5千多行代码,虽然都是小模块,但每行都带着思考,比如怎么设计RESTfulAPI,怎么写单元测试覆盖核心逻辑,这些都是在学校没太接触过的。现在回头看,实习确实把我的知识体系串联起来了,形成了一个闭环。2职业规划联结这次经历让我更清楚自己想干嘛了。之前有点迷茫,现在觉得后端开发,特别是能接触到底层架构和系统优化的方向,挺有吸引力的。实习里遇到的那些挑战,比如并发场景下的数据库优化,分布式锁的设计,还有自动化部署流程的搭建,都让我觉得很有意思。我发现自己现在抗压能力比以前强多了,面对Bug和需求变更,不再像以前那样慌了神,而是能静下心来分析问题,这也是职场人必备的素质吧。所以接下来打算深挖一下Java性能调优这块,看看能不能考个相关的认证,比如AWS或Azure的认证,感觉这些对以后求职帮助挺大的。3行业趋势展望在实习过程中,能感觉到公司用的技术,像SpringBoot这种框架,用得特别普遍,而且他们搞的微服务架构,各个模块解耦得挺好,这应该就是现在的发展趋势。另外,自动化测试和CI/CD的投入也挺大,我觉得这很关键,能显著提升开发效率和软件质量。特别是最后参与那个定时任务开发,用Quartz,但感觉未来可能Serverless这种无服务器架构会越来越火,能按需调度,成本更低。这让我意识到,技术这东西发展太快了,学校教的可能有点滞后,必须得自己持续学,关注行业动态。这次实习就是个提醒,让我明白只有不断跟上节奏,才能不被淘汰。感觉自己的心态真的变了,以前觉得学懂课上的就够,现在知道这只是基础,还得主动去学那些最新的玩意儿,才能在职场站住脚。四、致谢感谢XX软件公司给我这次实习机会,让我能接触到真实的项目开发环境。感谢我的导师,在实习期间耐心指导我解决技术难题,比如那个Redis锁的问题,如果没有他的点拨,我可能要花更多时间。也谢
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论