2024年2月5日

為什麼加薪升職的是別人?軟體工程師需要溝通能力嗎?不要等到被資遣才後悔!

會選擇當軟體工程師的人,相較於跟人溝通,應該更喜歡面對電腦吧?畢竟面對真實的人總讓我們覺得尷尬不自在。

我們這些軟體工程師宅宅們,通常懶得跟不同類型的人溝通,要對這些人把事情解釋清楚,還要處理對方的情緒,對我們來說真的是很困難也很麻煩。

但電腦程式不會有這些問題,只要依照規則操作,這些程式就會乖乖聽話。遇到問題,電腦也不會鬧脾氣,反正多半是工程師自己耍白癡。

因此,大部分的工程師最後都練就一身不管別人怎麼想的強大「講話」能力,只需要把自己的意思傳達出去就好,至於有沒有通,嗯,不是工程師的問題,聽的人要自己想辦法理解。

溝通能力是大事

剛步入職場的那幾年,我也是屬於埋頭苦幹型的。抱持著很理想的信念,認為只要認真做事,努力 coding,加薪升職就會輪到我。

還好,這並不是一個悲傷的故事,因為在離開第一間公司的時候,我的確成為在短短幾年內升到當時公司內最年輕的主管。

然而,現在回想起來,我必須要說,只是努力 coding 是不對的。

加薪升職的都是哪種人?

當時我有觀察公司內部的人,到底都是哪些人被升職。有發現幾位明明非常認真工作的人,卻永遠都是初階工程師,頂多資深。好像就上不去了。

但有幾位卻是一路狂升,短短幾年內就從工程師升到主任、副理、經理。

這其中最主要的差別就是,那些升遷很快的,通常有兩種特性,第一,他們會挑選最困難的專案或是高層最重視的專案來做,第二,他們善於處理團隊溝通的事情。

第一種特性很好理解,做重要的專案,才容易有成果,有成果的話,自己不用要求,主管可能就會主動幫你加薪升職了

而第二種特性則是對於我們這些怕生工程師來說比較難以理解的,整天在那邊講話、聊天,沒有實質的產出,對團隊有什麼貢獻?

但其實這些人是團隊中的重要角色。一些大型專案,總是牽扯到許多工程部門,每個部門之間要互相配合,否則沒辦法順利完成開發。

如果只是工程部門間溝通,那還OK,問題不大,畢竟大家都用相同的溝通模式。

但痛點就在於,在大型專案中,工程團隊必須面對業務、產品、行銷,等等不同的部門。要跟這些不同類型的人溝通,對於工程師來說是相當痛苦的。

所以非常需要具備第二特質的人,負責出來溝通協調,讓不同部門的人有辦法在同一個頻率上做事。

至於如果那些同時兼具第兩種特質的人,只能說升遷速度有如火箭升空。

不要只是在 coding 上努力

必須要說清楚的是,這兩種人,他們都是相當努力的,至少他們都有盡責地把份內事情做好。

跟其他人不同的是,他們不只努力 coding,他們也在其他地方上努力。例如還會去觀察配合公司實際的需要,也願意替團隊多做一些溝通,讓整間公司可以運作得更順暢。

也就是說,在自己的專業能力上努力只是基本條件。

不當管理職也要學會溝通

你也許會問,如果你今天只想安安穩穩當個工程師。有需要培養溝通能力嗎?

這就要問,你會不會害怕有一天,老闆跑過來問你:

「哈囉,林大哥,我知道你待在公司很久了,但我真的不知道你最近做了什麼。是這樣的,公司營運上有些困難,可能必須要資遣你。」

什麼意思?

是的,如果老闆不知道你在幹嘛,你就倒大楣了,這件事就是一個很嚴重的溝通問題。

今天就算你只是想安安穩穩的找個養老缺,也必須要不斷地讓你主管知道,你很有貢獻,公司非你不可,否則哪天被公司捨棄了,只能怪自己。

溝通能力是突破職涯天花板的重要關鍵

回過頭來比較正面的,今天一個工程師,如果要往上升遷,負責更大的專案,工作團隊總是會變大,這種時候溝通的能力就很重要了。

即便你走技術track,不用負責管理其他人的績效,但你也必須要發揮自己的溝通能力,帶領你的團隊成員幫你把工作完成,總不可能你要從頭到尾自幹吧!

幾個可能的溝通場景,例如,帶領新人進入狀況、跟其他同事討論要用什麼技術解決問題、要跟 PM 解釋技術可行性跟系統運作方式、跟主管報告近期完成工作項與討論新工作內容。

這些其實都不是「管理」,而只是日常工作需要的溝通。能不能把這些事情做好,是專案能不能成功的關鍵因素。

開始溝通吧

溝通也是工作的一環

我覺得軟體工程師們首先要認知到一件事情,就是工作不是只有coding,溝通也是必須的。

也就是說,我們不能抗拒 coding 以外的事情,我發現很多人會有這樣的誤會,以為工程師只要好好 coding 就好

過去學生時代,只要填好考卷,拿到高分就可以換到自己想要的東西,或是只要打怪拿經驗職就會升等。但在職場要能夠成長,不是這麼簡單而已,有太多其他影響因素了。

講社交能力對於工程師來說又太困難了,要建立關係又是另一個層面的議題。至少我們可以做到溝通,把話講清楚,確認對方理解,那就行了。

來點耐心跟同理心

大家都是替公司完成工作的打工仔,沒有人是故意來搞破壞的,所以大部分時候,工程師只要拿出耐心跟同理心,80%的溝通都會非常順暢。

雖然難免職場上還是會有一些劣幣,這就沒辦法了。

不同部門的人在意的事情不一樣,像是行銷部門,他們充滿了創意,總是天馬行空,完全不在意可行性,他們也根本就不在意技術細節。跟他們溝通就不必要執著在技術上,只需要讓他們知道目前我們能做到什麼程度就好。

如果是跟 PM 溝通,他們通常比較了解系統一點,就可以花一點時間跟他們解釋更細節的邏輯做法,面對他們提出來的需求,可以提出具體作法或實際面對的困難,來跟 PM 一起討論解決方案

簡單來說,至少讓對話可以愉快的結束,就是一個好的職場溝通了,至少大家後續合作可以更加順暢。

不過如果缺乏耐心跟同理心,我只能說,好吧,這篇幫不了你,請另尋他路XD

結論

我們都期待只要埋頭苦幹,做我們最擅長的事情,也許好事就會發生。對啦,不否認世界上可能還是有這樣的例子。但我自己是比較悲觀的人,我不覺得這種好運會發生在自己身上。

我還是會想辦法去看看是不是還少了什麼,有沒有其他機會是我自己可以把握或創造的。

溝通讓別人清楚知道我的想法、需求,也讓對方知道如何幫助,如何跟我合作,隨著溝通能力的提升,我也逐漸懂得如何利用溝通爭取機會或創造機會。

不過話說回來,相較於那些天生就喜歡跟人群互動的人,對我來說跟人溝通還是消耗更多能量的,只能說,生活不容易啊。

相關書籍推薦

Staff工程師之路|獻給個人貢獻者成長與改變的導航指南