天天看點

從應屆生到測試頂會講師,他隻用了一年時間!MSTC大會-主會場分享

作者|豆豆、定源

都說憋大招需要時間的積累,一位剛踏出校園入職阿裡巴巴淘系技術品質才一年多的新同學,憑什麼登上測試行業最高講台之一的MTSC大會主會場做分享?他是怎麼做到的?讓我們來看看他的成長故事吧。

▐ 自我介紹

大家好,我叫黃俊,阿裡花名豆豆。從畢業那刻起變加入了阿裡巴巴淘系技術品質團隊,有幸加入到團隊AI智能化測試方向的研究探索中。經過這一年多的成長,從對業務的融入、了解、思考,到品質建設上的構思、試錯、突破,我受益良多。感謝于良師益友的老闆指導,還有一對一師兄的輔導,更有一群志同道合的同學一起并肩作戰,與善人居,如入芝蘭之室,久而不聞其香,超nice的團隊決定了我的現在。

對于即将畢業或者想來阿裡做測試開發行業的新同學,如果你還在迷茫或者有疑問,不妨繼續往下看看我的心路曆程:

  • 初入職場的迷茫
  • 主動出擊,找到切入點
  • 下鑽深入思考
  • 聚焦并落地拿結果

▐ 初入職場,偶遇絲迷茫

還記得你的第一個測試開發場景嗎?這裡附上我的第一個需求&品質建設:

從應屆生到測試頂會講師,他隻用了一年時間!MSTC大會-主會場分享

新人時期,我的第一個接手需求是手淘消息的搜尋(如上圖所示);第一次完整走完流程的需求是手淘消息的智能push,包含了評審、排期、開發、聯調、提測、測試、灰階、bugfix、全量等等;第一個品質保障工具是手淘消息用戶端日志的上報。

總的來說,我的新人時期,在不斷學習識别業務需求的過程中,時刻洞察品質建設突破點,逐漸完成了從學生到職場的轉變。不過随着業務的深入,雖然可以在相關業務上獨當一面,但是如何找到測試技術和業務結合的切入點?我不禁陷入了迷茫。現在回頭來看,這應該是很多測試開發的新人都會遇到的一個問題。

好在這一時期并沒有太長,之後我開始多和師兄、主管、團隊老同學的交流,主動走出去和不同部門的同學交流,阿裡真的是一個很大的舞台,高手如林,我的眼界和思維被迅速打開,經過和師兄以及主管的反複對焦,我開始逐漸找到适合自己的場景。

▐ 主動出擊,尋找點切入

在經過一段時間的适應和轉變後,自身對整體消息場景已經有了一定的基礎見解,對切入點的感覺開始變得懵懵懂懂,渴望着将一些新的技術融入于現有的業務場景,便踏上了尋找可以将想法落地的場景之路。

19年的春季,正值手淘消息全鍊路監控排查體系之際打造如火如荼之際,也是我第一次接觸測試右移的道路,在和消息測試團隊的師兄師姐們一起研發的同時,逐漸開始沉澱通用能力,例如諸多系統間錯綜複雜的鍊路如何秒級定位能力、統一降級、統一采樣等等。

随後在團隊重點研究的AIOps領域,确定了多個研究方向,而其中的“智能異常檢測”方向,在當時還是新興領域,集團還沒有特别好的解決方案,而異常檢測本身其實是實際業務中的一項關鍵性需求。在Devops領域,名額監控是系統穩定性的關鍵,也是監控/運維平台成功的關鍵,成功的異常檢測有助于發現異常後及時提醒使用者采取相應的措施,避免更大故障的發生。

通過對國内外現狀展開調研,并與達摩院同僚進行了交流與合作,對智能異常檢測行業現狀的了解和摸底,我們的研究内容開始逐漸有了線索。雖然這個任務技術挑戰很大,也沒有太多可以參考的先例,但是我覺得可以發揮我有算法基礎喜歡技術鑽研的優勢,便義無反顧地ALL in到這個任務的研究探索中,并且在過程中我發現自己找到了技術和業務結合可以落地的切入點。

找到切入點并不容易,結合對阿裡“六脈神劍”價值觀的踐行,階段性總結一下有以下幾個方面的成長:

1、經濟基礎決定上層建築,業務了解決定品質建設。

2、不要怕折騰,多溝通,少情緒,有耐心。

3、Keep Learning,不為失敗找借口,隻為成功找方法,全力以赴拿結果。

▐ 深入思考,聚集智能化監控

在測試右移智能化的道路上,逐漸找到切入點後,便開始在這個領域深入研究。如果将一個産品的上線一分為二,左移是往測試之前的開發階段移,右移則是往上線之後移,這就要求測試開發同學需要做好名額監控。名額的監控關乎穩定性,但随着資料量的增加,加上名額的複雜周期性和模式變化的動态性,基于傳統監控的門檻值/同比環比的規則難以适用,而且複雜的領域知識導緻為每條名額配置相應的規則費時費力,無法應用在大規模資料監控上。

