網頁

2019/7/8

程式開發者應享有的基本權利

本篇為CODING HORROR - The Programmer's Bill of Rights這篇文章的感想,想必每個程式工作者都會感同身受。

工程師應該配給至少兩台螢幕。

兩個螢幕可以提高生產力。何況現在一個22吋螢幕才2000台幣出頭,而且可以用很久,小小的投資就可以增加工程師的生產力,減少他們的抱怨,會何不呢?現今仍舊有些公司配給工程師用了5年以上有嚴重色偏大小才20吋的螢幕,而且還接觸不良,真不懂得那些老闆在想啥。

軟體工程師工作時一定是一個螢幕總是開著IDE工具(例如Eclipse,IntelliJ,VS Code);另外一個螢幕可用來,放網頁(查API,查官方文件,查Stack Overflow,查CSDN,查知乎,查Pattern怎麼用),放SD文件(可能是自己開發自己寫,也有可能是領比較多薪水的人寫出的不知所云的東西),放自己的筆記(例如Evernote,OneNote),放資料庫工具(Oracle SQL Developer,SQL Server Developer,MySQL Workbench),放部屬機器的Linux Bash,放記事本。兩台螢幕在參照或複製貼上的時候會方便許多。

而一個螢幕呢?工程師就得不時地切換視窗來比對,這樣的動作會令人昏睡增加疲勞。

不只軟體工程師,現代職場中每位長時間面對螢幕的工作者都應該擁有兩台螢幕。

Dell研究報告Dual Monitors Boost Productivity, User Satisfaction
University of Utah的研究報告Productivity and Multi-Screen Displays


工程師應該配給一台好的電腦。

什麼叫好的電腦呢?就是快速的CPU(i5以上),至少16GB的記憶體,SDD系統硬碟,硬碟容量512GB以上。

在2019年,以Java工程師為例,開發專案時通常會開Eclipse或IntelliJ IDEA,資料庫開發工具,一堆的網頁(15個以上的分頁),筆記工具,通訊軟體,Email軟體,Excel,Word等,這些東西光開著就要8GB的記憶體空間。更別提在本機執行專案會吃掉更多的記憶體。想要編譯得快一點,CPU要夠力。系統要擺一堆文件,硬碟要夠大夠快。


我目前工作時的記憶體用量

每個月花十萬元請個頂級工程師,但配給一台爛電腦,那得到的是工程師的抱怨和高離職率,要不就是等同把錢丟到水裡,因為工程師大部分的時間將不是花在開發上,而是等待程式編譯,等待記憶體不足卡住的程式回復,重開記憶體不足當掉的Chrome瀏覽器,頻繁的整理資料夾因為硬碟太小。


工程師應該可自由選擇滑鼠和鍵盤。

鍵盤的配置有大有小,按鍵的分布也不同,滑鼠的重量,手感也是一樣都不同。每個工程師都有自己習慣的一套組合。提供工程師補貼讓他們購買習慣用的,這樣可減少寫程式時出錯的機會,減少抱怨,減少滑鼠手(腕隧道症候群)發生,增加忠誠度和向心力,又是最便宜的投資,比發兩顆粽子或柚子好多了。


工程師應該配給一張舒適的椅子。

一張舒適的椅子,可以減少工程師背痛,脖子痛,肩膀痛的問題,工程師可以坐(做)得更久,工程師不會需要每個禮拜都要請假去復健科報到,一樣可提高生產力的投資。


工程師應該擁有快速的上網連線。

更誇張的是,我聽過某金控公司的專案經理(PM)說,程式開發人員不需要上網,SD才需要。

某公司某專案的大小是12GB,慢得要死的連線到底要checkout多久。Angular ng new一個專案就幾百MB,Maven dependency套件下載也是一缸子,緩慢的網路連線這些事情都可以搞一天,工程師抱怨連連。


工程師應該擁有安靜的工作環境。

有的公司會標榜歡樂開放式的工作環境,但事實上是吵得要死的同義詞。當工程師進入心流(flow/zone)時就被打斷是令人憤怒的,安靜的工作環境可以提高生產力。


下面是我的補充


工程師應該擁有一張空間足夠的桌面。

很簡單,因為要擺兩台螢幕,螢幕架,鍵盤,滑鼠,參考書籍,筆記本,還有很重要的飲料。認真的工程師還會自備一台自己的小Linux Server。


工程師應該擁有燈光充足的工作環境。

和好的椅子一樣,充足的光源可減少工程師請假去看眼科的機會。


工程師應該擁有無限的咖啡因飲料。

可樂或咖啡,軟體工程師的燃料,能提供冰塊和牛奶更好。


工程師應該擁有不被打擾的權利。

請善用Email,或JIRA,Redmine等bug tracker,Trello排程,Slack溝通,請不要想到什麼就走到工程師旁邊要他幫你改什麼什麼,增加什麼什麼,這樣只會降低生產力和引起工程師的不滿。


工程師應該不用開無意義的會議。

有百分之八十的會議和工程師一點關係也沒有,也不重要,工程師坐在那通常都在筆記本上畫圖,想午餐要吃什麼,玩手機,玩Pokemon GO。還不如讓工程師坐在位置上寫程式。


工程師應該擁有彈性工時。

現在是資訊化時代,知識經濟時代,但不少公司仍以管理工廠流水線作業員的方式來管理工程師,在這種整天要求打卡,遲到扣錢的公司裡面有能力的工程師遲早都會跑掉。


工程師不應該被提供餅乾零食。

和好的椅子一樣,高熱量的零食只會讓工程師日益發福,直線上升的體重對脆弱的脊椎和下盤是很大的負擔,另外會讓公司成為小強的溫床,所以餅乾零食並不是福利。


工程師就是公司的生財器具,公司的重要資產,請跟保養機台一樣好好善待他們。

沒有留言:

張貼留言