计算机科学与技术XX软件开发公司软件工程师实习生实习报告_第1页
计算机科学与技术XX软件开发公司软件工程师实习生实习报告_第2页
计算机科学与技术XX软件开发公司软件工程师实习生实习报告_第3页
计算机科学与技术XX软件开发公司软件工程师实习生实习报告_第4页
计算机科学与技术XX软件开发公司软件工程师实习生实习报告_第5页
全文预览已结束

付费下载

下载本文档

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

文档简介

计算机科学与技术XX软件开发公司软件工程师实习生实习报告一、摘要

2023年7月1日至2023年8月31日,我在XX软件开发公司担任软件工程师实习生。核心工作成果包括完成3个模块的代码重构,使系统响应时间缩短15%,累计修复12个线上Bug,其中5个涉及高优先级问题。参与开发内部测试工具,提升团队测试效率20%,并独立设计实现了一个自动化脚本,每日节省约4小时人工操作时间。专业技能应用方面,熟练运用Java和SpringBoot框架,通过学习公司内部编码规范,代码审查通过率提升至98%。提炼方法论包括敏捷开发中的持续集成实践,以及问题排查时结合日志分析、压力测试的复合验证方法,这些经验可复用于优化开发流程和提升系统稳定性。

二、实习内容及过程

2023年7月1日至8月31日,我在XX软件开发公司做软件工程师实习生。来之前想了解实际开发流程,学习项目协作和代码规范。公司是做企业级SaaS的,团队主要用Java和SpringBoot,还接触过微服务架构的一些实践。

开始跟着导师熟悉业务逻辑,调试一个遗留模块的Bug。模块用Java写,数据库是MySQL,问题是数据缓存失效导致查询效率低。我花了两天分析日志,发现慢查询占比超过40%,就提议用Redis缓存热点数据。导师给我两天时间搭环境,我一边学Redis命令一边改代码,最后把查询响应时间从2秒降到0.3秒。这个经历让我明白缓存策略对性能有多重要。

后期参与一个新功能开发,是后台管理系统的权限管理模块。需求是用RBAC模型设计,需要支持动态角色分配。我负责编写用户认证接口,用JWT做token传递。开发过程中遇到跨域问题,因为前端部署在别的环境。我查了Nginx的配置文档,调整了CORS策略才解决。这段经历让我对RESTfulAPI设计有了更直观认识。

团队每周五开站会,我第一次汇报时紧张得说不出话。导师提醒我准备PPT,列出关键进度和风险点。后来我习惯用图表展示数据,比如用柱状图对比优化前后的响应时间。

实习期间最头疼的是版本控制。有一次合并代码时冲突了,把三个月前的旧逻辑覆盖了。我重新看commit记录,用gitbisect定位问题,花了近3小时才恢复。这件事让我意识到commitmessage写得有多重要。

公司的自动化测试覆盖率只有60%,我主动帮测试同事写了几个UI自动化脚本,用Selenium框架,覆盖了核心操作路径。测试经理说这能省下他们20%的工作量。

虽然学到了不少东西,但实习也暴露了些问题。比如需求变更时文档更新不及时,有次我花了1小时找旧版本接口文档。另外,新人培训只有两场线上分享,很多基础概念要靠自己摸索。

我建议公司可以建立更完善的CodeReview流程,强制要求每条PR都要有人评审。另外可以搞个内部知识库,用Wiki格式沉淀技术方案和踩坑经验。对个人来说,这次经历让我看清了想成为合格工程师还有多远,比如单元测试写得太少,调试技巧需要练。

三、总结与体会

这八周在XX软件开发公司的经历,像是在学校理论之外,硬生生给我刻下了些东西。从2023年7月1号到8月31号,每天对着电脑屏幕的时间超过10个小时,一开始觉得挺难熬,后来发现这就是工程师的日常。手上的活儿不算多,但每个细节都抠得很仔细。比如那个权限模块的JWTtoken实现,为了确保安全,我研究了不同HMAC算法的效率差异,最终选了HS256,测试了100次验证流程才确认稳定。这种对细节的强迫症,可能就是从实习里养成的。

实习最大的收获是学会了怎么“干活”,不是指敲代码,而是指把需求变成产品那套完整的流程。从前觉得需求就是功能列表,来了实习才明白还包括用户故事、验收标准、甚至是对接测试的边界条件。我参与重构的那个旧模块,开始接手时完全懵,日志一堆乱码,注释还是两年前的版本。硬着头皮花了两天读代码,画了N张类图才搞明白逻辑,最后把500多行的冗余代码拆分成20个小函数,还加了单元测试。这个过程让我知道,学校写作业那种“想通了就行”,真到工作里完全不够用,你得把每一步都走实了。

行业里现在都在谈云原生、Serverless,实习里接触的微服务部署虽然简单,但让我看到技术真的在变化。我们用的SpringCloudAlibaba,有些组件都已经是过时版本,但运维同事说替换成本太高。这让我意识到,技术选型不只是看trendy,还得考虑生态和成本。未来打算补补Docker和Kubernetes的课程,至少能看懂同事在聊什么。

最大的变化是心态。以前写代码是完成任务,现在会觉得这个设计能不能优化,这个接口是不是够RESTful。比如我写的缓存失效策略,导师让我考虑了分布式场景,逼着我去查Redis集群方案。这种被推着走的体验很好,感觉自己离真正的开发不远了。实习结束那天,我删掉了电脑上所有公司代码,但保留了那个JWT验证的测试脚本,现在还在用。

对职业规划的影响挺直接的。明确了自己想做后端开发,但要往高并发、高可用方向发展,现在每天都会抽时间练Linux命令,还报名了AWS的认证考试。实习里发现的问题,比如对分布式系统理解不深,正好成了下阶段学习的目标。感觉这段经历就像打游戏打了个副本,虽然死了好几次,但拿了关键装备,接下来主线要怎么走,心里有点谱了。

四、致谢

感谢在XX软件开发公司实习期间给予我指导和帮助的导师。在实习期间,导师耐心解答我的疑问,帮助我快速适应开发环境,并在技术难点上给予我宝贵的建议,让我对软件工程的理解更加深入。

感谢公司里所有给予我帮助的同事。在团队合作中,他们分享了许多实用的开发经验和技巧,帮助我解决了很多实际工作中遇到的问题。大家的

温馨提示

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

最新文档

评论

0/150

提交评论