一、实习基本情况
本人自2023年6月26日至2023年9月8日,于XX科技有限公司技术研发部进行了为期十二周的毕业实习。实习岗位为Java后端开发实习生,主要参与公司“智慧办公协同平台”项目组的迭代开发与维护工作。实习期间,导师为资深工程师王明,负责指导我的技术学习与任务实践。
二、实习任务与完成情况
本次实习的核心任务是融入真实项目开发流程,完成指定的功能模块开发与Bug修复。具体工作内容与成果如下:
1. 参与需求分析与技术评审:参加了三次迭代需求评审会议,理解了从产品需求到技术方案落地的完整过程,学会了阅读产品需求文档(PRD)并针对技术可行性提出初步意见。
2. 负责模块开发与测试:独立负责“会议室预约管理”模块中“预约历史查询与导出”功能的开发。使用Spring Boot框架,结合MyBatis-Plus完成数据持久层开发,实现了按时间、部门等多条件复合查询及Excel格式数据导出。该功能经过单元测试与集成测试后,已随项目版本V2.3.0上线,运行稳定。
3. 参与系统故障排查与修复:在导师指导下,协助排查并解决了生产环境中因缓存击穿导致的接口响应超时问题。通过分析日志、使用Arthas工具进行线上诊断,最终采用布隆过滤器与空值缓存结合的方式进行了修复,并提交了事故分析报告。
4. 代码维护与优化:对项目中部分遗留代码进行了重构,优化了数据库查询语句,将某个核心接口的响应时间从平均约500毫秒降低至200毫秒以内。
5. 技术学习与分享:每周参与团队内部技术分享会,学习了公司目前使用的容器化(Docker)与持续集成(Jenkins)流程,并做了一次关于“MyBatis-Plus高级查询功能应用”的组内小型分享。
三、专业知识与技能应用
实习期间,我将大学所学理论知识应用于实际工作,具体体现在:
1. 编程语言与框架:深入运用了Java语言特性,熟练使用了Spring Boot、Spring MVC、MyBatis-Plus等主流开发框架,熟悉了基于Maven的项目构建与管理。
2. 数据库技术:巩固了MySQL数据库设计与SQL优化知识,掌握了在实际高并发场景下,通过索引优化、查询拆分等方式提升数据库性能。
3. 工具与协作:熟练使用Git进行版本控制和团队协作,熟悉了Postman进行接口测试,掌握了使用IDEA、Navicat等开发与数据库管理工具的高级功能。
4. 软件工程实践:亲身体验了敏捷开发(Scrum)模式下的完整工作流程,包括每日站会、迭代计划会、代码评审等,理解了规范编码、撰写清晰注释和编写技术文档的重要性。
四、问题与反思
实习过程中也暴露出一些不足:初期对大型项目的代码结构理解不够深入,在定位问题时花费了较多时间;面对线上紧急问题,心理素质有待加强,在导师引导下才逐步学会有条理地分析。这让我认识到,扎实的代码阅读能力、冷静的问题分析能力和高效的团队沟通能力与纯粹的技术能力同等重要。
五、实习收获与体会
通过本次实习,我完成了从学生到准职业人的初步转变。不仅提升了专业技能,更关键的是理解了企业级软件开发的规范和标准,培养了责任心和团队协作精神。我深刻体会到,计算机技术的学习永无止境,必须保持持续学习的热情,并将理论紧密联系实际,才能解决真实世界中的复杂问题。此次实习经历为我后续的职业发展奠定了坚实的基础。
实习人:XXX
日期:2023年9月15日