真的是這樣嗎?
此篇的來歷,是由於近期好友們逐漸知道我的近況而開始訊問並有了想轉換領域的想法,或許是因為年紀到30歲這階段,真的就會開始反思過往,然後遙想未來,雖然對本科的人來說這就是一個技能一份工作而已,但從轉換跑道的角度來看,不該只拿著“鐵鎚”去看待這樣的環境,其實各行各業絕對都有機會,不管是創業或找份待遇好的工作,但在資訊快速且強調效率的這時期,除了需要深化的技能也要把握向外擴展且多元化涉入各領域的機會。再過去,我很嚮往轉職的猶豫期卻總覺得和別人的不同而制約了自己,但當你這樣做時,才會發現勇於如此的人或許才是多數,而那種不必要的限制性信念這如同在專一領域過於滿足的觀念,不管是在創造價值或最重要的:賺取利潤時,這些內心微小聲音的累積都會阻斷更多的可能性,現今的我每次遇到那內心小聲音的躁動,都會在反問:“真的是這樣嗎?”
“這件事沒有人這樣做的,大家都是那樣做的“
”真的是這樣嗎?“
“這沒有那麼容易”
“真的是這樣嗎?”
“哪有那麼難”
“真的是這樣嗎?”
“先找份工作做得幾年賺點錢 等有機會再試試看”
“真的是這樣嗎?”
諸如此類,會覺得矛盾,但其實這不過是給我一個機會,去試想另一種狀況,很常聽到有人會說“另一個時空的我可能是….”而那樣機會為何是在另一時空?其實也不用特別在思考什麼,但這樣反問自己,就會自動把想法帶往另一個維度去看待事情,希望我們都能去反思反問,然後再探索的路上前行!
Yap, it is Data Scientist !
AI/BIG DATA是更高階的程式設計及專業知識
就如剛才所說,自己跨出那步,才會發現更多樣貌的人事物,才會知道附近友人們都有著相同的意念(或許這也是為何他們在附近且逐漸接近的緣故)以一個從外部走進來的人,我保持著說明也不忘反省一下的見解:我認為人工智慧,是比coding/Programming更高階的技術,以人工智慧和大數據作為程式工程師的起點,是跟一般的PG(Programmer)差異非常巨大 ; 由於專業是在已有的資料上進行分析,亦或以現有的演算法(或稱模型)來做開發 ,與程式設計是不太一樣的事:後端上的腳本撰寫與報表開發其技術都是相對抽象,且需要強大的程式技能。
因此想轉職的我也在求職路上處處碰壁,由程式技能的基本功缺乏,在缺少產業領域知識(所謂Domain Knowledge)下,對於資料不敏感卻也無法以後端語言來處理。我的見解是:
- 加強後端技能如SQL等基本功,至少能在程式這塊讓其他工程師先受到認可,所學的SQL與產業上的應用都是相對簡單非常多,有機會便需要練習!強化後進入產業才能馬上進入狀況,當然若是新創或許不太一樣(因為新創或許沒有非常重的數據庫需要撈取); 另外若是資訊廣告業對於動態的資料萃取需求更大,也就是對於SQL的技術較小,也因為認識廣告產業的友人,對這塊有稍微的理解了。
- 分析工具Python,R,Scala擇其一熟悉,在台灣的情況是,大企業下的資料科學家仍屬於後端工程師的一環,故對於這種分析語言和工具只要能上手並實作題目來累積實力(如KAGGLE或玉山舉辦的競賽等,手上有滿多資源若有興趣可再提供),若是演算法開發或許Python相對重要 ; 而或許會以大數據進行開發則會推薦Scala(與Spark等配合)
- 除非是統計,數學,應數等對於演算法非常有興趣者和專家,能適應演算法的數學推演概念,其他科系或專業的人較能以直接踏入,但對於影像辨識的 OpenCV 以及自然語言處理的 Thulac 等處理資料的工具包都能先練習使用,來增進自己的技能包!專業性的技術對於資料科學家來說是非常重要的!
- 大數據 Big Data這塊,以我的見解而分成兩類說明:1. Apache 系列如Hadoop/Spark這些分散式系統真的很厲害,但需要強大的設備 ,是要用雲服務啟動,能做很多事但非常重且龐大,建置和維運上非常消耗人力成本 ; 另外一部分如Mongodb,ELK 這種是是 nosql資料庫,建置快速也輕便,但當然其服務的能力也相對單一化
以上是轉職者如我剛踏入此領域的淺見,讀者們有更多想法和疑問,都可以提出來一起討論!感謝大家!時間不早了,我們下次見吧!