軟件工程軟件研發(fā)開(kāi)發(fā)工程師實(shí)習(xí)報(bào)告_第1頁(yè)
軟件工程軟件研發(fā)開(kāi)發(fā)工程師實(shí)習(xí)報(bào)告_第2頁(yè)
軟件工程軟件研發(fā)開(kāi)發(fā)工程師實(shí)習(xí)報(bào)告_第3頁(yè)
軟件工程軟件研發(fā)開(kāi)發(fā)工程師實(shí)習(xí)報(bào)告_第4頁(yè)
全文預(yù)覽已結(jié)束

付費(fèi)下載

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

軟件工程軟件研發(fā)開(kāi)發(fā)工程師實(shí)習(xí)報(bào)告一、摘要

2023年7月10日至2023年9月5日,我在一家科技公司擔(dān)任軟件研發(fā)開(kāi)發(fā)工程師實(shí)習(xí)生,參與智能推薦系統(tǒng)的后端開(kāi)發(fā)工作。核心工作成果包括重構(gòu)了用戶行為分析模塊,將接口響應(yīng)時(shí)間從450ms優(yōu)化至120ms,吞吐量提升300%;獨(dú)立開(kāi)發(fā)并上線了實(shí)時(shí)數(shù)據(jù)推送功能,日處理數(shù)據(jù)量達(dá)500萬(wàn)條,準(zhǔn)確率達(dá)到98.5%。期間應(yīng)用了SpringBoot框架進(jìn)行API開(kāi)發(fā),通過(guò)Redis緩存技術(shù)減少了數(shù)據(jù)庫(kù)查詢次數(shù)80%,并運(yùn)用Git進(jìn)行版本控制,協(xié)同完成了5個(gè)功能模塊的迭代。提煉出的可復(fù)用方法論包括:采用敏捷開(kāi)發(fā)中的小步快跑策略,通過(guò)單元測(cè)試覆蓋率達(dá)95%的實(shí)踐驗(yàn)證了自動(dòng)化測(cè)試的有效性;利用Docker容器化部署提升了環(huán)境一致性,錯(cuò)誤率降低了60%。

二、實(shí)習(xí)內(nèi)容及過(guò)程

實(shí)習(xí)目的是深入了解軟件開(kāi)發(fā)的實(shí)際工作流程,提升編碼和問(wèn)題解決能力。實(shí)習(xí)單位主要從事在線服務(wù)平臺(tái)的研發(fā),技術(shù)棧偏向分布式和微服務(wù)架構(gòu)。我所在的團(tuán)隊(duì)負(fù)責(zé)一個(gè)用戶增長(zhǎng)相關(guān)的項(xiàng)目,目標(biāo)是提升用戶活躍度和留存率。

實(shí)習(xí)期間,我主要參與了推薦系統(tǒng)的后端開(kāi)發(fā)。具體工作包括重構(gòu)用戶行為分析模塊,優(yōu)化數(shù)據(jù)庫(kù)查詢語(yǔ)句,引入Redis緩存熱點(diǎn)數(shù)據(jù)。7月20號(hào)到8月5號(hào),我負(fù)責(zé)實(shí)時(shí)數(shù)據(jù)推送功能的設(shè)計(jì)與實(shí)現(xiàn)。這個(gè)功能要求在用戶行為發(fā)生時(shí),1秒內(nèi)將數(shù)據(jù)推送到客戶端。我用了Kafka做消息隊(duì)列,配合Flink進(jìn)行實(shí)時(shí)計(jì)算,最終把延遲控制在200毫秒以內(nèi)。

遇到的第一個(gè)挑戰(zhàn)是緩存命中率低,8月10號(hào)監(jiān)控?cái)?shù)據(jù)顯示,核心接口的緩存未命中率達(dá)到35%,導(dǎo)致響應(yīng)時(shí)間居高不下。我通過(guò)分析請(qǐng)求日志發(fā)現(xiàn),緩存失效策略設(shè)置不合理。后來(lái)調(diào)整了TTL值,并對(duì)熱點(diǎn)數(shù)據(jù)進(jìn)行預(yù)加載,命中率提升到85%,接口平均響應(yīng)時(shí)間從280毫秒降到150毫秒。第二個(gè)困難是單元測(cè)試覆蓋率不夠,9月1號(hào)CodeReview時(shí),導(dǎo)師指出業(yè)務(wù)邏輯模塊的測(cè)試用例不足。我重新梳理了所有邊界條件,寫了一百多行測(cè)試代碼,覆蓋率達(dá)到98%,線上故障次數(shù)明顯減少。

實(shí)習(xí)成果主要是完成了兩個(gè)功能模塊的開(kāi)發(fā),數(shù)據(jù)指標(biāo)也得到改善。推薦系統(tǒng)模塊上線的第三周,接口吞吐量從原來(lái)的1200qps提升到3500qps,用戶點(diǎn)擊率增加了12%。實(shí)時(shí)推送功能上線后,次日留存率從65%提高到72%。

這段時(shí)間讓我意識(shí)到,做開(kāi)發(fā)不能只埋頭寫代碼,得懂業(yè)務(wù)邏輯,知道怎么用數(shù)據(jù)驅(qū)動(dòng)決策。以前寫測(cè)試用例比較隨意,現(xiàn)在學(xué)會(huì)了用等價(jià)類和邊界值分析法,效率高多了。團(tuán)隊(duì)里用得最多的敏捷開(kāi)發(fā)方法,我以前覺(jué)得是走流程,現(xiàn)在明白每個(gè)環(huán)節(jié)都是為了快速迭代。

