上一次有一個學弟在詢問關於資料科學家的求職,他在學生時期的時候剛好有機會申請到實習,實習機會也很順利在結束的時候轉成正職了。但是在他想要從正職轉換成另一份正職的時候,卻覺得求職很困難。我就透過這個機會整理了一些在找學生實習與工作機會的差別,希望可以幫助到一些正準備轉職的人囉。
剛剛已經講到,學弟的經驗是已經有過實習轉正職的經驗,但是卻不太知道怎麼將自己的經驗整理成另外一間公司會願意跟他面試的profile。這邊我們就分幾個部分來討論:(1)專案要怎麼呈現(2)面試的時候需要可以呈現哪些能力(3)和實習生不同,需要可以承擔更多的責任有哪些
程式語言
履歷上的技能,除了寫上程式語言之外,還可以加上一兩個一些常用的library,這些library可以反映出你最常處理的是哪一些問題。pandas, spacy, opencv後面反映出的資料類型與使用情境哪些。有些公司可能會特別需要處理文字、語音、影像等等的人才,看到這些與公司內部使用相同的library也可以很快地切入詢問你在這方面的經驗。
如果在履歷上面已經有提到語言,還有比較擅長的library,可以在履歷附上相關的github連結,讓面試官(潛在同事)可以提前過去看一下之前的專案。假設是公司內部的專案,用文字來陳述這部分的經驗的話,則是可以用一些數據來佐證你使用這個library的時候,開發了哪些,優化了哪些架構,這些過程最後帶來的什麼樣的ML模型,成效大概如何。
開發環境
開發環境的部分像是在Mac/Windows/Linux,在第一份第二份工作的時候可以放上去,讓對方知道你過去曾經在哪些環境開發過,這些資訊也會幫助潛在同事評估,錄用你之後的教育成本有多少,以及你進來公司的學習門檻會有多高。
在github專案上,如果能夠讓其他人能夠快速重現專案,也會是非常加分的事情,舉例來說附上requirement.txt/pipfile/docker等等,讓閱讀者可以知道你使用了哪些套件、這個專案重現之後可以跑在哪些地方?Local / 其他機器 / cloud / k8s(雖然大家不會逼迫資料科學家一定要會k8s,但是dockerize你的服務與應用幾乎會是目前業界的標準了)
產業內的市場洞見
這部分也可以稱之產業內的專業知識、domain know-how、domain insight等等。這部分可能會比較難在履歷上或者過去專案上呈現,畢竟有些insight可能不見得適合公開放在網路上,讓其他競爭業者查詢。但是在面試過程當中如果能夠指出,在做這個專案的時候,從處理資料集、特徵工程、建構模型、評估模型的過程當中學到了什麼。
舉例來說,過去我在房地產公司工作,公司是負責管理跟升級大規模的居住型房地產,例如在策略上就會趨向資本主義市場要多一些,然後會分散風險在一些租金限制比較嚴謹的國家與市場。前者例如美國,後者例如德國。這個domain know-how會怎麼影響公司決策,公司在看這兩個市場的時候,對價錢的敏感度差別是什麼。在這些情境上,就能夠顯現出一個資料科學家“不只有在這邊建模型,也會去想到這個模型可以怎麼被使用,這個模型可能帶來的商業利益有哪些”。更好的狀況則是可以給出,因為這個模型公司節省了多少錢,或者同事因此節省了多少的工作時間,這麼詳細的使用數字去陳述會更有說服力。
Domain know how是一個很多人沒發現自己其實已經學會的知識,這些知識也可以透過跟朋友聊天去重新找回,原來你進來這間公司之後,已經學會了多少的業界知識。而這些知識,不管是不是申請同一個產業的工作,都可以讓面試官知道你是一個具有好奇心,且願意去學習技術之外的其他知識與技能,顯現出開放的學習態度。
商業分析
這個部分對於上次在10/選擇恐慌症:跟資料科學有關的12種job title所提到的在小公司做資料科學、或是緊跟商業、行銷部門工作的狀況下,可能就要使用資料科學的知識在業務開發、行銷上幫助同事做決策。
和這些部門一起合作,可能就不只需要有產業上的市場洞見,甚至還會需要培養對於公司商業模型的商業分析洞見。舉例來說,假設今天在pchome工作,你可能會需要幫忙分析與預測,公司產品的銷售以及庫存狀況,訂單流程的轉換率,或是透過AARRR漏斗分析客戶的留存率等等。假設你對於資料分析與資料科學的熱愛,是來自於跟客戶關係維持或者公司產品銷售的相關數據,在這邊推薦大家閱讀我個人很喜歡的書:Lean analytics,假設有朋友想要往這方面邁進,基本上就會推薦他/她去閱讀這本同時有理論與實用範例的一本書。
如果說正職和和實習生的工作態度不同的地方,我覺得最明顯的會是對於事情的責任心。
在實習生的階段,常常公司會指配一個mentor給你,協助你了解公司的大小事情,在技術上和公司事務上都能夠給你一些指引跟方向。如果在面試過程,被詢問到為什麼用這個library,不是回答因為效能、做過哪些實驗、或是哪些條件限制下而使用,而是回答“同事跟我說用這個”的時候,就是一個BIG NO。
當然在工作的過程有很多機會是按照前人的經驗,就直接複製貼上,但是如果能夠去了解,為什麼公司是選用這個架構。當初都會有其選擇的原因。當遇到新的架構出現,就不會一股腦決定用或者不用,而是會去思考現在的情境下,是不是應該使用這個工具跟框架。
這個責任心也包含在使用套件的時候,像是建模的時候的參數,要怎麼選擇跟調整。這部分盡量也都要有自己的想法,例如會從哪些方法開始嘗試,如果遇到哪些狀況會怎麼調整。這個方式可能在實際上線的時候會有哪些障礙或限制等等。
每一次的選擇跟決定,可能都不完美,但是要讓自己盡可能的去收集資料,用自己的想法去做決定。如果一開始覺得經驗不夠,就主動去找其他人討論跟請教,漸漸地你也會從這些討論當中學習到其他人怎麼做決定的。
從學生到全職的路上,的確可能會有一些門檻,這一篇想帶給大家的是心態上哪些部分的調整,可以讓你更離業界工作近一些。
歡迎大家訂閱專欄,點這裡可以看歐洲碼農的新手村任務30篇文章列表。
對於這個主題如果有更多的想法,
可以在文章下方留言,
也歡迎在這個google問卷提問:https://forms.gle/aZPXa3ipTdi8HaLY8
或是拜訪不定期更新的粉絲頁:https://www.facebook.com/bymiachang.tw
我們明天見:)