最近剛好在Backend版上看到有人Po文問說: “下班後要如何精進自修”, 意外看到許多大大們在下面留言, 正好最近我也在思考要如何精進自己, 所以趁這機會來統整一下大大們提出來的想法並且與自己目前的進修方式做結合, 主要會以Full-Stack engineer的精進方式來做個紀錄分享.
如果對某程式語言&框架掌握度還不夠, 請先熟悉之!
如果上班接觸到某種自己不熟悉的語言或框架, 像我目前需要寫Java & Spring, 與Angular & Typescript.
所以我會偏好先到線上程式語言線上平台進修之, 因為這些學習平台能夠提供完整的學習輪廓, 能夠讓我快速掌握該程式語言&框架所需具備的硬知識為何.
說到線上程式學習平台, 我蠻推薦 Pluralsight, 因為該平台提供了該程式語言或框架推薦學習的影片, 並且透過測驗推估你對該技術的知識程度為何.
有興趣可以到該平台試試看, 不過每個月會收取29美元的花費, 不過這花費當作投資是蠻值得的.
若已經對程式語言&框架有經驗, 可以嘗試看看Side Project
為什麼會特地提到Side Project?? 那是因為在公司其實很難自己能夠負責專案的所有全貌, 例如可能只是負責寫API, 也可能只負責前端頁面的刻畫.
所以透過Side Project, 便能夠有機會嘗試所有技術的機會, 並且從中去體會到自己最想要加強的領域是哪邊, 例如後端效能? 前端渲染速度? Container, CI/CD的運作? 諸如此類, 從而培養一個Full-Stack的經驗.
所以下班後自己跑一個Side Project是個不錯的精進方式.
但要怎麼樣想出一個Side Project?
我覺得學習最快的方式就是模仿, 可以到Github上搜尋有興趣的專案, 並且試著用自己的程式語言與框架自己做出一套是最快的方式.
像我因為很喜歡用Markdown方式來做筆記, 目前打算自己做個小型的線上筆記編輯系統, 並看到Github上有提供CodiMD 的開源專案可參考,
來試著自己建造出一個看看. 之後有機會再分享到自己的部落格上怎麼一步一步進行的.
嘗試撰寫線上筆記或部落格吧
我認為現在技術真的太多太多了, 如果沒有將自己看過的技術文章或學習影片給消化和記錄起來, 很快就又會忘記. 所以最好的方式是有個做筆記的習慣!
做筆記的話我都是用Hackmd先記錄起來, 之後等有空的時間會再消化審視自己寫過的內容, 並發佈到自己的Bloger上, 這樣有助於將學習過的知識給內化到自己的腦海中.
其他更進階的進修方法
根據技能樹(RoadMap)來補充自己最常用,有興趣但所缺乏的觀念與技術
這網站Roadmap提供了各開發者(Frontend, Backend, DevOps)所需要具備的技能樹為何
, 若想要往後端精進, 可以看到下面這張圖會碰到哪些所需具備的能力.
看完之後會發覺有太多東西需要Cover了, 學海無涯 (茶).
經營 Stackoverflow
這點是我看到大大們提出來可以嘗試的方式, 不過我目前也只有在Stackoverflow上面問幾個小問題, 對這方面還沒有涉略, 可參考下面大大所寫的Stackoverflow的介紹, 未來我會想在這邊嘗試看看能不能也試著回答別人遇到的問題.
工程師鍛鍊接軌世界的能力從stackoverflow 開始 - 阿貝好威的實驗室
小結
下班後要再自修真的需要有興趣使然以及強大的毅力, 否則很容易就會半途而廢.
所以最重要的還是要讓自己有個規劃, 並且從實踐規劃中內化成自己的日常習慣, 久而久之就會讓自己變得更強的!