在很多時候,給我的感觸是,右移比左移更具有挑戰性。是以,我們迫切希望傳統監控向智能化監控進行轉型,基于團隊前期對海量系統日志資料實時計算的基礎上,我通過結合百餘種實時資料,嘗試了20多種異常檢測算法,一個全新的智能化異常檢測平台呼之欲出。

然而聚焦和深入到智能異常檢測方向的研究并非一帆風順,中間經曆了不少曲折克服了不少困難,比如:

場景1、在面臨百餘種資料類型時,當現有的業務資料跑出一個還不錯的模型,而換在另外一種業務資料效果就大打折扣,如何保障這麼多資料類型都有一個不錯的效果?

解決思路:随着基于對業務資料的深入了解,基于團隊前期對海量系統日志資料實時計算的基礎上,結合百餘種實時資料,嘗試了20多種異常檢測算,逐漸探索出對于業務資料的算法場景化能力。

場景2、當面臨大量業務名額的接入,或者是一個全新場景,沒有那麼多時間來訓練拟合該名額的模型,如何保障業務可以順利地快速接入使用?

解決思路:提前将場景化的基礎模型作為快速接入的選項,并結合無監督學習,配合完成新名額的接入使用,随後再進行逐漸疊代,以适應新名額的快速接入。

場景3、當在實時檢測有了一定的沉澱能力後,越來越多的業務方回報,Holmes的報警能不能再提前一點?

解決思路:真實的業務現狀使我們體會到單有檢測能力是遠遠不夠的,晚一分鐘發現問題,往往也是緻命的,緻使我們踏上了預測的研究道路。

經過不懈的努力,智能化異常檢測平台(Holmes)終于落地,并且在淘系核心戰役巴拿馬項目上線以及雙十一大促備戰的過程中發揮了作用。下面就展開簡單介紹一下這個平台:

▐ 聚焦落地,福爾摩斯(Holmes)-- 淘系智能化監控平台

Holmes是一款智能化、輕量級、易接入、可擴充的異常檢測平台,使用基于AI的異常檢測算法,替代傳統的規則監控方案。解決規則告警系統準确率低、時效性低、規則配置複雜與耗費人力等諸多問題。

特點:

  • 學習曆史資料,分析目前名額曲線趨勢是否異常
  • 基于以往資料,進行預測未來名額走勢

優勢:

  • 算法檢測代替規則檢測
  • 告警準确率高
  • 更早發現異常情況
  • 可适應業務發展帶來的趨勢變化

解決的異常場景:

從應屆生到測試頂會講師,他隻用了一年時間!MSTC大會-主會場分享

MSTC大會-主會場分享

基于Holmes的落地,我和師兄董福銘(吾銘)一起在MTSC 2020大會申報了議題《手淘AIOPS實戰-消息全鍊路智能監控》,結合Holmes平台的實戰做經驗分享。

介紹如何通過SDK實作應用内鍊路日志聚合、采樣率控制、統一降級開關等功能,打通用戶端到服務端鍊路,實作IM端到端秒級排查。通過實時計算實作消息核心名額到達率/時延的實時監控。使用AI檢測算法,替代傳統的規則監控方案,解決規則告警準确率低、時效性低、規則配置複雜與耗費人力等諸多問題。通過NLP進行輿情智能分類,并結合全鍊路資料對預警問題進行分析定位,打造全鍊路智能監控排查平台。

▐ Holmes異常檢測平台

從應屆生到測試頂會講師,他隻用了一年時間!MSTC大會-主會場分享

配置化名額接入流程

通過4步簡單配置進行名額的接入和算法選擇,輕松開啟智能異常檢測。

從應屆生到測試頂會講師,他隻用了一年時間!MSTC大會-主會場分享

基本算法概覽

機器學習上有一個定理,叫沒有免費午餐定理(No Free Lunch,NFL),表示的是在機器學習上,不存在一種通用的最優的算法可以解決所有問題,是以在面對各類資料時,Holmes将算法場景化。

在實時檢測方面,內建了無監督學習和有監督學習,主要運用了高斯分布、STL、孤立森林、XGBoost等;

在資料預測方面,內建了LSTM、Prophet、三次指數平滑等。

從應屆生到測試頂會講師,他隻用了一年時間!MSTC大會-主會場分享
從應屆生到測試頂會講師,他隻用了一年時間!MSTC大會-主會場分享

實踐效果

