计算机专业软件公司实习报告_第1页
计算机专业软件公司实习报告_第2页
计算机专业软件公司实习报告_第3页
计算机专业软件公司实习报告_第4页
计算机专业软件公司实习报告_第5页
已阅读5页,还剩1页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

计算机专业软件公司实习报告一、摘要2023年7月1日至2023年8月30日,我在一家软件公司担任软件开发实习生,负责参与后端API开发工作。通过8周实践,我完成了3个核心模块的代码编写,累计提交代码量达1200行,其中通过单元测试的代码占比85%。期间应用了Java和SpringBoot技术栈,熟练掌握了RESTfulAPI设计规范,并优化了数据库查询效率,将某关键接口的响应时间从500ms降低至150ms。此外,我总结了基于版本控制的代码协作流程,以及自动化测试的集成方法,这些方法论可适用于团队开发场景。二、实习内容及过程1.实习目的我想去软件公司真实环境里试试,看看自己学的那些东西到底行不行,顺便了解下实际项目开发是个啥样,对以后找工作有点想法。2.实习单位简介我去的那家软件公司,主要搞企业级定制开发,客户大多是金融和医疗行业,用技术帮他们解决业务流程问题。团队不大,大概三十来号人,技术栈以Java和Python为主,后端开发比较注重代码规范和测试覆盖。3.实习内容与过程前两周主要是熟悉环境,跟着导师看了几个旧项目代码,学他们那套代码风格和注释规范。第三周开始接手一个项目的小功能,是给客户系统做权限管理模块。我负责的是用户角色关联这部分,需求是支持动态分配角色,并且要记录操作日志。开发过程中发现数据库查询有点慢,客户那边要求接口响应时间不能超过200ms。我查了慢查询日志,发现是角色表数据量太大,每次查询都要全表扫描。后来我提议加个索引,把用户ID和角色ID建个联合索引,导师同意了。改完之后,测试同学测了三次,最慢的响应时间降到了120ms,符合要求。期间还遇到过一次冲突,是两个功能同时修改同一个数据库字段,导致测试环境数据混乱。我通过学习版本控制工具的分支策略,比如先创建feature分支再合并,最后用squash合并小commit,把问题解决了。4.实习成果与收获我最后提交了约1200行的代码,单元测试覆盖率85%,全部通过了导师的CodeReview。权限模块按时上线了,客户那边反馈说用起来挺顺。我最大的收获是认识了些实际开发中的坑,比如怎么避免并发问题,怎么写能跑得更快的SQL。5.问题与建议实习期间也发现些问题。比如公司内部培训比较少,很多技术细节都是靠同事带,新人要花不少时间自己摸索。我建议可以搞个内部知识库,把常见问题和技术方案都整理一下,这样新来的同学能更快上手。另外,我觉得岗位匹配度上可以更精准些,我那个角色其实需要懂点前端,但招我的时候没提。如果HR能给更明确的岗位要求,对我们双方都好。三、总结与体会1.实习价值闭环这8周实习像把理论和实践搭了座桥。7月1号刚去时,我对SpringBoot框架的理解还停留在书本,写个Controller感觉都挺难的。到8月30号离开,我独立完成了一个用户权限模块,用了Redis缓存热点数据,接口响应时间从500ms优化到150ms,这个成果我自己都觉得挺惊喜。原来代码跑起来真的要考虑这么多细节,比如数据库索引、缓存命中率,光看理论完全体会不到。这些经历让我明白,做软件不能只懂概念,得真动手敲代码,踩些坑才能长本事。比如我之前觉得单元测试就是写几行代码就行,但实习时导师教我写测试用例要考虑边界条件,测试覆盖率要超过80%才够用。我重新写了权限模块的测试,用了Mockito模拟依赖,最后覆盖率达到了88%,这个数字让我觉得这次实习真没白费。2.职业规划联结这次实习让我看清了自己想做什么。之前我对后端和前端都挺好奇,但做了权限模块之后特别喜欢做中间件这块,感觉很有挑战。我回来后打算报个AWS的解决方案架构师认证,想系统学学云原生相关技术。另外我发现自己的SQL优化能力还有提升空间,打算下学期把数据库课程的重难点再过一遍,多刷几套LeetCode的数据库题目。实习时我主动承担了日志分析的活儿,结果发现用Python写脚本处理数据特别高效,这也让我想继续深化数据分析这方面的技能。导师跟我说过,做技术得有长线思维,不能只看现在用的什么技术,得知道行业怎么走。他给我推荐了些Gartner的技术趋势报告,我打算找时间都看看,至少知道未来几年哪些技术会火。这让我意识到,学生时代不能只闷头学专业知识,还得关注行业动态,不然毕业真的会跟不上。3.行业趋势展望实习让我真切感受到微服务架构的普及。我们项目用的是SpringCloudAlibaba全家桶,服务注册发现用Nacos,配置中心用Apollo,分布式事务用Seata。我负责的权限服务独立部署,通过APIGateway统一接入,这种架构让我明白为啥现在大厂都喜欢拆微服务。但我也发现,微服务虽然好,但团队协作和监控成本也更高。我们用Prometheus+Grafana做监控,但有时候排查跨服务问题时还是得花不少时间。这让我觉得,技术选型不能光图省事,得考虑团队现阶段的能力。另外我还接触到不少自动化运维的工具,比如用Ansible做部署脚本,用Jenkins做CI/CD流水线。我试着自己写了个Ansible剧本,能一键部署整个服务环境,这个经验特别实用。行业现在这么强调DevOps,我觉得以后这块肯定越来越重要,我打算把Docker和Kubernetes也补上。4.心态转变最大的收获不是学会多少技能,而是心态变了。实习前觉得写代码就是复制粘贴模板,现在知道每行代码都要对得起测试环境那台配置普通的电脑。有次我写的代码内存泄漏,导致生产环境卡死,虽然只是测试机,但导师还是把我叫过去当面讲了一小时,那种被责备的感觉让我第一次觉得工作真不是玩票的。现在写代码前会先考虑健壮性,提交前必做自测,这种习惯可能以后用一辈子。最让我意外的是,我发现自己的抗压能力比想象中强。实习期间需求变更、线上问题、代码Bug,一天能碰上好几回,但最后都能搞定,这种成就感比在学校写作业爽多了。导师跟我说过,做技术的人都会遇到各种难题,关键是怎么面对,我算是初步体验到了。现在回头看,这段实习经历就像给我上了堂职场预科课,让我明白学校教的只是基础,真正的技术要在实践中一点点积累。下学期我要把实习时没搞懂的缓存穿透、雪崩这些问题再深入研究下,争取把短板补齐。毕竟技术这东西,学无止境,这次实习只

温馨提示

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

评论

0/150

提交评论