1. 程式人生 > >阿里雲專家穆軒:杭州九年程式設計師之“修煉”手冊

阿里雲專家穆軒:杭州九年程式設計師之“修煉”手冊

對於一個從未到過南方的內蒙漢子來說,北京的大學一直是中學時憧憬的殿堂,而離家上千公里浙江大學,則是從來沒有考慮過的地方。機緣巧合之下,被一位年近七旬的浙大老師說服,我自此開始了南下“修煉”之旅。沒想到轉眼間竟已九年,杭州也成為我的第二家鄉。

值此1024程式設計師節來臨之際,撫今追昔,回顧一下自己的“修煉”歷程。

大學時光,嘗試不同的計算

和計算機的緣分也是從大學開始,初入新手村的我擁有了自己的電腦。

升入本科的第一年我們沒有細分專業,只有學科大類。大二選專業的活動,就像是第二次高考志願填報。09年的信電系異常火爆,但比起硬體底層,我對作業系統、軟體、app更感興趣,最後選擇了計算機。

然而,計算機系挑戰更大,很多進來的同學都早已打下基礎,相比之下,從頭開始學習如何編寫程式碼的我是徹頭徹尾的“萌新”。因此在完成課業之餘,我整天泡在圖書館:一個一個實現《演算法導論》中的演算法,研究解決同樣問題;使用不同演算法把複雜度從N(n^2)下降到N(nlogn);和同學在ZOJ(Zhejiang University Online Judge)比拼刷題…

逐漸熟悉掌握前人的知識的我,就像獲得了打怪的武器。大二開始在不同的領域,逐步嘗試用演算法和計算來實現自己的想法:

• 作為國內第一批使用Kinect的玩家,基於Kinect的SDK,做了一套手勢+肢體動作操作PC的鍵鼠的小工具,並完成了一局全身充分運動的掃雷。
• 嘗試Obj-c, 開發了射擊類的iPhone小遊戲。依靠這份經驗,和小夥伴開發了一套課堂互動系統(支援教室通過app佈置作業和回答問題),拿到了網易的app創新比賽獎項。
• 自學《集體智慧程式設計》和Andrew NG 《機器學習》公開課,逐漸點開了“推薦演算法”和“機器學習”的技能樹。

正是通過這些積累的經驗和知識,大四拿到了阿里巴巴集團的實習offer,正式從新手村畢業進階。

初到阿里,成為演算法達人

從實習到最初兩年在阿里集團的工作,我都在和各種演算法打交道。而2013年的阿里,“演算法工程師”還算是很新的一個崗位,我們要在海量的資訊上,通過機器學習和挖掘演算法讓其可讀、可用、有價值。

我最初就職於淘寶,怎樣幫助買家在淘寶成百上千品類和數以億計的商品中,挑選出自己想要購買的商品,或者母嬰產品分類該怎麼做?我用了一整個月時間,研究了淘寶的母嬰類目,從關鍵詞到寶貝型別、細節描述、品牌歸屬、品牌定位……原本的單身宅男幾乎變成了一個母嬰專家,甚至在之後半年裡,我的女同事們都會找我諮詢如何購買母嬰產品……

在淘寶的這段時間,也是我成長和學習最快的時候。資料庫、機器學習演算法、JAVA專案構建、GIT版本管理,每一個技能點都得到了很大的提升。由學生時代的幾M資料的演算法Demo進階到TB級的資料處理,傳統的單機演算法已經遠遠不能滿足需求。

02a2eaccc6704180108063b40b9019bbbb899844

經常優化演算法到深夜的我,深刻體會到了演算法從N(n^2)下降到N(nlogn)的意義:也許對於演算法Demo只是跑的慢一點,但對於業務,可能就決定了這個業務能不能做,能不能控制住成本,能不能真正落地應用,我也覺得身上的責任更重了。

工作不僅僅是完成任務,更是不斷地去研究和解決問題。這些披荊斬棘攻堅克難的經歷,也讓我練就了強大的內功。

擁抱變化,讓城市更加智慧

青年們,到祖國最需要的地方去!後來在阿里雲的日子,頗有些這樣的滋味。

三年前因為團隊調整,我們來到了阿里雲,也促使我完成了從把自己的演算法做好,到幫助使用者去實現使用者數字化轉型的變化。看待問題的視角也從由區域性到整體,乃至整個行業。

可以做的事情更多了,挑戰也更大了。來阿里雲做的第一個產品是針對新媒體行業的推薦引擎,在這個專案中,我第一次完整的參與了一個商業化產品誕生的全過程:立項、研發、測試、釋出。個人能力的邊界進一步擴充套件到了專案管理,產品運維,演算法來說也有了更加全面的擴充套件。

2017年,又一次的擁抱變化,是轉投向交通行業。在追趕城市大腦的浪潮中,接觸到杭州的交通行業,才發現自己對已經待了8年的這座城市,瞭解還遠遠不夠。杭州“首堵”的稱號揚名在外,而每天需要開車一小時通勤上下班的我,逐漸更關心這個城市的每一個交通的脈絡,每一個新的規劃和改變。道路就像是杭州的“血管”,我們通過演算法的應用,為這座城市疏通它的每一寸“經絡和血管”,注入能量。

ca2086ac2a0f3222d701b455ff55d192a5ca0dec

這樣的工作實際解決的每一個環節都與我們的生活息息相關。每每想到自己的每一分努力都能夠幫助整個城市,都會獲得滿足感。如果優化演算法,能使訊號燈的通行效率提升一個點,就可以節約所有人加起來上百個小時的時間。如果切實的減少擁堵和提出建議,更能減少人力資源的浪費。
未來怎麼樣讓這個城市變得更加智慧?也成為了我新的目標。

在淘寶的兩年,我關注如何用演算法做好一件需求。而在阿里雲,我更關心怎樣的產品和雲平臺,能幫使用者更好地實現演算法的聯動,實現無法計算的價值。

寄語

掐指一算,今年正好是來到阿里的第5年,在杭州的第9年。

而這份“修煉”,仍在進行中……

對於有志於做演算法工程師的同學,也有一些“修煉”的建議:一是持續學習,多去嘗試不同的細分領域,找到自己最喜歡也擅長的方向,當然個人認為喜歡相對來說重要一些。 二是希望大家把關注點放在解決問題上面,無論是用什麼框架,什麼演算法,高效的解決問題才是王道。 三是一定要了解計算邏輯,同時演算法開發的能力也很重要,開發的過程中可以幫助梳理思路,評估演算法成本。

點選瞭解ET城市大腦 https://et.aliyun.com/brain/city
原文連結 https://yq.aliyun.com/articles/657227?spm=a2c4e.11153959.0.0.5cba200fU0wiTx