「軟體工程師真的要懂這麼多嗎?」技術面試、白板題、還有行為面試等等,為什麼會有這麼多關卡?軟體工程師到底在做什麼?
我們除了事先預演過面試的問題、準備好答案之外,更重要的,就是要知道「為什麼」雇主會提出這些問題,以及面試內容與軟體工程師實際工作內容之間的關聯又是什麼。
讓我們來聽聽 Mike 學長分享他在外商軟體公司當「前端工程師」的生活:
雖然這是位前端工程師的分享,但其實後端、全端、甚至 iOS 工程師的工作職責並沒有很大的不同。在延伸閱讀,你可以參考幾個國外的例子。
先來總結一下 Mike 分享的工作內容與所佔時間:
而這三大類,也可以分成以下的細項:
產品需求討論、釐清 | 產品開發 | 個人學習、成長 |
|
|
|
不同項目所需的能力與人格特質有所不同,因此雇主便會設計多樣的面試方式與考題,驗證面試者在各方面的表現。
在 AC 其他的文章與教材裡,我們提過當工程師的必備能力有:
接下來,我們會針對工程師的每一項工作內容,分析所需要的技能與人格特質,列出對應的面試題目,並提供你練習方式。
要具備技能 與人格特質 |
|
面試方式 | 面對面口試:自我介紹、個人專案討論、白板題 |
練習方式 |
【專案實作】
|
要具備技能 與人格特質 |
|
面試方式 |
|
練習方式 |
|
從現在開始,AC 將幫助你建立工程師必備的能力。以下是我們提供的資源,以及對你學習方向的建議。
大量的動手實作
要真正掌握一個新技能,唯一的方法就是大量實作練習。課程中我們安排了一定數量的個人與團體練習機會,但也你必須試著自己尋找課外練習方向,不能止步於教材提供的題目。而在八週課程的尾聲,我們都會舉辦期末黑客松,讓同學們體驗「接到需求–>在時限內跟隊友腦力激盪–>完成功能開發」的過程。
反覆的刻意練習
我們會持續挑戰你在「速度」、「細膩度」的表現。作為新手,很難立刻就掌握所有技能,但你必須要求自己:一定要十足把握自己能迅速精準地完成已經學會的事物。
說明專案內容與過程
在完成每個稍有規模的專案後,我們會要求你錄製一小段影片或是撰寫部落格,解釋你的專案過程、遇到的困難、做了哪些新嘗試,這麼做也能幫助別人認識你的作品!
專業素養
不論是個人專案或是團隊協作,都要養成撰寫說明文件的習慣。在小組協作專案中, AC 的技術顧問與助教們會審查你的技術文件與開發流程。技術文件包括 Git commit comments、 GitHub Readme 以及程式碼的組織架構和註解。
能力評估
期末時,我們會提供完整的技術測驗,幫助你了解自己對基礎能力的掌握是否到位、哪些部分需要努力。
在課堂之外,我們也會準備各式職涯活動、閱讀素材,讓你更貼近並了解軟體業界的趨勢。
最後,我們的【求職攻略課程 Launchpad】,會一步步引導你建立求職所需的能力與材料,替即將到來的求職行動做準備。
如你所見,工程師的養成之路,工作量真的不少!但請記得,你已經在成為工程師的道路上了,好好專心、保持心情穩定、盡情享受學習的苦與樂。
日後回頭,你會感謝在修煉的路上,持續付出、專心致志的自己。