《小吃貨的英國日常》軟體工程師到底在做什麼?
很多人常會想像軟體工程師就是,在電腦前做一些什麼,然後進階一點可能會覺得就是在寫程式,偶爾聽到他們說什麼Debug, 這也是我在成為工程師前,對工程師工作日常的想像。
實際上,其實軟體工程師也分很多種,例如Web類還有分前端後端全端,手機類,還有像桌上型程式,其他也有像測試工程師,遊戲工程師,網路安全工程師,架構工程師,每一種工程師都不見得知道其他種的日常,甚至不同公司,不同產業使用不同的開發模式,像waterfall, agile, 有沒有CI/CD,DevOps,雲端,版控都差很多……
至於我到底在幹嘛……目前邁入工作的第二年,相較於第一年的菜鳥訓練生生活真的差很多,大概就是漸漸步入軌道,越來越接近一般工程師的生活。由於我們team是走DevOps, CI/CD,Agile, 基本上每天早上都要開會scrum,每個星期一有weekly planning, 要plan task。那開會在幹嘛呢?就是要報告自己昨天做了什麼?任何瓶頸?今天要做什麼? 這樣有問題可以馬上和team討論,team member 也才會知道你在幹嘛。每個禮拜一除了會run一次scrum 還會把一些任何做plan, 就是討論這個任務在做啥,怎樣task break down, 這個很重要,因為task 的size也很重要,要分幾個sub task, 要做什麼,誰要做,有任何問題? 需要再跟設計師討論? 當然因為DevOps, 我們所有meeting 設計師跟測試還有PM都會在,更方便討論。其他時候我們就自己認領task去做,做完丟給team leader review, code review 完才去測試工程師那, 然後才deploy, 所有流程都在Jira Kanban 版上,所有做了多少時間都要log work, 供PM看Team Leader 掌握進度。我目前是fullstack 全端,所以前後端都要學, 而學習主要還是自學。和其他工作很不一樣的是,工程師大多要自學,自己找資源,看影片,看文件,所以比較痛苦的大概是英文閱讀,另外是溝通,因為要一直開會,一直討論,還有要跟設計師,測試討論,這大概是因為DevOps, 所以更會這樣。這一年來我英文閱讀跟口說進步神速,而真正coding 反而沒那麼多,更多是在做AWS, 寫script, 雖然寫script 人家也會說寫程式,可是現在更像是了解computer science, 要知道很多系統,很多規格,很多Design Pattern 的東西,而前端框架也是,更多是怎樣設計,演算法別人都包好了,後端也是框架都包好了,一來不容易出錯,二來容易測試,反而跟以前所想像的工程師工作或在學校學的差很多。在工作上更重要的是Software Engineering, 怎樣寫出clean, high availability, testable, readable 的code比你想出很聰明的方法更重要。有時很efficient 的function, 可能很難測試,可能有漏洞,可能很難相容。
不知道大家會不會覺得工程師的日常好像很無聊呢~哈哈!至於工作環境,英國和台灣一樣,女生工程師很少,所以大部份的同事男生,大家可能會幻想那,英國的男生對女生都很紳士什麼的。在我公司一點也不會,反而會覺得男生工程師都講話更Aggresive,當他們覺得就是這樣,就很難改變他們意見,有時候他們講話也沒在客氣,質疑你的想法,批判你的想法都很直接。但也因為這樣,有時候一群男性工程師更容易做出太果斷的決定,通常他們就只有Yes 或No居多,所以工作環境的diversity 也很重要。當然另外,普遍男工程師也比女工程師更有自信(網路上有研究數據),可能是環境的關係,所以就更容易做出偏頗的決定,而且因為團隊中可能只有一個工程師是女生,有時也很難真的有diversity 的效果……而且當團隊80%都持意見A時,往往就不會考慮到剩下的20%,即使那可能是軟體開發很重要的一環。可能也是因為我英文不夠好又是外國人,又是團隊中唯一的女工程師,就也常常不知道何時可以發表意見或害怕講話,怕講錯話,而且英文也很難完整表達,這大概也是未來需要努力的部份吧~另外就是看文件的速度還有思考邏輯。每次我如果描述一個問題,我主管都會說,這不是工程師用語,你要用工程師的用語,像defect, tech debt, 或者不能說I don't know, 當你不知道的時候就要馬上找到原因,而不是問人,你即使問人也要說你覺得可能的問題或原因。
#覺得當工程師好難
#一有空檔就到廚房偷懶
Search