匿名2022/8/3

未填公司未填職務41-45歲

寫程式興趣不能當工作

學歷:高中
原為技術員,工作較單純,做了10年
後來
轉職在軟體公司上班,做了4年,
我喜歡寫程式,但工作不只是寫程式,有很多事,讓我感到很累,我是不是該回去當技術員算了

我補充一下,我是在技術員工作自學程式並用於工作中,好些年後,發覺應該可以做軟體的工作,才轉職為軟體工程師。

技術員工作相對單純,我已經做了10年,而軟體工程師工作就比較不純,可能是已經習慣以前單純的環境,所以才產生這樣的感覺。

但讓我感覺累的狀況是,需求一直變更,或是文件要求嚴格,不然就是舊程式寫的很亂。

我在技術員寫程式與軟體工程師寫程式的感覺是完全不同,因為是為自己工作流程而寫,寫完自己受益,我相當了解自己的domain know how,可寫出好的code,且真正有用的code,不用去維護垃圾code。

興趣來說,寫code很有趣,但變成工作可一點都不有趣。

回答 5觀看 6131
回答 5

您好,

對於您的敘述,我完全認同,當專職的軟體工程師就是這麼不純。
1.需求變更 --> 因為常常使用者也不知道自己要什麼,所以變來變去
2.文件要求嚴格 --> 使用者不可能去讀程式碼或流程圖, 只能透過文件溝通
3.舊程式寫的很亂 --> 技術債真的很常見

我可以想像您或許喜歡的是有效率的解決問題的過程,但很討厭這些跟寫程式無關的瑣事,逐步消耗了興趣跟能量。

與其直接打消念頭,跳回單純的技術員,我會建議,花一點時間跟錢,去了解Agile敏捷式開發的基礎概念,甚至考證照,然後轉到採用敏捷式開發的公司行號,採用敏捷式開發,能更好的處理、管理這三點問題。

1.需求變更
由專業的產品經理或窗口進行需求討論,他們有一定的方法跟邏輯判斷,搜集訪談使用者(客戶)需求,定義什麼該做、什麼不該做、該怎麼做,什麼先做,排序需求,在兩週(或一定期間內)寫這些需求並改進程式碼。

2.文件要求嚴格
工程師按照需求做事,通常一個個 工作需求單 都寫成task, story, 然後assign給工程師,在期限內完成丟給下一關,基本上跟流水線也差不多概念,通常(?)工程師資源珍貴,不太會用軟體工程師產出技術文件,大部分時間花在程式碼上。

3.舊程式寫的很亂
技術債是一個會被重視、正視的問題,大家會有正確的觀念,現在偷懶沒寫好的程式、沒有升級硬體,疊床架屋之後,要花更多時間拆掉重蓋,假設要拆掉重蓋,也會是有工作需求單跟資源投注在解決技術債上。

搜尋關鍵字:敏捷式開發、Scrum、Agile
自己準備好了,就可以準備履歷、面試、刷題,為自己找一個更友善的工作環境。

最後要提醒一下,越複雜的產品,越龐大的開發團隊,單一工程師就越難有一個完整的產品概念,你自己根本就不是產品的使用者,搞不好出錢的客戶也不是使用者,很難跟技術員時候為自己寫code的時候相比,當一群工程師協同合作開發一個產品、軟體工具的時候,一定會有參差不齊的地方,畢竟每個人的思考邏輯跟解決問題的方法不一樣。

我會建議轉換一下心態,把每一個assign給你的任務搞明白,對自己產出的程式碼負責,把domain know-how建立在解決問題的方法,程式語言跟工具上,這些是可以帶著走的技能。

以上,提供您參考

7人拍手・
3人肯定

查看3則回覆

1 高中原為技術員,工作較單純,做了10年,後來,轉職在軟體公司上班,做了4年,我喜歡寫程式,但不想作服務業,面對客戶,讓我感到很累,我是不是該回去當技術員算了。
2 寫程式與技術員工作比較,寫程式有相對較多的優勢。
3 不想作服務業,面對客戶,是軟體公司您的職務,有的特質,需直接面對客戶。
4 找其他軟體公司,專門寫程式,不需面對客戶的職缺,找到了跳槽,問題解決。
5 應不需重回技術員。
6 祝福您。

1人拍手・

查看3則回覆

難道軟體工程師的薪資比技術員低嗎?

台灣的軟體業的開發成熟度落差極大,
大型軟體公司才有可能落實軟體工程,
中小型軟體業整天忙著 copy & paste!

想要遇到優質的程式碼?何不從你開始呢?
理論上必須重構有問題的程式碼,問題是主管、老闆同意嗎?
「主管、老闆想的是成本,客戶沒有要求重構,你幹麻花時間做呢!」
現實面當員工就是領錢、做事、趕進度,程式碼爛或不爛是公司的事,
只要您修改後的系統穩定度高,您的主管、老闆對您的印象就會好!
客戶花了錢當然想改到最好,例如:選單一下放上面,一下又改左邊、改右邊 ...

回到理想面,您想做什麼 know-how 的系統可以下班後實做,
開發有商業價值的系統轉而創業,這才是適合您的出路!
您的能力可以優於主管、同事,但是,千萬不要批評主管、同事、客戶,
領錢然後做事,直到您有其他機會賺取收入!

1人拍手・

查看1則回覆

您好,
關於文中最後說「興趣來說,寫code很有趣,但變成工作可一點都不有趣」,個人一部分贊同,但也有一部分感受不同,分享如下。

贊同的部分是興趣變成工作以後,就不是一個人的事,因為軟體會牽涉到上中下游,其中的模組連結,規格妥協,要求變更,就沒有辦法隨著自己的意思去做,所以就不覺得有趣了。

感受不同的是,個人受過專業的軟體訓練,所以當完成一套軟體以後,除了達到目標的成就感外,一定會有完善軟體的規格說明,模組的介面如何「被用」(I/O), code 的文字註解,讓別人看得懂的軟體架構等等,就會覺得完成了一隻專業的程式。

每個人都有選擇的權利,只要對自己的選擇負責,也就是選擇所愛,愛所選擇的,加油?!

2人拍手・
1人肯定

能解決多大的問題,對付薪水的公司而言,這員工就有多大的價值。

軟體若能完全自己一個人來管控,規格自己訂、系統自己設計、程式自己寫、品質自己測、進度自己管、文件自己決定怎麼寫、使用友善度自己說了算,可想而知這工作輕鬆的多。但相對的,解決的問題也沒這麼大。這些和 Domain Know-How 關係不大,和 Software Engineering / Requirement Engineering / Quality Engineering / Project Management / ... 關聯顯然大得多。簡單的說,在軟體團隊裡工作,要合作解決的是比較難的問題 (包括維護垃圾級的舊程式),雖然個人價值高,但的確很容易累。

工作遇到瓶頸難免,回到記憶中的舒適圈也屬人性,但每個人終究要為自己的職涯決定負責。不妨先放個假,讓心情沉澱一下,讓思考比較不受情緒干擾。然後冷靜理解您的困難怎麼形成的,做出您自己決定,選擇去面對它或是迴避它。現實是,在業界總有一群願意面對這種挑戰的軟體工程師,他們可以設法與這些困難、挫折、情緒和平共處。但選擇這樣的職涯,得建立更強的心理素質才行。

共勉

1人拍手・
1人肯定
問題沒被解決嗎?邀請GIVER來回答!
找不到想看的內容嗎?

大家都在搜

發問
發問