今天回顧第一份工作~
先回顧本人背景:
1.傳播學院畢,編輯經驗三年
2.資策會前端工程師養成班結業
第一份工作繼續跳tone
=> 外派至百年歷史外商內部,維護十年老專案。專案內容是該外商內部一個主要由業務員使用的業務進度與收帳系統。當時雖然有多個 offer 在手,但仍然因為大企業的招牌而選擇這裡,但事後覺得後悔。
專案使用 Java EE , 工作內容有後端邏輯撰寫、資料庫維護、前端接API、簡易頁面切版...。台灣團隊由七人組成,三位該外商正職員工,兩位派遣工程師,兩位其他公司派駐的員工(大雜燴)。美國團隊有一位PM、一位資深工程師、一位QA、一位系統工程師...大致上是這樣。
上工預備:
後來發現每份 programmer 上工前都會走過這些流程,只是採用的工具、技術不同
簽保密條款,領取置物櫃鑰匙(團隊採 mobile seat,沒有固定座位,下班前都要把東西收到置物櫃),辦門禁卡,Contractor 的門禁卡左上方有黃色區塊以做識別,領取筆電,
1-1. 安裝 JRE(運行 Java 的環境)
1-2. 設定 IDE,使用 Eclipse
1-3. 安裝與設定 server(使用 WebSphere)
2-1. 從 SCM(Source Code Management) 下載專案原始碼
2-2. 修改 .property 檔案,裡面存放帳號、密碼、伺服器路徑等,主要供本機開發使用
3-1. 在 Server 提供的網頁介面進行資料庫的基礎設定,例如權限、資料庫名稱等等。
3-2. 使用該企業開發的資料庫檢視與操作介面,介面相當有歷史感。
使用 Eclipse 企業版中 work item 套件。一個 work item 即是一個工時單位,可分為較大的 story, 也有比較小的 task ,待辦的 house keeping 等等。每個人同時會有十幾個到幾十個 work item 在身上。進度有 progressing, develop complete 之類的。完成之後進入 code review 機制,這個套件也有網站介面可使用。
除了使用 Git 作為版本控制,每支程式最上方紀錄檔案創作者、以及每一版修改人的名稱、work item 編號、 work item 主旨。 code 改動的地方也會標示 work item,例如 #16666。所有改動皆會被記錄下來(留下不可磨滅的痕跡?!)
code 修改完後,就算只是很小的修改,都要經過 compile 才能放到瀏覽器執行。
本機開發完之後,每週表定會上一次 code 到測試環境,由 QA 依據 work item 所要求的去測試功能,較複雜的 work item 會有 PM 特別測過。每兩周則會上一次 code 到正式環境,不過任何時候如果有要緊急搶修則隨時會進行 hot fix。
以上,比起用 JS 開發網頁,用 Java EE 來開發的前置手續真的非常的多。雖然都是按照文件一步一步走,但由於完全沒接觸過 Java 的開發方式,所以整個過程仍然相當不順利,加上又是規模龐大、歷史悠久的老公司和十年歷史的老專案,覺得包袱相當多,也不比當代技術使用起來那麼方便。
在這個環境當中,我嚴重適應不良,複雜的商業邏輯、陌生的程式語言、難以上手的編輯器,都讓我自信心一天天逐漸流失。連向主管問問題、向同事請教,都常常發生牛頭不對馬嘴的情況。甚至連到底要做甚麼、從何做起,都要花上好幾天去理解。雖然陸續有學習到東西,但深覺這樣下去不妥,於是決定重回前端懷抱。
這邊有一個心得跟各位分享:「不一定要去高的地方,要去適合的地方。」