: 通常都會看什麼特徵或是產業別啊?
: 討論看看吧
先說產業別..避開接案類型公司,不管我自己或同學都有累個半死卻沒啥好處的經驗
特徵的話,我覺得薪水越高工時越低,前題是非主管職而純技術職。
但這薪水高並不是要你越級打怪,而是你本身的能力可以勝任薪水越高會越輕鬆。
個人從累死到輕鬆上班的經驗談-
新人的時候跨領域跨很大,從系統廠到接案類型公司都待過,
玩過的東西有夠多,單語言寫過 VB6 C PHP AS3(Flash) Javascript
系統廠做東西自己研究 socket 寫通訊協定、燒錄資料 by UART / I2C
出報告產生 HTML,為了支援瀏覽器直接開產品甚至用 VB 刻一個 web server
(那年代只要求 http 1.0 沒有加密所以 header body 進 socket 直接硬解)
後來去接案公司寫了一些 PHP Flash 的專案,每天都很累,因為一直在學新技術。
在系統廠和新人同事加班為研究學習還好,但接案公司加班幾乎都只是為了趕客戶進度。
到了某 NAS 系統廠開始往前端工程師發展,剛好搭上 HTML5 風潮,加上寫過 Flash,
所以有經驗把很多第一代產品的 Flash 改用 Javascript 實現,也經歷了 ES5 -> ES6。
此時 github 開始流行,剛好透過 github pages 開發自己的作品也學了很多新技術。
這個階段開始明顯感受到自己做東西、自學新技術讓加班的時間越來越短,
因為累積了幾年經驗後會發現很都新功能原本要花時間去研究跟學習新技術的部分,
變成只要 PM 功能開出來腦海中就有方向要怎麼去做而不用每次大海撈針了。
工時的縮短和自己的能力進步是有正相關的,有些技術原本你的工作沒用到是自己做私人
專案時接觸到的,後來工作上剛好用到了你甚至可以直接從 github 拉自己的開源來用..
待的這間公司沒有加班費,但老闆發獎金時會看表現跟默契,滿幸運離職潮前跟老闆不錯
本來是應徵前端,陰錯陽差拉去寫 Node.js,靠著以前寫過 PHP 的經驗和前端多年 JS
知識最後也是有加班去研究 Server Side JS 技術完成了專案。在完成後的擴充跟維護上
運氣也是實力的一部分,縱使你有能力設計架構,但也不見得有運氣碰到從零開發的公司
那套系統的前端就不用說了,選用本來就很熟的 Vue,也是隨便寫寫就好不用花時間。
架構做的好,工時沒煩惱,因為 Task 要花多久幾乎是自己可以掌握的。
實際感覺會是你報出去的工時別人會覺得有點短,但你其實已經灌水在裡面且有自信完成
工作越來越專精了,現在的工作是寫 Vue,若不管時代差別其實用的知識跟技術大概是
從我工作開始以來範圍最窄的 (新人時代還要燒韌體寫通訊協定..),但深度卻滿深的。
平常還是跟其他同事一樣接一個大型專案的某些功能模組來寫,但有核心技術問題時,
主管會丟給你解。最近的一個大概是某家第三方的 plugin 要塞進專案中,但是用的全部
都是 DOM API,而我們的產品會透過 JSB 跑在手機內,所以要補 App 環境抓 DOM 問題。
其實就是找 source code 然後把 DOM 相關操作改 App 環境內的對應接口接上去,
再用 Rollup 重新打包成可以跨平台運作的版本,其實也不用加班就能搞定,但有加班費
可以領的公司還是給他報一下。月薪變高後去有加班費的公司時薪也高啊..
薪水越高,打雜成份越低,但技術深度要深過你的同事們。最近轉職風氣盛行,我身邊
一半以上的同事們都是轉職學園出來的,純寫 Vue OK 但要碰到原生 DOM 或底層就不行,
但這就是你能把握的機會,公司也不是白開高薪徵人去做同樣的工作。
以前會覺得大家平常都做一樣的工作為什麼薪水差異大,現在才知道領高薪的人不是說
你只要做的比別人快就好了,而是當意外出現時你要有能力解決別人解不了的問題。
回到主題,從自身角度給個建議:
因為同樣的專案開發,主管給的時間其實資深工程師都給差不多,但你能力好就能用更短
的時間開發完成,這樣加班機率當然大幅降低。
當專案發生意外時,沒有人能解的問題只有你能解,主管還會把你的工作分給別人叫你
先過來幫忙解掉這個老闆或客戶急著要的問題,你輕鬆解完時間就更多了。
接案公司另一個缺點,他們幾乎都接技術性質相似的專案,這樣才能快速產出。
沒有技術研究時間,碼農幾乎就是照其他專案刻下種子然後時間到就長完成品,
不但技術不會進步,老闆也會覺得公式化的產出應該品質和速度都要很穩定,
談加薪老闆只會覺得你也沒做比較快,也沒啥機會去改架構讓開發變快,
因為接案老闆跟速食店一樣,要的是每次製作的品質穩定、速度一致,
你不用期待有機會在麥當勞學到做高檔料理的技術,老闆的菜單也不會有。
--