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

付费下载

下载本文档

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

文档简介

计算机科学与技术XX软件开发工程师实习报告一、摘要2023年7月1日至2023年8月31日,我在XX公司担任软件开发工程师实习生,负责参与XX系统后端模块开发与测试。通过8周实践,完成3个核心API接口开发,日均处理数据量达2000条,接口响应时间稳定在120ms以下。运用Java与SpringBoot框架实现模块解耦,采用Git进行版本控制,累计提交代码137次。参与代码评审5次,发现并修复23处潜在bug,推动单元测试覆盖率提升至85%。掌握敏捷开发流程,将需求开发周期缩短20%。提炼出基于Redis缓存优化的数据处理方法论,可提升系统吞吐量30%。通过实习深化对分布式架构理解,积累实战问题排查经验。二、实习内容及过程1实习目的想通过实习摸摸实际开发啥样,看看自己学的那些东西在业界用得怎么样,顺便积累点项目经验,为以后找工作打打基础。2实习单位简介我在一家做企业服务的公司实习,主要是帮客户开发内部管理系统,用Java、SpringCloud这些技术,规模不算特别大,但项目挺多,开发节奏也挺快。3实习内容与过程刚进去的时候跟着导师熟悉项目,主要是看现有代码和文档,一周后开始接手具体任务。我负责的后端模块主要是用户权限管理这块,需求是开发一套RBAC(基于角色的访问控制)模型,实现权限的动态分配和校验。我花了三天时间把相关技术资料捋顺,包括SpringSecurity的配置和数据库表设计。遇到个麻烦是原有系统没太做好权限隔离,有些接口写法比较随意,得一点点重构。比如有个项目需求是让财务人员只能看报表不能改数据,我就在Controller层加了一堆校验注解,配合数据库的ACL(访问控制列表)字段做拦截。开发过程中用了Redis缓存token信息,减少数据库查询,测试时发现接口响应时间从350ms降到120ms左右。导师还让我参与过一次代码评审,我写的几个API因为参数校验不严被提了修改意见,后面就养成了先写单元测试再提交的habit。实习期间碰到过两次技术难题。一次是并发场景下Redis缓存和数据库数据不一致,查了资料才知道是没做分布式锁,最后用Spring的@Lock注解解决。另一次是部署时容器内存溢出,排查发现是某个第三方SDK内存泄漏,最后换成另一个轻量级库。这两次问题让我对分布式系统和性能优化有了更直观认识。4实习成果与收获8周里独立完成了3个核心API开发,单元测试覆盖率从60%提到85%,参与重构的模块后线上告警数降了40%。印象最深的是那个权限系统上线后,客户反馈权限变更操作比原来快了将近一半。除了技术层面,还学会了跟产品、测试对接需求,知道怎么用Jira管理任务,这些软技能挺实用的。5问题与建议实习期间感觉公司培训体系有点欠缺,新人手册翻来覆去就是那几页,很多技术细节得靠导师带或者自己摸索。建议可以搞个在线知识库,把常见问题、架构设计文档都放上去,省得新人到处问。另外我们组用的CI/CD流程比较简陋,每次部署都要手动操作好几次,有时候还会出错,要是能引入GitLabPipeline自动构建测试环境就好了。三、总结与体会1实习价值闭环这8周实习让我把学校学的理论知识跟实际工作联系起来。刚来的时候挺懵的,面对复杂的项目代码完全看不懂,觉得学校教的SpringBoot好像跟人家用的SpringCloud完全不是一回事。后来跟着导师一点点啃文档、调试代码,慢慢就摸清了门道。记得7月15号那个晚上,为了解决一个线程池导致的内存泄漏问题,我查了3个多小时资料,最后用Arthas在线诊断定位到问题点,虽然过程很熬人,但解决后看到系统指标恢复正常,心里特别踏实。这种把问题从无到有完整解决的过程,就是实习最大的收获。这8周里写的137个Git提交记录,每个都带着当时的思考痕迹。最让我有成就感的是那个权限系统重构项目,客户反馈说原先修改权限要5分钟,改完只要30秒,这种直接创造价值的感觉,比在学校做课程设计强太多了。2职业规划联结实习让我更清楚自己想往哪个方向发展了。之前对前后端、运维都有兴趣,现在明确想专注做后端架构,特别是分布式系统这块。这次用的Redis缓存优化手段、分布式事务解决方案,都给我打下了基础。下学期打算报个AWS认证课程,把云原生这块补上。导师跟我说过,我们组新上线的微服务架构用的是SpringCloudAlibaba,等我学扎实了可以主动找他了解更深入的实践。这段经历也让我意识到,职场跟学校完全两码事。学校做项目可以随便试错,公司开发必须考虑成本和稳定性。比如之前写代码为了追求性能随便用了一些内存缓存,没考虑分布式场景下的数据一致性,导师直接给我指出来,说现在架构师最忌讳这种做法。这种硬碰硬的教训比单纯听课有效多了。3行业趋势展望公司现在用的很多技术比如服务网格Istio、分布式链路追踪SkyWalking,都是业界的顶流方案。这让我感受到技术迭代有多快,8周前觉得新鲜的微服务治理,现在很多创业公司都在用。导师还给我分享过他们参与的某银行项目,用了Flink做实时风控计算,单天处理流水超千亿级别。这让我意识到,学校教的只是基础,真正厉害的工程师必须保持终身学习。这次实习也让我看到传统企业数字化转型的决心。客户那边有个老系统想用SpringBoot重写,结果发现历史遗留问题太多,最后只能做部分模块替换。这让我明白,技术选型不能光看时髦,得结合业务场景,这也是学校没教但很重要的一课。心态转变上,以前觉得写代码就是实现功能,现在明白每个决策都要考虑可维护性、扩展性。7月底提交的最后一个项目文档里,我特意加了架构演进图,虽然导师没明说,但我感觉他点头的时候挺满意。这种责任感是从没实习过时完全体会不到的。下一步打算把实习用到的技术再系统梳理一遍,特别是Redis高级应用、分布式事务解决方案,争取年底前拿下PMP证书。毕竟现在面试最看重的还是解决问题的能力,而这些实战经验是简历上写不到的。四、致谢1在XX公司这8周的实习经历,让我受益匪浅。感谢公司提供宝贵的机会,让我接触到了真实的软件开发流程。特别感谢我的导师,在遇到技术难题时给予的耐心指导,比如帮我解决Redis缓存一致性问题时的讲解,让我对分布式系统有了更深的理解。2感谢一起工作的各位同事,他们在我迷茫时分享过很多实用的开发经验,比如如何高效使用Git进行团队协

温馨提示

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

评论

0/150

提交评论