计算机科学XXIT公司软件工程师实习生实习报告_第1页
计算机科学XXIT公司软件工程师实习生实习报告_第2页
计算机科学XXIT公司软件工程师实习生实习报告_第3页
计算机科学XXIT公司软件工程师实习生实习报告_第4页
全文预览已结束

付费下载

下载本文档

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

文档简介

计算机科学XXIT公司软件工程师实习生实习报告一、摘要2023年6月5日至8月23日,我在XXIT公司担任软件工程师实习生,参与智能推荐系统后端开发。核心工作成果包括重构用户画像处理模块,将数据处理效率提升30%,日均处理用户数据量从5000条增至9000条;优化API响应时间,平均耗时从800毫秒降至350毫秒,支撑线上A/B测试。期间应用Python与Spark完成离线计算任务,使用Docker容器化部署服务,实践CI/CD流程,累计提交代码127次,通过GitLabMergeRequest解决冲突23次。提炼出基于日志分析定位性能瓶颈的方法,以及微服务架构下的监控数据联动优化策略,可复用于高并发场景下的系统调优。二、实习内容及过程2023年6月5日入职XXIT公司,被分配到智能推荐团队做软件工程师实习生。团队负责的商品推荐系统用户量接近千万级,后端主要用Java和Python搭建,数据存储依赖HBase和Elasticsearch。初期跟着导师熟悉业务逻辑,花了两周时间把用户行为日志数据接入实时计算平台Flink,处理量从每小时5万条提到8万条,但遇到数据倾斜问题,部分分区的延迟飙到几分钟。导师建议用动态分区策略,我重新设计了Key分布规则,加了个预聚合层,第二天监控看延迟稳定在几十秒内。这段经历让我第一次完整经历从需求到上线的数据链路改造。第二阶段参与推荐算法的工程化落地,具体是优化召回模型的API性能。原接口用Spark计算特征,每次请求都要跑半小时,线上请求堆积时用户反馈卡顿。我尝试把中间结果存进Redis,把计算拆成两个微服务,一个负责冷启动初始化,一个用消息队列Kafka异步更新。上线后QPS从200提升到500,错误率从0.5%降到0.1%。但测试时发现高并发下Redis偶尔超时,临时加了本地缓存层缓解。导师说这种场景很适合用Raft协议保证数据一致性,让我回去多看看分布式系统论文。遇到过几次代码评审被挑出设计问题,比如一次用SpringCloudGateway路由时,没考虑到灰度发布方案,导师让我重写为基于权重轮询的动态配置。还有次写Python脚本处理用户画像数据,用到了pandas但没注意内存泄漏,导致JVM堆溢出,最后改用Dask分布式计算才解决。这些错误让我明白高并发系统设计必须考虑容错和弹性,不能只关注单点性能。实习最后两周负责监控系统的重构,把Prometheus+Grafana的告警规则从200多条合并成50条,加了几组基于业务场景的复合指标,比如“推荐点击率下降超过5%且活跃用户下滑20%”的联动告警。上线后运维同事说看报表时间缩短了,但我也知道还有优化空间,比如可以引入机器学习预测异常。这段经历让我意识到做软件要平衡开发效率和使用体验。三、总结与体会这8周在XXIT公司的经历,让我把课堂上学到的分布式系统、微服务架构这些概念,真真切切用到了生产环境里。刚开始写代码总想着用最新技术,比如非必要用不上eBPF做性能调优,后来发现把Redis配置优化好,加个合理的缓存策略,效果比堆砌新技术明显多了。6月12号那个下午,为了解决Flink数据倾斜问题,我跟导师磨了三个小时,最后通过调整Key哈希函数搞定,那种把复杂问题搞定的成就感,比做任何题都实在。这段经历让我明白,技术落地不是抄论文,是要结合业务场景和数据的。实习最大的收获是学会了怎么跟人协作。比如7月8号那会儿,推荐算法的工程化需求突然改版,我写的特征服务接口要兼容旧逻辑,当时压力特别大,因为时间已经不够了。最后是拉上前后端同事一起看接口文档,把兼容方案细化到每个参数,晚上三点才把代码推上去。上线后第二天看监控,错误率确实控制住了,但第二天晚上又发现一个边缘case没处理到。这种被压力逼着快速成长的感觉,跟在学校做实验完全不一样。现在写代码会主动多考虑几个边界条件,也更理解运维同事说的“稳定压倒一切”。通过参与监控系统重构,我发现现在大厂的SRE理念已经渗透到每个开发环节。8月15号写监控告警策略时,意识到自己懂的不多,回去就把Prometheus的Alertmanager配置、OpenTelemetry的指标规范重新看了几遍,甚至报名了AWS的Developer认证考试。这让我看到,学校里学的那点东西太零散了,企业级开发更看重体系化解决问题的能力。比如我之前觉得分布式事务是难题,但实习里用消息队列实现最终一致性,其实把CAP理论用在了实践中。展望未来,这段经历直接让我对职业规划有了新想法。以前觉得做算法工程师最好,现在发现算法落地离不开工程能力,可能我会往DataEngineer方向发展。8月23号离职那天,导师跟我说“学校是学会做什么,公司是学会怎么做好”,这句话我会记很久。接下来打算补齐分布式数据库和云原生这块短板,争取下个实习机会能接触更复杂的系统。感觉这次实习就像打通了任督二脉,虽然过程很累,但真的把“计算机科学”这四个字理解深了。致谢感谢XXIT公司给我这次实习机会,让我能在实际项目中学习和成长。特别感谢导师的悉心指导,在Flink调优和微服务设计上给了我很多启发,他分享的解决复杂问题的思路我现在还在用

温馨提示

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

评论

0/150

提交评论