目前Holmes異常檢測平台已經在集團内部開放接入和運作,支援集團内常用資料源,幫助接入業務方的開發測試同學建構智能監控體系,減少繁瑣的規則配置,有效提高了線上品質監控的覆寫率。今年的多次大促期間,Holmes的準确性方面也進一步得到驗證,有效保障了大促的穩定性品質。

覆寫應用:淘寶、千牛、優酷、釘釘、淘寶直播、閑魚等

接入名額:核心業務名額 300+

提前預警:有效提前預警線上問題 50+

算法調用:5000W+

展望

Holmes異常檢測平台是淘系技術品質團隊打造,在智能化測試領域的一次實踐,未來我們希望利用AI算法實作業務全方位智能化監控和問題定位。覆寫更多的資料類型,打造通用的算法模型,同時我們也在全鍊路監控排查、智能輿情處理等多方面進行探索,期待後續跟大家分享。

▐ 主管點評

豆豆同學19年4月份碩士畢業後,加入阿裡巴巴淘系技術品質團隊,僅僅通過一年多的時間就成長為團隊技術骨幹之一。針對豆豆同學的特點,以及團隊将19年的整體打法做了分解,将團隊AIOps領域探索的智能化異常檢測(智能化監控中的重要組成部分)安排給豆豆。對他有兩個期望:一方面期望這個能力可以有縱深的下鑽,作為整個IM消息測試中台中測試右移的主要武器之一。另一方面也期望可以橫向擴充,未來逐漸在阿裡集團内進行推廣使用。作為主管也明白這個技術探索對新人來說有一定的落地風險,當時并沒有太多可以參考的先例,而且對同學的AI算法能力和工程化落地能力均有很大的挑戰。這也是豆豆加入淘系技術品質團隊後的第一個測試技術創新開發任務。

面對壓力和挑戰,我們很欣喜地發現,豆豆同學并沒有被壓垮。他迎難而上,查閱了大量業界和阿裡集團的資料,調研開源算法、閱讀論文,結合師兄吾銘的指導和消息測試團隊的反複讨論,豆豆不斷優化和完善技術方案,先後克服了多項技術難題。最終Holmes智能異常檢測平台在手淘消息場景落地使用,為第一年阿裡生涯交出一份漂亮的答卷。新财年,豆豆繼續發力,不僅擴大了算法支援的場景個數、準确率,還多次提前預警線上問題,并将支援的業務系統從淘系擴大到了阿裡集團多個BU,受到廣泛好評。

對于豆豆來說,精彩才剛剛開始,Holmes的落地隻是一個起點。今年雙十一之後,一個新的保密技術創新項目又開始醞釀,豆豆同學屆時又會憋一個什麼樣的大招?讓我們拭目以待!

這裡也簡單展開一下,新同學除了學習基本功之外,新同學也可以在師兄和主管的引導下,逐漸養成思考的好習慣。比如,如何讓自己和團隊産生更多的連結(多看多溝通多思考)?如何與所在團隊的大方向結合(埋頭幹活的同時也擡頭看路)?如何站在團隊研究基礎之上進一步建構自己的創新産品(借力)?等等,我覺得是新同學們可以思考方式上去做一些轉變的。

豆豆同學隻是整個淘系技術品質團隊(極測)中的一位典型代表,這樣優秀的新同學在我們部門還有很多。我們有非常體系化的極測新人教育訓練課程,以及阿裡非常著名的“百阿”新人教育訓練,淘系技術品質團隊(極測)會針對每一位入職的新人安排一對一的師兄指導,也會針對同學的特點設計和規劃職業發展方向。在部門技術驅動的理念下,不僅會對同學的業務了解培養,同時還會在技術創新上給予同學相應的發力場景和落地輔導。結合上一對一師兄和主管在日常工作、生活中對具體的問題和項目實戰中的點滴進行具體指導,相信新加入的同學們一定也會像豆豆一樣快速成長!

MTSC2020中國網際網路測試開發大會深圳站現場

從應屆生到測試頂會講師,他隻用了一年時間!MSTC大會-主會場分享

淘系技術部-(極測)品質團隊-誠招英才

從應屆生到測試頂會講師,他隻用了一年時間!MSTC大會-主會場分享

我們負責所有淘系業務的品質保障。在這裡:可以經曆雙十一等超大并發場景;可以接觸到全鍊路壓測、海量的資料處理、人工智能推薦算法等領域;可以學習到業界最前沿的測試技術、一對一指導的師兄輔導機制、定期而豐富的技術分享;還可以與層層選拔的各路優秀同學共同戰鬥,共同成長!我們以技術驅動,建構業界領先的品質體系。

我們的使命是讓測試更簡單,讓研發更高效 ,讓使用者體驗更極緻。

還在等什麼,快來加入我們吧!AI智能化測試新賽道,你就是下一個明日之星!郵件發送至:[email protected]