軟體工程師的素養

2021/12/20閱讀時間約 2 分鐘
如果有在接觸軟體開發產業,很常見的一個說法是非本科(資訊、工程背景)的工程師底子差,做出來的東西很糟糕之類的。然而,事實真的是這樣嗎?又或者說,我們能夠如何解決這樣的問題?

矛盾的心理

實際上,我很多時候也會這樣覺得。在工作的時候很常會想著「這麼簡單都不懂嗎?」或「這不應該是基本的常識嗎?」然後對剛加入公司的同事不耐煩,大多數時候冷靜下來就會變成「也許該教一下?」這樣的狀況。
我自己也是非相關背景的工程師,雖然因為興趣的關係所以不能分類在轉職,然而以我自己的學習經驗來看,會有這樣的感覺是因為對方跟我期待的工作能力不足造成的,而不是因為對方不是沒有相關背景。
對於這樣的狀況,在這幾年經驗中歸納後認為是一種「素養」問題,也就是對軟體、科技的概念不熟悉,進而造成沒辦法想像該如何去解決或處理這樣的問題。

科技的素養

這就有點像是現在大多數的人都以使用智慧型手機為主,如果要使用電腦的話反而會不知道該如何操作,在這樣的前提下要對方先理解電腦是什麼、如何操作、裡面的軟體會怎樣運作,才能夠讓對方順利使用並且進一步能夠設計上面運行的軟體。
基於這樣的假設,現在我在跟人解釋一項技術的時候,都會先以歷史(發展)、關鍵的技術轉變到現在使用的應用來做一個脈絡的鋪成,目的是要協助對方建構一個思考的概念,像是為什麼現在大家都在用 Web(網頁)技術開發軟體,中間經過了怎樣的技術改革,透過這樣的方式來協助對方更容易的去推導一項技術該如何使用。
其實,大多數非本科、轉職的工程師,為了能夠快速的學會工作上的技能,在課程的設計上就會以實作為主搭配非常入門的觀念。然而不論在哪種行業裡面,都需要具備足夠的知識(經驗)才能夠在遇到不同的情況下,根據經驗判斷該如何調整或者規劃。

被遺忘的細節

正因為這些理論、脈絡在我們學習軟體開發的過程中被忽略,同時又不斷的學習新技術,進而一點一點的讓這個缺口變大,最後就逐漸變成一個瓶頸。這也是在軟體工程師很常會討論的一個議題,理論還是實作優先,以資訊相關背景的人來說,在學校就是靠著先理解理論再學習實作,因此剛開始工作時可能實作上不太熟練,技術問題也沒有困難到需要理論支持。
然而在許多特定的情況或者遇到要要設計系統、改善的時候,這些理論知識就會有其發會效用的地方。當然,在更資深的情況,更多的是學校學不到需要在工作上不斷累積的知識,也因此一直以來都不是實作或者理論的問題,而是在工作中是否有不斷的平衡知識跟技巧,而「素養」就是累積和應用知識的一種基礎能力。
這也是為什麼我在 2020 年開始嘗試舉辦開發者對話這個活動,在一次參與活動的經驗跟我的教練互動後,發現大多數時候工作是缺乏這樣的機會,需要靠自己累積知識才足夠,甚至能夠爭取到更好的機會。

封面照片使用 UnsplashAnnie Spratt 的作品,如果有想聽的主題可以透過匿名提問告訴我。
為什麼會看到廣告
53會員
40內容數
軟體工程師逐漸變成一個熱門的職業,當我們進入這個職業之後應該要具備怎樣的技能才會在工作上更加順利呢?這系列的專欄會分享日常工作中的經驗以及一些案例分析,讓我們一起努力成為一位更優秀的軟體工程師吧!
留言0
查看全部
發表第一個留言支持創作者!