職涯訪談系列:談軟體工程師的養成

透過職涯訪談,觀摩其他軟體工程師的路線,藉此找到屬於自己的成長路線。

吳振銜
You Can Code
10 min readJul 26, 2019

--

這幾個月,我正在學習如何像軟體工程師那樣思考、編碼。透過Alpha Camp的全端網路課程,參與實作,除了學習,也是測試自己對這領域的興趣及能力。

在學習的過程中,偶爾我會跳出來去思考跟這領域有關的其他議題,這樣可以幫助我用更寬廣的角度去看待寫程式或成為軟體工程師。

其中一個我感興趣的題目是,我很好奇一個卓越的軟體工程師發展到後來會長成什麼樣子!

與軟體工程師之交集

2019年年初,正當我開始計畫要透過正式課程來學程式,差不多時間,我也認識了一個軟體工程師Mr. E。我覺得這件事情很棒!因為這代表我在學程式的過程中有人可以指引方向,使我不致落入盲目學習的窘境。

Mr. E給人的第一印象是這樣子的:有熱誠、活力十足、口語表達能力清晰、邏輯性強、散發領袖魅力。

認識他到如今,他為人就如同他給人的第一印象,很一致。但我也慢慢發現他許多其他很棒的特質。

AC職涯社群計畫

學程已進入第二學期,課程有一職涯訪談計畫,可以選擇性參與,這個作業說明如下:

這份作業最重要的目的,是希望同學們能透過不同的「對談」,來了解自己有興趣的職務和產業內涵。並且透過準備與書寫的過程,釐清與確認自己的目標與興趣。對談的對象可以是你的朋友,可以是同樣在 AC 學習的同學,或是透過介紹或陌生拜訪的業界人士。要確定自己的方向,首先需要從足夠的理解開始。

這個作業對我來說,它至少可以讓我更深入去瞭解工程師都在做什麼,但是我的目標不只是如此,就如同本文開頭提到的:

我很好奇一個卓越的軟體工程師發展到後來會長成什麼樣子!

決定要參與職涯社群計畫之後,接下來就是選定訪談對象,然後設計合適的問題、邀約、進入訪談,最後整理訪談記錄加上自己的反思。

訪談對象的決定,我手邊有3個名單,不過我最想訪談的對象則是Mr. E。

話不多說,咱們進入主題。

Photo by Juri Gianfrancesco on Unsplash

學經歷背景為何?

Mr. E畢業於淡江大學企業管理學系,本身是所謂商管科系,但其中對資訊管理有好感,特別喜歡請教教授資訊管理的張瑋倫助理教授,並在教授的鼓勵下大學時申請國科會大專生計畫,前往加拿大IEEE發表關於人際脈絡的DataMining主題研究,結下了對於電腦軟體工程的興趣與發想。

但因本身沒有什麼程式底,而留下對於寫程式的好奇,便先進入職場工作,投身外商顧問公司以專案助理的身分,就近觀察資訊能量在業界的效益。

進入這個行業,做了什麼準備?為何選擇這個行業?

對Mr. E來說,了解是第一步,透過職場上結交工程師朋友,或者觀察他們訓練的素養,聽他們專業養成的過程與管道,型朔他對於這項專業的認知與理解,進而在切換時刻投入程式碼的學習,也因為透過熱情與理解的累積,在切換期的態度即能以很大的學習能量去累積。

同時,他相信產業在升級的過程中,「系統工程」 扮演關鍵的一個手段,將大量的Domain KnowHow 以系統分析方式萃取,轉換成軟體系統技術,可以節省原本流程運作時間、提升精準度、降低溝通成本、縮短學習上手時間等特質。在各進階產業,這樣的現象不斷發生、成為了進步的一部分。

躬逢其盛的Mr. E,決心讓自己也投入這項變革。參與其中,期許自己能成為一個能提出解決流程,並具親手系統分析與實踐軟體解決方案的專業人士這樣的職涯道路邁進。

後來,Mr. E 參加了資策會培訓,並在成果發表時得到廠商青睞,順利拿到offer。

