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

下载本文档

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

文档简介

计算机科学与技术软件创新程序员实习报告一、摘要

2023年6月5日至8月23日,我在XX公司担任软件创新程序员实习生,负责核心模块开发与性能优化。通过7周前端重构,将用户交互响应时间缩短至0.8秒,相比初期3.2秒提升75%;运用ReactHooks优化组件渲染,使首屏加载速度提升40%,日均PV增长22%。参与后端API设计,采用GraphQL实现接口聚合,减少80%的请求次数。熟练应用Git进行版本控制,完成超过120个代码提交,其中合并冲突解决率低于5%。掌握敏捷开发流程,独立完成3个迭代任务,推动CI/CD部署频率从每周1次提升至每日2次。提炼出模块化代码复用策略,将通用组件抽象为可配置工具库,减少30%的重复开发时间。

二、实习内容及过程

1实习目的

想通过这次实习更清楚软件开发在实际工作里的样子,看看自己学的理论用起来效果怎么样,顺便多接触点项目经验,为以后找工作打基础。

2实习单位简介

我实习的公司是做企业级SaaS产品的,主要用前后端分离架构,后端是JavaSpringBoot,前端ReactVue混用,数据库用MySQL和MongoDB,整体技术栈还挺现代化的。

3实习内容与过程

我被分到后端开发组,跟着带我的师傅做了两个项目。第一个是优化现有系统的用户权限管理模块,那个老代码写得太混了,接口和业务逻辑纠缠在一起,测试的时候bug不断。导师让我先梳理数据库表结构,用JPA把实体类和Mapper分离,然后改写Controller层,把权限校验逻辑单独抽成一个拦截器。花了4天重构,最后测试覆盖率从65%提到92%,接口响应时间从2秒降到0.6秒。第二个是参与新项目开发,负责订单处理流程,用到消息队列RabbitMQ实现异步通知,每天能处理订单峰值从5万单提到8万单。期间还帮前端同学调试过几次兼容性问题,发现有些CSS动画在旧版浏览器卡顿,就建议用IntersectionObserverAPI替代。

4实习成果与收获

实习期间提交了37个有效代码提交,其中10个被合并到主分支。独立完成的模块通过单元测试的通过率达到100%。最大的收获是学会了怎么写可维护的代码,以前觉得业务逻辑复杂就堆砌条件判断,现在知道该用设计模式抽象共性。还体会到敏捷开发里每日站会的重要性,原来每天花15分钟同步进度能省不少后面扯皮的时间。

5遇到的问题

有一次做性能测试时,发现某个查询用MySQL慢得离谱,优化SQL语句试了几次都没改善,后台看执行计划发现是索引没跟上。当时挺慌的,因为导师说过慢查询不能超过1秒。后来查资料发现是InnoDB引擎的索引缓存被拖慢了,改用Redis缓存热点数据后速度立马起来。

6怎么克服的

遇到难题就先不慌,先定位问题,那次我先用EXPLAIN分析,发现是二级索引查询成本太高,然后查了官方文档才知道怎么调优缓冲区。后来还额外学了MySQLWorkbench的PerformanceSchema,现在写SQL前都要先跑个基线测试。

7最终成果

权限模块重构后,客户那边提的Bug数量减少了一半,运维同学也说部署更方便了。订单模块上线后系统稳定性提升,没有收到一次紧急告警。这些数据都记在Jira系统里,每个迭代结束都有总结报告。

8职业规划启发

这次实习让我意识到技术深度和广度都得有,以前觉得懂点Java就行,现在知道运维、测试、前后端都要懂点才能更好地协作。以后想往分布式系统方向发展,现在开始系统学习Kubernetes和Elasticsearch了。

9单位问题

公司培训机制有点弱,新人入职没发完整的技术栈文档,很多东西要靠师傅带着摸索。另外测试部门人力不足,有时候后端改个字段都要等他们排期,导致开发测试节奏脱节。

10改进建议

建议给新人准备一份《技术雷达图》,标明每个组件的版本和最佳实践,还能节省师傅不少口述时间。测试部门可以搞个自动化回归测试平台,用Selenium把前端流程跑起来,后端改个字段就能快速验证,至少能节省3天周报时间。

三、总结与体会

1实习价值闭环

这8周就像把书上的知识点装进了实践模具里。刚开始接手那个权限模块时手忙脚乱,完全不知道怎么解耦,后来对着JPA文档熬了两天才把Repository层搭起来,导师看了代码说"你这写法比我当年强",当时心里挺受鼓舞。现在回头看,所有踩过的坑都变成避坑指南,提交到GitHub的3个重构组件现在还偶尔有人Fork。

2职业规划联结

最意外的是发现运维工作其实很有意思,那天凌晨3点看到监控发现K8s节点异常,跟着导师排查到凌晨5点搞定,第二天客户还特意发邮件感谢。这让我重新思考自己的职业路径,打算下学期考个CKA认证,现在每天抽1小时看kubeadm的源码注释,感觉分布式领域真的深不可测。

3行业趋势展望

公司用Elasticsearch做日志分析让我大开眼界,以前只在课程设计用过,没想到生产环境里还能解决实时告警问题。技术选型上他们特别注重云原生,现在我们组也在研究Serverless架构,下周要给导师做个FaaS方案对比分析。

4心态转变

最明显的变化是抗压能力,记得刚来时遇到线上问题就浑身冒汗,现在能冷静分析日志了。记得7月15日那个高并发测试,CPU飙到95%时我居然能条理清晰地复现问题,导师说这是"从学生到职场人的关键一步"。

5未来行动

下学期打算用实习攒的钱报个AWS认证班,现在每天在LeetCode上刷3道中等难度题目,目标是把动态规划专题的正确率提到85%以上。导师说现在能独立重构模块说明基础扎实了,再过半年应该能胜任初级后端岗位。

6对专业的再认识

这次才真正理解微服务架构不是炫技,当订单模块部署到3台服务器后,再扩容其实只需要加个命令,这种弹性真的酷毙了。以前觉得分布式就是加个集群标签,现在知道每个组件都要考虑故障转移,比如Redis主从同步不能只靠备份。

四、致谢

1

感谢公司给我这个实习机会,让我第一次摸清企业级开发的流程。

2

特别感谢导师的耐心指导,那个权限模块的SQL优化问题要不是他演示InnoD

温馨提示

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

评论

0/150

提交评论