沒基礎、非相關科系,想轉職當程式工程師門檻很高嗎?培養3個心態,上手就不難
圖片來源:unsplash.com
近年來線上課程蓬勃發展,不少學習平台如 Udemy、Udaciy、Khan Academy 等,都提供多元豐富的軟體開發課程,引領「自學程式」風潮。
若是應用得當,半年以內就可以學有所成,讓沒有相關背景的新手,踏上軟體開發之路,現在,想要轉職到程式開發相關的工作,其實不需要再念4年大學或2年研究所。
儘管如此,在 AppWorks School 過去3年多來,輔導上百人轉職成軟體工程師,其中有不少申請者都是在自學途中,遇到難以獨自突破的瓶頸,所以選擇報名參加 AppWorks School 為期 16 週的免費程式課程 (目前有 Android、iOS、Web 專班)。
因此,我們想從實際的觀察中,分享我們認為程式自學者應該校正的3個心態,希望能幫助更多人跨過學習障礙,早日成為心目中的軟體工程師:
一、釐清學習目標,先專注在一個領域上
首先,軟體開發新手在一開始接觸程式開發時,很容易迷失在廣大的 CS 知識中,不知道該從哪裡下手。也經常會有各種道聽途說:「聽說 Python 很適合新手」、「聽說前端比較好入門」、「聽說 Java 的工作機會最多」……。
在各種資訊轟炸之下,許多初心者經常會一下學 Python,一下學 JavaScript,但都侷限在很初階的程度,且往往學到一半,才發現跟自己預設的目標沒有直接相關,花費了大把的時間跟精力,卻徒勞無功。
我們建議,新手在程式開發上可以採取「目標導向式學習」,先設定一個清楚的目標,再去安排自學計畫與步驟。
例如,如果想要做網頁應用,那麼應該直接從 HTML/CSS/JavaScript 入門;如果想要開發手機 App,則依開發的平台 iOS 或 Android 來選擇學習 Swift 或 Kotlin,減少繞遠路的時間成本。
如何安排自學路徑?實際上,網路上已經有不少軟體工程師的過來人,分享從事各種工作應學習的技能樹 (如下圖),新手在學習的過程中,可不時確認自己正在學習的內容,是否與目標相關,若發現偏離目標,才能即時喊停,將學習的效益發揮到最大。

▲圖說:前端開發技能樹 (部分擷取),清楚描繪新手的學習路徑。(資料來源:GitHub)
二、檢視學習瓶頸,增加時數或深度
選擇要專注的領域後,另一個新手常見的誤區,就是經常反覆學習「已知的知識」。變成一直在新手圈裡跨不出去,我稱之為「新手舒適圈」。