轉換部門,做了什麼準備?

Mr. E並沒有經歷轉換部門的過程,反而是跟隨部門的重要性在公司中不斷成長 (公司同時在轉型,轉型成軟體公司)。軟體單位在公司重要性不斷上升,隨著年資與經驗增加,跟著新專案與組別調動,切換定位。從公司內部系統 到負責對外官方網站,到參與新單位企業智慧解決方案的設計與研發。

部門在公司的角色、重要性為何?

在後期公司開始全力往軟體公司定位轉型,成為公司的戰略發展單位。雖然公司有原本的盈利產品,但本單位還是需要時時追蹤研發進度,配合公司廣宣與業務推廣,提出能解決市場可能需求的方案,確保未來公司營利重要性,屬於重點單位。

工作內容為何?常規流程、專案(類型、內容)?

需要保持了解市場可能的應用技術,思考這些技術能夠堆砌出怎樣的解決方案,並配合業務同仁在市場上的觀察與訪談,試作產品原型,規劃可行性與產品功能,透過業務同仁對客戶的溝通確認,開發出能處理並解決客戶問題的方案與系統。諸如車牌辨識方案、機場門禁系統、物體識別偵測 等核心應用的多個方案。

網路開發的相關技能或知識,有哪些?如何幫助現在的工作?

除了原本的網站規劃設計開發、資料庫設計開發、MVC架構、Ajax操作、執行序處理等,應該說,軟體工程是一個龐大的技術庫。在工作的情境下,去理解並學習相關技能與知識,累積成解決問題的能力,轉換成在工作上的助力。

過去的經驗對現在的工作,有何幫助?

商科與行銷的理解,能讓Mr. E更能懂官網的定位與公司品牌訴求,提升溝通效率、溝通能力、傾聽的能力。

有哪些關鍵技術?

系統設計、C# 開發、系統、架構、網頁、應用程式 等。

對於找工作、選工作、面試,有哪些建議?對於技術學習,有哪些建議?

選擇自己感興趣的Domain ,技術服膺解決問題的問題本身,如能理解自己對於解決問題的初衷與目的,能激發自己的熱情、在技術與工作經驗成長上事半功倍,也不會只是一個單純寫程式的工程師,而是一個解決問題的專業人士。

理解想解決的問題,可以培養自己解決問題的熱情,提升技術熱誠動機。從小地方練習起,Side Projects的嘗試也是很棒的練習~!

以上是我的訪談內容。

這次訪談的限制

先說一下這份訪談記錄不足之處。我對於Mr. E所在的產業沒有太多著墨,一一個原因是,我想多focus在他的工程師養成之路,另一個原因是,因為現階段我熟悉的技術有限,若談到產業類別,也勢必會談到相關技術,自己可能有聽沒有懂。基於上述理由,當初在設計問題時,就沒有設計多一點關於產業的相關問題。

不過訪問結束後我再重新想想問題的設計,若提到跟產業相關的技術,若我不懂,其實也還好,就當成新知看待就好,只是深入程度有限。但是,說不定還可以聊到有興趣的領域。

Photo by Simon Rae on Unsplash

對於轉職,我做足了準備嗎?我還欠缺什麼能力?

我需要瞭解:我身在何處,要往哪裡去

現階段參加Alpha Camp的全端網路課程,對於程式新手的我而言,是個很好的起步。過去我在學程式的經驗比較像大海撈針,因為知識技術太多,常常不知道該學什麼。那時候,我稍微知道不是「學什麼」的問題,而是「當我學了程式之後可以做什麼」的問題。即使如此,對於學習,因為沒有適當的規劃,可能落入三分鐘熱度或半途而廢的困境。再加上沒有前人的指引,遇到困難總是不知道怎麼詢問或尋找相關的網路資源。

這三個月來,在Alpha Camp學到很到,從User story、Wireframe到HTML、CSS、javascript、串接API,專注在前端工程師的技能。現在要刻一個互動式的網頁應該是沒問題了。只差要把學到的技術練得更加純熟。

