信息技术科联所软件工程师实习生实习报告_第1页
信息技术科联所软件工程师实习生实习报告_第2页
信息技术科联所软件工程师实习生实习报告_第3页
信息技术科联所软件工程师实习生实习报告_第4页
信息技术科联所软件工程师实习生实习报告_第5页
全文预览已结束

付费下载

下载本文档

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

文档简介

信息技术科联所软件工程师实习生实习报告一、摘要2023年6月5日至8月22日,我在信息技术科联所担任软件工程师实习生,负责核心系统模块开发与测试。通过8周实践,完成3个功能模块编码,累计编写代码约1.2万行,其中单元测试覆盖率达85%;参与5次代码评审,提出12项优化建议被采纳。运用JavaSpringBoot框架开发RESTfulAPI接口,集成MySQL数据库实现数据持久化,通过JMeter进行压力测试,确定系统在并发100用户的场景下响应时间稳定在0.8秒内。总结出自动化测试脚本编写流程,包括需求分析、用例设计、执行与结果反馈等环节,形成可复用工具包,提升团队测试效率约30%。二、实习内容及过程1.实习目的想通过实践了解软件开发全流程,把学校学的数据结构、算法这些知识用上,看看自己到底适合不适合干这行,顺便熟悉下职场环境怎么运转。2.实习单位简介我在的信息技术科联所主要搞些企业级定制软件开发,客户以政府部门和大型企业为主,技术栈偏Java和Python,用得比较多的是SpringBoot框架,数据库都是MySQL和Oracle。3.实习内容与过程开头两周跟着导师熟悉项目,主要是看老代码和文档,弄懂系统架构。3号开始参与一个内部管理系统的开发,负责用户权限模块。用JavaSpringSecurity做认证,搞了RBAC权限模型,把用户角色和资源权限都弄成数据库表,搞了张关联表。每天大概写2000来字代码,还跑了好多次bug,有时候半夜被数据库死锁整醒,最后发现是索引没加对。导师教我用JProfiler查性能瓶颈,那玩意儿真香,帮我把一段慢查询优化了3倍。中期参与了一次系统升级,把旧版3.1的Spring版本直接换到3.3,踩了不少坑,比如@Valid注解的校验器变了,得手动改配置。还学了点Docker部署,把本地环境搭成镜像,方便团队快速上手。4.实习成果与收获最终把权限模块按时交付,测试覆盖率做到87%,上线后运维说比以前稳定多了。最大的收获是搞懂了企业级项目怎么管需求,怎么写可维护的代码。以前写代码随心所欲,现在知道要考虑扩展性,比如用接口和抽象类,而不是硬编码。还学会了怎么写自动化测试用例,用JUnit和Mockito模拟依赖,搞了5个核心场景的测试,每次提交代码前都跑一遍,避免回归bug。职业规划上更明确了,想往后深耕微服务架构这块,感觉能学到的东西还多。5.问题与建议遇到最大的困难是部门管理有点乱,不同项目组交接信息不及时,我接手的那段代码注释少,花了两天才搞明白逻辑。另外培训机制也一般,就给了一本过时的技术文档,很多问题都得自己搜网盘找老员工的笔记。建议公司搞个内部Wiki,强制每个人写技术文档,还得多组织几次技术分享会,比如像SpringCloudAlibaba这种新框架得多讲讲。岗位匹配度上,感觉学校教的软件工程理论用得少,企业更看重实际动手能力,像数据库调优、中间件配置这些实操课得加多些。三、总结与体会1.实习价值闭环这8周像坐了个加速器,把课本里那些抽象的概念具象化了。刚来的时候觉得SpringBoot就是配配参数,去了发现里头的门道多着呢,比如AOP怎么用才能不写出屎山代码,线程池配置啥的又得结合系统负载反复调。记得6月12号那个下午,为了把一个慢查询优化到0.5秒内,我翻了N篇博客,试了三种索引方案,最后用EXPLAIN分析执行计划才搞定,那一刻感觉真踏实。实习结束回头看,感觉自己从只会写HelloWorld的愣头青,变成能看懂点复杂业务逻辑的半吊子工程师了。写代码的数量从每天几百行到稳定2000行,质量上也没得说,提交的PR一次过审,导师都夸我懂Gitflow了。这种从无到有、解决问题的过程,比学校做项目有挑战多了,也更有成就感。2.职业规划联结这段经历让我更清楚自己的短板,比如对分布式系统这块了解太浅,7月份参与项目的时候还问导师Redis集群怎么用的,他给我画了个架构图,说要是学这块得啃RedisSentinel、RedisCluster这些。现在打算下学期直接报个AWS认证,先把云平台基础打牢,听说现在很多公司微服务都搭在云上了。另外实习里发现我调试能力还可以,几次定位bug都靠jstack和线程追踪,想再考个系统分析师证书试试,感觉对后面转架构师有帮助。导师说技术好的人分两种,一种是写代码快的,一种是解决复杂问题的,我可能得往后者方向发展,得多看些设计模式和高并发方面的书。3.行业趋势展望感觉现在行业变化太快了,6月份刚去的时候还在用传统的单体架构,不到一个月就听说隔壁组在搞微服务拆分,用了DockerSwarm做编排,容器化部署成了标配。这让我意识到学校教的那些基础太重要了,像计算机网络、操作系统这些,现在很多公司面试直接考Linux命令和内核知识。另外看到不少团队在用Jenkins搞CI/CD,自动化测试覆盖率都要求85%以上,再继续写那种提交代码得手动编译部署的,迟早被淘汰。下阶段打算多关注Kubernetes和Serverless这些新技术,听说未来云原生会成为主流,现在开始学点东西也不算晚。这次实习最大的感受是,技术这东西真学不完,得保持空杯心态,多看多练多交流,才能跟上趟。四、致谢1.感谢信息技术科联所给我这次实习机会,让我接触到了真实的软件开发环境。2.特别感谢我的导师,在实习期间给予的悉心指导和耐心解答,特

温馨提示

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

评论

0/150

提交评论