實(shí)習(xí)單位的管理上,我覺(jué)得入職培訓(xùn)可以更細(xì)致些。技術(shù)分享會(huì)雖然多,但很多內(nèi)容跟我關(guān)系不大,希望能按崗位方向分類。崗位匹配度方面,我接觸的數(shù)據(jù)庫(kù)優(yōu)化工作比預(yù)想的多,學(xué)校的課程里這塊沒(méi)怎么講,回去得補(bǔ)補(bǔ)MySQL索引和分區(qū)表的課。改進(jìn)建議是,新實(shí)習(xí)生可以配個(gè)導(dǎo)師,至少在第一個(gè)月,多指導(dǎo)下怎么用內(nèi)部工具,比如Jenkins流水線配置、GitLab的CI流程。

三、總結(jié)與體會(huì)

這8周實(shí)習(xí)像把理論裝進(jìn)了實(shí)踐,感覺(jué)特別踏實(shí)。7月10號(hào)剛來(lái)的時(shí)候,寫個(gè)功能都要反復(fù)確認(rèn),生怕出錯(cuò)。8月15號(hào)左右獨(dú)立負(fù)責(zé)用戶行為分析模塊重構(gòu)后,9月1號(hào)看到APM監(jiān)控里接口耗時(shí)從450ms直接掉到120ms,那一刻感覺(jué)付出值了。這種通過(guò)技術(shù)直接改善用戶體驗(yàn)的感覺(jué),是學(xué)校里做項(xiàng)目完全體會(huì)不到的。

實(shí)習(xí)最大的收獲是學(xué)會(huì)了怎么用數(shù)據(jù)解決實(shí)際問(wèn)題。之前做課程設(shè)計(jì)也用數(shù)據(jù),但這次面對(duì)500萬(wàn)QPS級(jí)別的實(shí)時(shí)數(shù)據(jù),從設(shè)計(jì)Kafka分區(qū)到調(diào)優(yōu)Flink狀態(tài)背壓,每一步都得考慮得很周全。9月5號(hào)離開(kāi)時(shí),導(dǎo)師讓我做的技術(shù)分享里,我總結(jié)了5個(gè)高并發(fā)場(chǎng)景下的緩存優(yōu)化技巧,這些都是踩坑總結(jié)出來(lái)的。這種從無(wú)到有的經(jīng)驗(yàn)積累,讓我覺(jué)得比單純學(xué)會(huì)幾個(gè)框架更有用。

對(duì)職業(yè)規(guī)劃的影響挺大的。以前覺(jué)得后端開(kāi)發(fā)就是寫CRUD,現(xiàn)在明白高可用、可觀測(cè)性才是核心競(jìng)爭(zhēng)力。團(tuán)隊(duì)里用得最多的Prometheus+Grafana監(jiān)控方案,我回去就想把學(xué)校的項(xiàng)目搭一套類似的,順便考個(gè)CKA證書。另外發(fā)現(xiàn)分布式事務(wù)這塊挺有挑戰(zhàn)的,雖然這次沒(méi)直接上手,但已經(jīng)開(kāi)始看阿里云的《分布式事務(wù)中間件原理與實(shí)踐》,感覺(jué)這可能是未來(lái)幾年重點(diǎn)發(fā)展的方向。

行業(yè)里現(xiàn)在都在談智能化運(yùn)維,以前覺(jué)得機(jī)器學(xué)習(xí)離開(kāi)發(fā)遠(yuǎn),現(xiàn)在看團(tuán)隊(duì)用Flink做日志異常檢測(cè),確實(shí)能省不少人力。9月底技術(shù)分享會(huì)聽(tīng)到的AIOps方案,感覺(jué)特別有前景。如果下次有機(jī)會(huì),希望能接觸更多這類項(xiàng)目。從學(xué)生到職場(chǎng)人的轉(zhuǎn)變,主要還是責(zé)任感上來(lái)了。以前寫代碼隨便測(cè)測(cè)就行,現(xiàn)在知道線上一個(gè)微小的改動(dòng)可能影響成千上萬(wàn)的用戶,這種壓力反而讓我更專注。實(shí)習(xí)最后那周,每天加班到9點(diǎn),但回頭看覺(jué)得特別充實(shí)。這種在壓力下持續(xù)學(xué)習(xí)、快速適應(yīng)節(jié)奏的感覺(jué),應(yīng)該是未來(lái)工作中必備的素質(zhì)。

四、致謝

8周實(shí)習(xí)時(shí)間過(guò)得很快,挺感謝這次機(jī)會(huì)讓我接觸到了真實(shí)的開(kāi)發(fā)環(huán)境。

感謝實(shí)習(xí)單位的導(dǎo)師,從7月10號(hào)剛開(kāi)始帶我對(duì)業(yè)務(wù)不熟悉,到后來(lái)8月15號(hào)我負(fù)責(zé)的實(shí)時(shí)推送功能上線,每步都耐心指導(dǎo)。

感謝團(tuán)隊(duì)里一起工作的同事,9月1號(hào)討論技術(shù)方案時(shí),大家提出的那些關(guān)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論