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

付费下载

下载本文档

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

文档简介

软件工程专业XX软件企业开发工程师实习报告一、摘要2023年7月1日至2023年8月31日,我在XX软件企业担任开发工程师实习生。期间,我参与了XX系统后端模块开发,完成5个功能模块编码,累计编写代码1200行,其中单元测试覆盖率达85%。核心工作成果包括优化数据库查询效率,将平均响应时间缩短30%,通过应用设计模式实现代码复用率提升20%。专业技能方面,我熟练运用Java、SpringBoot框架,结合Git进行版本控制,运用Jenkins实现自动化部署。提炼出的可复用方法论包括:采用MVC架构分层设计,统一接口规范,通过Redis缓存热点数据。这些实践验证了课堂学习的理论有效性,并提升了实际问题解决能力。二、实习内容及过程2023年7月1日到8月31日,我在XX软件企业做开发工程师实习。单位主要做企业级SaaS产品,技术栈以Java、SpringCloud为主,数据库用MySQL和MongoDB。我被分到后端开发组,参与一个供应链管理系统的项目。第12周主要是熟悉环境,跟着导师把项目代码环境搭起来,学习他们的代码规范和Git协作流程。具体是看现有模块的接口设计文档,然后写单元测试,用JUnit和Mockito覆盖了3个旧功能的逻辑。导师让我注意类设计要遵循单一职责原则,别把功能写太杂。第35周开始接手新任务,负责订单模块的库存校验功能。需求是下单时要实时检查商品余量,不能超卖。我写了一个异步服务,用Redis做缓存层加速查询。刚开始写的时候,本地测试发现并发下偶尔会出现超卖问题。后来发现是Redis缓存和数据库更新没做分布式锁。查了资料学到了Redis的SETNX命令,加上Lua脚本保证原子性。这段经历让我明白高并发场景下缓存一致性的处理特别重要。最终实现后,压测时库存校验接口的响应时间稳定在50ms以内,比原来快了接近一半。第68周参与的是报表模块的开发。主要是把定时任务从传统cron改写成消息队列触发,用RabbitMQ解耦服务。这个过程中踩了不少坑,比如消息重复消费、Broker宕机丢失消息等问题。最后用了消息确认机制和死信队列来解决。虽然没完全上线,但重构后的任务调度接口错误率从每天几十条降到个位数。遇到的最大困难是初期对业务逻辑理解不透彻。供应链领域的一些术语比如WMS(仓库管理系统)、ASN(高级先期运输信息)一开始完全搞不懂。硬着头皮看源码和需求文档,还去问了做这块的师兄,才慢慢搞明白。现在写文档会先查业务词库再写。另一个挑战是团队代码风格不统一,有些类用饿汉单例,有些用懒汉,还有注解配置方式各异。最后我们组定了新的编码标准,提交前必须过Checkstyle检查。这8周最大的收获是学到了很多企业级项目实战经验。比如接口幂等性设计,我参与的订单模块增加了请求ID去重;还掌握了分布式事务的TCC补偿方案,虽然没用到但做了方案调研。最大的转变是开始思考代码的可维护性,以前写完就行,现在会多想几个重构方案。比如用策略模式替代多个ifelse判断,让代码扩展性更好。单位管理上,感觉新人入职培训流程有点模糊,技术分享会频率不高。建议可以建个内部Wiki专门放业务术语解释,或者搞个新人成长手册,按周安排学习任务。岗位匹配度方面,初期觉得压力挺大,有些需求没经验做不出来,但导师挺耐心,现在感觉自己能独立负责小模块了。三、总结与体会2023年8月31日实习结束那天,我复盘这8周的工作,感觉收获特别实在。从7月1日刚开始懵懵懂懂写单元测试时,到后来能独立负责订单模块重构,中间经历了很多具体的成长。比如7月15号那个下午,为了解决Redis缓存一致性问题,我查了5个小时的资料,最后用Lua脚本实现了原子操作,导师夸我思路清晰。这种解决实际问题的成就感,是学校写课程设计完全体会不到的。这段经历帮我搞清楚了职业规划里的一些模糊点。以前觉得后端开发就是敲代码,现在明白要做好企业级项目,得懂业务、会架构、懂运维。我们做的供应链系统,我参与优化的库存校验接口,最终响应时间降了50%,这个数据让我确认了想往高并发方向深耕。接下来打算系统学习分布式系统知识,争取年底拿下AWS认证,毕竟现在很多大厂都要求这个。从行业趋势看,云原生和微服务确实是大势所趋。这次用SpringCloud和Docker部署服务,感觉容器化运维效率比传统方式高太多了。公司用的SonarQube代码静态扫描工具,发现我写的几个类设计耦合度超标,这提醒我以后写代码得注意高内聚低耦合,不能只顾功能实现。现在刷LeetCode时,会刻意选些与分布式、高并发相关的题目练手。最深切的体会是心态转变。以前写代码改一行都要看半天怕出错,现在能同时处理三个小bug,抗压能力确实强了。比如8月10号晚上,有个紧急需求要赶在凌晨前上线,虽然熬了通宵但最后效果不错,感觉自己真的能扛事儿了。这种责任感是学生时代学不到的。未来做项目会带着这种职场人的视角,多想用户用起来舒不舒服,系统跑起来稳不稳。当然也发现一些问题,比如单位技术分享会不固定时间,新人培训材料有点过时。这让我想到,以后自己工作后也要主动搞知识库建设,定期组织技术交流。总的来说,这次实习像一扇窗,让我看到了真实软件开发的全貌,也明确了努力方向。这段经历绝对是我简历上最亮眼的一块,也是未来求职时的重要砝码。四、致谢感谢XX软件企业给我这次实习机会,让我接触到了真实的企业级软件开发环境。特别感谢我的导师,在实习期间耐心指导我解决技术难题,比如7月15号Redis缓存一致性问题,他帮我分析了几遍才找到解决方案。感谢后端开发组的各位同事,他们在我遇到困难时给予的帮助,比如

温馨提示

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

最新文档

评论

0/150

提交评论