计算机科学与技术XX科技软件工程师实习报告_第1页
计算机科学与技术XX科技软件工程师实习报告_第2页
计算机科学与技术XX科技软件工程师实习报告_第3页
计算机科学与技术XX科技软件工程师实习报告_第4页
计算机科学与技术XX科技软件工程师实习报告_第5页
已阅读5页,还剩1页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

计算机科学与技术XX科技软件工程师实习报告一、摘要2023年7月10日至2023年9月5日,我在XX科技公司担任软件工程师实习生,负责核心系统模块的开发与优化。通过参与XX项目,重构了遗留代码库,将接口响应时间从1200ms降低至350ms,支持并发用户数提升40%。运用Python和Java实现自动化测试脚本,覆盖率达85%,减少线上故障率25%。实践了敏捷开发流程,每周交付2个迭代任务,累计编写代码量达5800行,其中单元测试占比60%。掌握了分布式系统设计原理,应用微服务架构优化了数据同步效率,延迟缩短至3秒。总结出模块化开发与持续集成可复用方法论,为后续项目提供了效率模板。二、实习内容及过程实习目的是把课堂上学到的计算机理论跟实际工作结合起来,看看自己到底喜欢哪块,也想去了解下真实的开发流程。实习单位是一家做企业服务的科技公司,主要搞各种管理软件,用户量挺大的,技术栈也挺新。我被分到后端开发组,跟着一个老工程师,负责一个项目的模块迭代。实习期间,我参与了用户权限管理模块的重构。这个模块以前是用硬编码方式做的,耦合特别严重,新需求加不进去,老代码也看不懂。我就跟着导师用SpringBoot和Redis做了改造,把原来的单体服务拆分成几个微服务,权限校验逻辑单独抽出来,用策略模式管理。过程中踩了不少坑,比如一开始没注意分布式事务问题,导致某个接口在并发时会出现数据不一致的情况。后来学习了2PC和本地消息表,在服务间加上补偿机制才解决。还用到了JWT做无状态认证,提高了系统的可伸缩性。我记得那个重构阶段,每天都要改代码到晚上十点多,前后花了两周时间。上线后效果挺明显的,接口响应时间从原来的1秒多降到了300毫秒以下,而且现在新增权限类型只需要在配置文件里加几行代码就行。导师还把这段改造写进了项目文档,说以后新人接手能省不少事。实习最后一个月,我被安排去优化数据库查询。之前有个报表功能特别慢,高峰期用户抱怨说等不了。我花了三天时间分析慢查询日志,发现是几个Join操作把数据量搞上去了。通过添加索引、改写SQL语句、加缓存,最后把查询时间从8秒缩减到1.5秒。这个经历让我明白,做后端不能光会写代码,还得懂数据库底层原理。遇到的最大困难是刚开始对业务逻辑不熟,需求文档看得云里雾里。有时候导师布置任务,我半天搞不懂要做什么。后来我就改了方法,先去问产品经理搞清楚用户场景,然后找相关接口文档仔细看,实在不行就自己写伪代码跟导师对一遍。这样效率高多了。技能方面,我学会了用Postman做接口测试,JMeter压测,还掌握了Docker容器化部署。这次实习最大的收获是学会了怎么解决实际开发中的各种问题。以前在学校写代码,老师给题目,步骤都列好了,现在完全不一样。要自己分析需求、设计架构、处理各种边界条件。比如有个时间同步问题,不同服务器时间差几毫秒,导致分布式锁失效,我就研究了NTP协议,在系统里集成了时间校正功能。这种从零开始解决问题的经历,比单纯写作业学到的多。实习单位的管理上,我觉得培训机制可以再完善点。我们组就我一个人是实习生,没人带,刚开始得自己摸索很多。建议可以搞个新人手册,把常用工具、开发流程、项目架构都写明白。另外岗位匹配度上,我一开始以为会接触更多前端,结果后端占了80%的工作量,如果早点明确方向,效率能更高。不过总的来说,这段经历挺宝贵的。三、总结与体会这8周在XX科技公司的经历,让我对计算机科学的理解从书本知识升级到了实际应用层面。7月10日到9月5日,每天跟着团队写代码、搞测试,那种感觉跟在学校完全不一样。以前写代码是完成任务,现在得考虑性能、可维护性,还得跟产品经理、测试人员沟通。这种全链条的参与,让我真切感受到了软件开发的完整生命周期。实习最大的价值在于,我把课堂上学到的面向对象编程、设计模式,真的用在了项目中。比如用工厂模式封装了权限控制逻辑,后来被导师夸说考虑得周到。这种把理论转化为实践的闭环,是学校里很难体验到的。之前觉得微服务很虚,现在通过实际拆分一个功能模块,才明白服务拆分、分布式事务、配置中心到底是怎么回事。写的那5800行代码里,有超过60%是单元测试,这让我养成了好习惯,现在写任何新功能都会先写测试用例。这次经历也让我更清楚自己的职业规划了。之前有点迷茫,想做后端还是全栈,现在明确了自己想深入做分布式系统。下学期打算报个AWS认证,把云原生相关的技能补上。实习中用的Docker、Kubernetes,我回家就开始啃官方文档,现在都能自己部署项目了。导师说的“代码要能跑,更要能跑好”,这句话我一直记着。以后写代码会多考虑高并发场景,学习Redis缓存策略、数据库分库分表这些,争取以后能独立负责一个模块。看着自己写的代码真的在服务器上跑起来,服务几百个用户,这种成就感是做项目作业比不了的。实习也让我意识到,职场不是学校,没人手把手教你,得主动去学去问。遇到技术难题熬夜查资料,第二天解决后的那种踏实感,让我更有韧性了。虽然最后一周因为赶项目累到脱发,但这种“为结果负责”的感觉,比考90分还让人兴奋。行业里现在都在讲云原生、Serverless,这次实习让我接触到了实际案例。我们项目就用了Elasticsearch做日志分析,性能确实比传统方式好。感觉以后学东西不能只看表面,得往深了钻。比如那个分布式事务问题,我后来研究了TCC和Saga两种模式,虽然没用到项目,但心里有底了。技术迭代这么快,不持续学习很快就会被淘汰。打算接下来多关注业界大厂的技术博客,像阿里的Flink、腾讯的TRPC这些,有机会真想深入试试。从学生到职场人的转变,主要体现在责任感上。以前写代码随便点行数,现在得考虑未来维护成本,每个变量命名都得严谨。这种转变是痛苦但必要的。未来无论是考研还是直接工作,这段经历都会是重要参考。如果考研,我会更有方向,知道研究生阶段该重点学什么;如果工作,这些实战经验绝对是我的加分项。总之,这段实习没白来,它让我明白了什么叫“干一行爱一行”。四、致谢感谢XX科技公司给我这次实习机会。这段经历让我学到了很多实用的开发经验。特别感谢我的导师,在实习期间耐心指导我,解答我的很多技术疑问,比如关于分布式事务的处理,还有那个权限模块的重构,如果没有他的点拨,我可能要摸索更长时间。也谢谢组里的其他同事,

温馨提示

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

评论

0/150

提交评论