YH 目前任職於某日商台灣分社旗下擔任軟體工程師,是我於高中時期於社團所結識的學長。幸虧有了 AlphaCamp 的職涯社群提出的大哉問,鼓勵大家去訪問目前已在相關產業工作耕耘的人們,而讓我們再此有了聯繫。這次訪談中,話題自開始寫程式的契機、曾經與現在的工作內容、與同事主管的合作、公司的管理模式……等多方面的觸及,讓我開始思考自己在未來可能的定位在哪。
1. 什麼契機下開始接觸程式?
大學時期就有接觸過些許程式的底子。當時學的是 C++,跟 JAVA 比較起來是較為難上手一些。寫程式就很像是解一個個的數學問題,在用盡心思解出來的當下,會滿有成就感的。自工學院畢業後,就到了小型的接案公司上班,成為派駐在趙氏企業旗下壽險公司的人員,接觸了JAVA EE,花了一些時間才摸熟。
2. 前端還是後端工程師?
這是一個有點難區別的問題。在小型的公司內,由於人手和管理制度的關係,多半不是區別的很清楚。規模較大的公司才有機會趨向前後端分離。前端的話是指:JavaScript/ HTML/ CSS;後端則是資料庫、Server、SQL;而中間可能會有 UR/ UX 。
3. 目前工作的產業及職務內容?
知名的電商產業中擔任偏後端維護的角色,由於公司分工較細,要專注在「寫程式」這件事情上是有可能的。目前所在的專案一共有8名工程師(包含主管),而與 PM 的協同合作也是必要的。
4. 堅持在工作上的動力是什麼?
寫程式的時候,是件有趣的事情。若寫出來的東西有使用者的回饋(有人在用),那就是一種幫助到他人的成就感。
5.如何認定自己已經掌握一個新技術?
像學習自然語言一樣,從生活周遭的用語開始接觸,進展到抽象詞彙。程式語言的話,先掌握讀檔、邏輯控制、畫星星…等等的基本功,從各種實作中去理解這個語言的架構設計(翻閱參考書是必要的)。這樣的歷程大略要3到4個月吧。
6. 現職需要與他人大量接觸或是合作嘛?
PM、團隊夥伴、設計師以及客戶,都是有機會互動到的對象。這時若有強大的PM來解決客戶和工程師兩者之間的認知落差,可以降低工程師精神力的損耗。
7.你認為大家普遍對工程師工作的誤解是?
擔任工程師並不是全天都盯著螢幕思考程式,定時的自我學習和查找資料的功力也是要有的。
8.軟體開發模式
Scrum 或是 Agile 都算是常見的模式。比起傳統的 Waterflow 模式,此二者具有快速打造出產品 Prototype 的特色。例如說3個月後上線第一版,之後每兩週一個小版號更新。不過受限於組織模式的影響,很難說在一個團隊內各個角色(使用者、管理者、工程師…等)都有,能提昇的效能有時也不一定顯著。
9.知識管理系統(KMS)的必要
若無適當的文件規格管理與記錄,在舊人因故離開後,新人接手往往都會有一段空窗期。若依賴口耳相傳或是新人獨自摸索,往往都得花上不小段時間。這也是在工作時常會遇到的狀況,也只能增加自己的學習與觀察力了。
結語
訪談完後只覺得這IT工程師的坑非常的深,也十分感謝 YH 學長有耐心的回答我這麼多概略式的問題。經由這段訪談,腦袋中過往所聽過的一些名詞和記憶似乎也悄然在連成線了。有朝一日會能夠知識專業面的。