前幾天看到在靠北工程師 FB 上有篇貼文,原 PO 提到:「因與經理不合,公司唯一一個可以扛下前端、後端、雲端、手機端的工程師,即便老闆加薪 60% 也堅持離職,最後老闆另開一間公司讓這位員工在新公司上班。」後來還上了新聞,一時間被媒體稱為「最強工程師」,真的有工程師能負責這麼多領域嗎?其實坊間往往會把「前端」和「後端」工作分開來,兩者都能做的稱為「全端工程師」。
圖片來源:Pexels 上由 Canva Studio
想當工程師選「全端」最有價嗎?
千萬別認為「全端工程師」看起來在職場很有價值就一頭栽入,若初學者第一份工作就想走全端,那會是很大的考驗,前端工程師主要以開發使用者介面為主,寫出一般大眾都能瀏覽的網站頁面、後端則是負責資料庫儲存、網頁後台數據庫及管理等,全端需要知道如何架設一個伺服器,並兼具前、後端的工作能力。
我和我們公司的全端台柱之一KT,就是後端起家的全端工程師,記得在十幾年前,市場上並沒有區分前端、後端,當時的工程師只要知道如何把網頁做出來即可,但現在瀏覽器不斷在進步,又有智慧型手機,需求比以前複雜許多,分工也越來越細,逐漸才延伸出職責清楚的前端、後端。我建議初學者先別畫地自限,不管是前端、後端,都要給自己機會試試看,因為無論是哪一端,都要對另一方有一定程度的理解。
當全端工程師必點的 3 個技能
第1, 懂得規劃程式碼該怎寫。在收到工作任務後,不光是單純把程式寫出來,必須先發散思考想要做哪些東西再開始寫程式,通常公司若有產品規劃師會負責這一塊,但有些公司沒有這個角色,就必須學習思考,若想做一個合格的全端工程師,最好還是自己懂得如何規劃程式碼。
第2, 理解程式碼的原理。現在有很多實用的程式套件可用,省去從零到有程式碼的時間,但作為全端工程師,總會碰到套件有問題需要修復的狀況,若只會複製、貼上,不懂得其中運作原理,產生問題就會 Debug 不出來,難成為獨當一面的全端工程師。
第3, 知道如何善用工具。全端工程師因兼顧前、後端,在執行專案時要考量的事情比較全面,不同的專案要架設的工作線路不同,如果只知道一套架設方法,碰到不同的專案形式就會不知所措,可以問問自己,若沒有資深前輩的指導,自己能否善用不同的工具,把專案完整建立起來,學習評估專案需要什麼解決方法很重要。
其實說了這麼多,不見得每個「全端工程師」都有硬實力到能像一開頭提到的那篇貼文般,被老闆高薪挽留,更多人可能是談不攏就離開了,在職場上,修煉好自己的軟實力,包含團隊協作、溝通技巧、解決事情的能力就能應對不少問題,記得以前碰過一些很有自信的全端工程師,不管是什麼規格的任務,只習慣照自己的方式去做,無法接受更好的意見,甚至聽不進客戶的需求,只照著自己想做的來。若想成為有價值的全端工程師,真的要時時刻刻警惕自己不要成為剛愎自用的人。
像我自己會隨時進修,加強技術知識、趨勢,例如,參加 RubyConf Taiwan(技術交流會)、Coscup(開源人年會)或 JSDC (JavaScript 開發者年會),唯有軟、硬實力兼具才能成為好的全端工程師~