回到訪談中關於技術的提問。當我問及Mr. E「你有哪些關鍵技術?」時,除了之前他的回應,他還補充一點,他認為技術很重要,但是「態度」更重要!

我可以體會這點,因為同樣的觀點在各領域皆適用。即使一開始技術平平,但是好的態度,可以漸漸補足技術的缺口。當然,態度不只是影響技術上的學習,還包括對事情的態度、對人的態度、面對壓力的調適、面對問題的處理、面對負面景況的態度等。

關於公司需要什麼樣的人才,可以參考下面這篇:
技術強者不一定對公司加分,我該怎麼找到最適合的工程師?

綜合訪談,我覺得我可以在幾方面繼續努力:

  1. 與新技術保持連結:對比我現在的產業,資訊產業更看重如何運用新技術,軟體工程師相對來說更看重要跟上趨勢,不斷探索新的技術以滿足需求及解決問題。
  2. 語言表達能力:因為看到Mr. E可以很清楚表達自己的經驗,暢談各樣他熟悉的技術,甚至因著他對商管領域的熟悉,他總能以更高的角度來思考問題。從中,我看到,好的表達能力確實在各方面都有加分的效果。
  3. 培養使用者意識:現階段的我深入在技術的養成,較少從使用者的角度去思考作品的呈現。Alpha Camp學期一提到的User Story其實就是個很好的起步,最終,我總是得回到使用者的角度來思考一個作品的完整性。所以我不只是要培養深厚的技術,也要常從使用者的角度出發,進而滿足市場的需求。
  4. 加強應用實作,充實自己的Side Project : 學到了技術,是一個階段性策略,下個階段,則是把技術練得純熟。很喜歡這篇「向矽谷的 90 後取經 如何成為受歡迎的工程師?」裡面談到了sideproject的重要性。
  5. 產業分析能力:過去的我一旦在某個領域中,就很少跳出來從更寬廣的角度去看這個領域,久而久之變成了員工思維,自己都不曉得。不管在什麼領域,都需要創新加上更寬廣的角度看待產業甚而進行產業分析。就算沒有創新,至少也要知道趨勢。

我可以如何結合我過去的學經歷,並找到合適的產業?

若我開始打算轉職,要跨足不同產業嗎?或是投入跟本身的醫療背景有相關的產業?這是Mr. E丟給我的問題。他認為我可以好好善用自身的優勢,投入相關產業的資訊部門,這是轉職的其中一個選項。

在開始有轉職的念頭後,我確實沒有考慮到要投入醫療相關產業的資訊部門。或者可以說,我只是一個想當工程師的念頭,但沒有想清楚要投入什麼產業。

其實,既然對醫療有相對的熟悉度,其實可以利用這項優勢,投入醫療相關產業的資訊部門。不管是在面試或實際工作上的表現,我都可能比其他人更懂得醫療產業。

想到Mr. E提到「商科與行銷的理解,能讓Mr. E更能懂官網的定位與公司品牌訴求,提升溝通效率、溝通能力、傾聽的能力。」

我想,未來的工作很難用一技之長來定義,現在的職涯發展多元化,T型人才、非型人才、斜桿青年的出現,也反應出社會所需要的人才朝多專長發展,而多專長的人才也較能 外界環境的變遷。

跨域發展的思維是需要培養的。但我也同時需要認知到,這樣的方向衝擊著自我的舒適圈。待在一個安穩舒適的環境久了,就很難有突破現況的動能,除非意識到非要改變的時候已到。

多和不同領域的人結交朋友是個不錯的選擇,聊聊各自領域的種種,給自己多些刺激,多點啟發,同時也挑戰自己跨出舒適圈。

另外,也可以參加一些座談會或課程,擴展自己的視野。記得上次參加〈新創小酒館〉就有意外的收穫。

有興趣的,可以看這篇:【聽課分享】找到你的WHY

總結這次的訪談。

這次的訪談提醒我還有什麼可以努力的、我可以如何調整我的方向。另外,也提醒我,或者說是鼓勵我,我過去走的路其實沒有白走,可以善加利用過去的經驗,創造另一種可能。

--

--