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

下载本文档

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

文档简介

计算机技术科技公司软件开发实习报告一、摘要2023年7月10日至2023年9月5日,我在一家计算机技术科技公司担任软件开发实习生,负责后端系统开发与优化。核心工作成果包括:独立完成3个API模块开发,累计修复15个线上Bug,将某核心接口响应时间从500ms缩短至150ms,通过引入缓存机制,使系统QPS提升40%。专业技能应用方面,熟练运用Java、SpringBoot框架,结合Git进行版本控制,采用单元测试覆盖率达85%的标准。提炼出可复用的方法论:通过自动化脚本每日生成测试报告,将Bug响应周期从2天压缩至6小时,并建立代码审查模板,有效降低团队协作损耗。二、实习内容及过程实习目的主要是想把学校学的理论知识跟实际工作对接上,看看后端开发在真实项目里是怎么跑的。实习单位是做分布式系统开发的公司,主要业务是提供云服务解决方案,技术栈以Java、Kubernetes和大数据平台为主。我在实习期间被分到开发部,跟着一个做订单管理系统的项目组。实习内容开始是熟悉项目代码库,主要是SpringBoot框架搭建的微服务架构,有订单、支付、库存三个核心模块。导师让我先从订单模块的Bug修复开始,比如有个接口因为数据库事务处理不当,偶尔会出现订单状态不一致的问题。我花了三天时间,通过添加分布式锁(Redisson实现)和优化SQL查询,把这个问题解决得差不多,线上故障率从每周两三次降到了几乎为零。接下来是参与新功能的开发,我负责的是支付模块的异步通知处理接口。需求是支持对账功能,需要对接第三方支付平台的回调接口。这个功能比较棘手,因为对方接口文档写得乱七八糟,而且时延特别不稳定,有时候3秒内,有时候得等10分钟。我弄了个消息队列(RabbitMQ)来缓冲这些回调,并设置了重试机制,最多重试5次。测试阶段发现成功率从最初的65%提升到了92%,日均处理回调请求大概有5万次。在这个过程中,我每天早上先开站会同步进度,下午跟导师CodeReview,晚上写单元测试和Jira记录。印象最深的是有一次重构代码,把原来的单体服务拆成了三个独立部署的微服务,结果把缓存逻辑给弄错了,导致好几个接口超时。那段时间压力挺大的,导师就带我复盘,教我怎么用Arthas热更新功能逐步调试,最后发现是分布式缓存策略没同步好。学到了不少关于CAP理论在实践中的取舍。困难方面,最大的挑战是业务逻辑理解。比如刚开始写订单取消接口时,没考虑到优惠券状态回滚的问题,导致财务那边对账出错。后来我弄了个业务流程时序图,把每个节点的状态变更都标清楚,这样沟通起来直观多了。另一个就是性能调优,有个报表接口因为没加索引,跑起来要几分钟,我花了两天时间分析SQL执行计划,最后加了几张覆盖字段宽表,响应时间直接从3分钟缩到10秒。实习成果的话,我提交了8个功能模块的代码,单元测试覆盖率达到88%,修复了12个线上问题,其中3个是我独立定位的。比较满意的是那个支付回调重构,上线后客户反馈系统稳定性明显提升。这段经历让我意识到,学校教的Spring、数据库这些还是基础,但像分布式事务、服务治理这些才是关键。现在回头看,最值钱的是导师教我的调试方法,比如怎么通过日志埋点快速定位跨模块调用的问题,这种经验真的很难在学校学到。职业规划上,我开始想往中间件方向发展,感觉这块儿技术深度和业务复杂度结合得特别好。实习单位的问题主要是管理有点乱,比如需求变更频繁,但流程上又没跟着调整,导致开发计划经常被打乱。培训机制也一般,新来的实习生基本靠自学,团队内部文档做得也不够完善。岗位匹配度上,我这边偏后端开发,但接触了点前端和运维的内容,感觉收获挺全面的。改进建议的话,希望公司能给实习生做点岗前技术培训,比如分布式架构、中间件选型这些,不用太深,但至少能建立个整体认知。需求变更方面,能不能搞个简单的评审会,把影响评估出来?另外,文档系统得加强,现在找资料挺费劲的。三、总结与体会这8周实习,感觉像是从理论世界猛地扎进了实践海洋,每天面对的真实需求和线上问题,远比书本上那些假设情景来得复杂和具体。8月15号刚接手订单模块时,碰到个并发更新导致数据脏读的坑,花了整整两天才通过加锁和调整隔离级别解决,那会儿真是有点崩溃。现在回看,这比在实验室写通过的单元测试有价值的多。这段经历让我明白,代码不仅要能跑,还得能扛住压力,这种工程思维的培养,是学校里很难给的。实习最大的价值在于,让我把学校学的那些零散知识点串联起来了。比如分布式事务的几种方案,在学校是几个概念,实习中在订单系统里真用到了TCC模式,虽然只是辅助方案,但把理论落地的感觉很棒。导师教我调试时用的mavenantrunplugin脚本生成日志埋点,现在我自己写项目也习惯这么干,效率确实高。这种技能的转化,感觉就是实习给我的最直接回报。职业规划上,这次实习让我更坚定了后端方向,特别是中间件这块儿,像Redis集群管理、Kafka调优这些,实际操作起来比单纯看书有意思多了。之前想考个AWS认证,现在看来,可能先去搞个CKA更实在,毕竟公司里现在用的都是k8s全家桶。而且,发现运维和开发的结合越来越重要,以前觉得那是另一门手艺,现在明白,开发不把资源、监控考虑进去,线上问题还是一堆。所以后续打算学学Prometheus和Grafana。行业趋势这块,感觉现在云原生和大数据湖是主流,8月25号去听了个部门内部分享,讲的就是他们怎么把旧系统迁移到Elasticsearch集群上做实时分析,数据量从每天几GB飙到几十TB,性能反而提升了。这让我意识到,以前觉得离自己很远的领域,其实技术迭代很快,现在做开发不能只盯着业务逻辑,还得懂点架构和大数据。公司用的很多开源技术,比如Nacos做服务发现,感觉后续自己搞个项目,用这些技术栈做Demo会很有优势。心态转变上,最大的变化是对“责任”这两个字有了具体感受。9月1号上线支付重构功能后,连续一周都睡不好,生怕出问题,这种压力是学校考试绝对给不了的。但好在系统运行稳定,收到客户邮件说稳定性提升,那一刻感觉挺值的。抗压能力也明显变强了,以前遇到bug就想扔代码,现在会先冷静分析日志,用Arthas热更新一个个试,虽然慢点,但准。这种心态转变,可能比学会什么新技术更重要吧。未来打算把实习里没吃透的分布式缓存、消息队列搞透,下学期争取去实验室搭个类似的环境练练手。另外,导师说的“代码要能讲得清”,我一直记着,准备拿这个标准来要求自己以后写的每一个类和接口。实习虽然结束了,但感觉才刚刚开始,这些经历肯定会成

温馨提示

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

评论

0/150

提交评论