软件工程与信息科学专业软件公司软件工程师实习生实习报告_第1页
软件工程与信息科学专业软件公司软件工程师实习生实习报告_第2页
软件工程与信息科学专业软件公司软件工程师实习生实习报告_第3页
软件工程与信息科学专业软件公司软件工程师实习生实习报告_第4页
软件工程与信息科学专业软件公司软件工程师实习生实习报告_第5页
全文预览已结束

下载本文档

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

文档简介

软件工程与信息科学专业软件公司软件工程师实习生实习报告一、摘要

2023年7月1日至2023年8月31日,我在一家软件公司担任软件工程师实习生,主要负责后端系统开发与优化。期间,参与完成3个模块的开发,包括用户认证系统、数据可视化接口和自动化测试框架,累计编写并调试代码1200行,修复Bug45个,其中20个为高优先级问题。通过应用Git进行版本控制,提升了团队协作效率,将接口响应时间从平均500ms优化至200ms。熟练运用Java、SpringBoot和MySQL,深入理解RESTfulAPI设计原则和敏捷开发流程。在项目中实践了单元测试与集成测试,覆盖率从60%提升至85%,验证了自动化测试在提高代码质量方面的有效性。总结了基于日志分析的故障排查方法论,可复用于类似场景的快速定位问题根源。

二、实习内容及过程

2023年7月1日到8月31日,我在一家做企业级软件的团队实习,职位是软件工程师。来之前想多了解实际开发怎么跑,怎么跟团队配合,学点真本事。公司是那种做B2B产品的,客户主要是金融和医疗行业,技术栈偏Java和云原生,用的环境都是容器化部署,Kubernetes用得挺多。

实习期间主要跟了个项目,帮后端团队做数据同步模块。具体做了两个小功能:一个是为销售系统对接ERP,每天凌晨跑增量数据,我负责写ETL脚本,用了Python脚本配合数据库CDC技术,跑了大概5万条数据,耗时从半小时优化到15分钟;另一个是搭一个监控看板,用Elasticsearch和Grafana,把应用日志和APM数据聚合起来,让运维同学方便查问题。期间还参与了两个老系统的重构,把一些JDBC直连改成了MyBatis,代码量差不多,但感觉维护方便多了。

遇到最大麻烦是第一次写API接口,需求文档写得有点天书,跟产品沟通半天没整明白,导致返工好几次。后来我直接找前端同事要了几个调用案例,对着Debug一步步试,还去查了OpenAPI规范,慢慢就摸清了套路。另一个难的是调试分布式事务,一笔订单跨三个系统,日志看着乱七八糟,最后发现是消息队列延迟导致,调了半天时间戳参数才好。这些事让我知道,光会写代码不够,得懂业务,还得会Debug各种边界情况。

整个过程跟着团队用了GitFlow管理版本,需求评审、每日站会、CodeReview这些流程都参与进去了,感觉挺规范。写代码用到了SpringBoot、MyBatis、Redis,还接触了Docker和Jenkins,收获最大的可能是学会了怎么写健壮的代码,比如怎么处理高并发下的超时问题,怎么用Redis缓存避免数据库压力。最大的感悟是学校学的理论和公司用的工具有差距,比如单元测试写得很简单,实际用JUnit结合Mockito要复杂得多。

公司整体氛围还行,但感觉新人培训有点水,就发了几篇文档让我们看,没人带。而且岗位匹配度不算特别高,给我安排的任务有些基础,比如写单元测试,我这种想学深点的有点懵。建议他们搞个新人导师计划,或者给实习生安排点更有挑战的活儿,比如参与架构讨论啥的。再就是CodeReview可以更细致点,现在有点流于形式,就挑几个语法错误,关键逻辑问题没人提。

三、总结与体会

这8周,从2023年7月到8月,感觉像是被扔进了真实世界的编程池里,呛了好几口水,但也游得更稳了点。实习最大的价值就是把学校学的那些抽象概念,比如设计模式、软件生命周期,跟实际项目里的坑坑洼洼对上了号。参与的数据同步项目,当初为了把5万条数据传输时间从半小时砍到15分钟,我折腾了各种缓存策略和并发工具,最后用Redis+线程池搞定了,这比课本上随便举个例子来得实在。写API接口时踩的坑,关于参数校验和异常处理的那些细节,现在想起来还觉得后怕,但确实让代码质量上去了,至少线上没出过那种让我脸红的Bug。这种从无到有、被用户实际使用的成就感,是做课程设计没法比的。

对我职业规划的影响挺直接的。之前有点摇摆,想做后端还是前端,现在比较明确想往分布式系统方向发展了。公司那套基于微服务的架构,几个团队像搭积木似的拼起来,让我看到技术怎么真正解决复杂问题。实习最后做的那个监控看板,用Elasticsearch+Grafana把几十个服务的日志和指标串起来,感觉特别酷,也发现自己对数据分析和可视化的兴趣。所以接下来打算深挖下Prometheus+Grafana这套组合,顺便看看CKA认证啥的有没有必要考。

行业里感觉变化挺快的,现在到处都在讲云原生、Serverless,容器化部署、DevOps文化已经是标配了。我们用Kubernetes的时候,老大就说了,现在环境差异那么大,能跑通线上,换个平台基本也能搞。这点特别印证了技术广度的重要性。不过也看到,光会工具还不够,怎么在敏捷开发里做好需求优先级排序,怎么在跨团队协作中有效沟通,这些软技能比我会不会某个框架更关键。

心态转变挺明显的。以前写代码觉得对就是对错就是错,现在明白要考虑成本、性能、可维护性,甚至用户体验。比如做ETL脚本时,为了追求速度用了数据库锁,结果发现影响主库性能,后来改用消息队列解耦,虽然慢点但系统稳定多了。这种在资源、时间、质量多维度找平衡的感觉,就是责任感的体现。抗压能力也强了点,需求变更、紧急上线、线上问题,一天经历好几回,虽然焦虑但确实学到怎么快速定位和解决问题。

总的来说,这段经历像打了疫苗,虽然过程有点难受,但免疫了好多实际工作中可能遇到的毒。接下来会把这些经验当个参照系,学习上更有针对性,求职时也能跟面试官扯点真东西。就像现在琢磨着怎么把实习里总

温馨提示

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

评论

0/150

提交评论