選擇成為軟體開發工程師的5個原因
| 2015-08-07 07:53 收藏: 2
這個星期我將給本地一所高中做一次有關於程式猿是怎樣工作的演講。我是志願(由 Transfer 組織的)來到這所學校談論我的工作的。這個學校本週將有一個技術主題日,並且他們很想聽聽科技行業是怎樣工作的。因為我是從事軟體開發的,這也是我將和學生們講的內容。演講的其中一部分是我為什麼覺得軟體開發是一個很酷的職業。主要原因如下:
5個原因
1、創造性
如果你問別人創造性的工作有哪些,別人通常會說像作家,音樂家或者畫家那樣的(工作)。但是極少有人知道軟體開發也是一項非常具有創造性的工作。它是最符合創造性定義的了,因為你創造了一個以前沒有的新功能。這種解決方案可以在整體和細節上以很多形式來展現。我們經常會遇到一些需要做權衡的場景(比如說執行速度與記憶體消耗的權衡)。當然前提是這種解決方案必須是正確的。這些所有的行為都是需要強大的創造性的。
2、協作性
另外一個表象是程式猿們獨自坐在他們的電腦前,然後擼一天的程式碼。但是軟體開發事實上通常總是一個團隊努力的結果。你會經常和你的同事討論程式設計問題以及解決方案,並且和產品經理、測試人員、客戶討論需求以及其他問題。 經常有人說,結對程式設計(2個開發人員一起在一個電腦上程式設計)是一種流行的最佳實踐。
3、高需性
世界上越來越多的人在用軟體,正如 Marc Andreessen 所說 " 軟體正在吞噬世界 "。雖然程式猿現在的數量非常巨大(在斯德哥爾摩,程式猿現在是 最普遍的職業 ),但是,需求量一直處於供不應求的局面。據軟體公司說,他們最大的挑戰之一就是 找到優秀的程式猿 。我也經常接到那些想讓我跳槽的招聘人員打來的電話。我知道至少除軟體行業之外的其他行業的僱主不會那麼拼(的去招聘)。
4、高酬性
軟體開發可以帶來不菲的收入。賣一份你已經開發好的軟體的額外副本是沒有 邊際成本 的。這個事實與對程式猿的高需求意味著收入相當可觀。當然還有許多更撈金的職業,但是相比一般人群,我認為軟體開發者確實“日進斗金”(知足吧!騷年~~)。
5、前瞻性
有許多工作崗位消失,往往是由於它們可以被計算機和軟體代替。但是所有這些新的程式依然需要開發和維護,因此,程式猿的前景還是相當好的。
但是...
外包又是怎麼一回事呢?
難道所有外包到其他國家的軟體開發的薪水都很低嗎?這是一個理想豐滿,現實骨感的例子(有點像 瀑布開發模型 )。軟體開發基本上跟設計的工作一樣,是一個探索發現的工作。它受益於強有力的合作。更進一步說,特別當你的主打產品是軟體的時候,你所掌握的開發知識是絕對的優勢。知識在整個公司中分享的越容易,那麼公司的發展也將越來越好。
換一種方式去看待這個問題。軟體外包已經存在了相當一段時間了。但是對本土程式猿的需求量依舊非常高。因為許多軟體公司看到了僱傭本土程式猿的帶來的收益要遠遠超過了相對較高的成本(其實還是賺了)。
如何成為人生大贏家
雖然我有許多我認為軟體開發是一件非常有趣的事情的理由 (詳情見: 為什麼我熱愛程式設計 )。但是這些理由,並不適用於所有人。幸運的是,嘗試程式設計是一件非常容易的事情。在網際網路上有數不盡的學習程式設計的資源。例如,Coursera 和 Udacity 都擁有很好的入門課程。如果你從來沒有擼過碼,可以嘗試其中一個免費的課程,找找感覺。
尋找一個既熱愛又能謀生的事情至少有2個好處。首先,由於你天天去做,工作將比你簡單的只為謀生要有趣的多。其次,如果你真的非常喜歡,你將更好的擅長它。我非常喜歡下面一副關於偉大工作組成的韋恩圖(作者 @eskimon) 。因為編碼的薪水確實相當不錯,我認為如果你真的喜歡它,你將有一個很好的機會,成為人生的大贏家!
via: http://henrikwarne.com/2014/12/08/5-reasons-why-software-developer-is-a-great-career-choice/
作者:Henrik Warne 譯者:mousycoder 校對:wxy
相關文章
- Node.js 成為 Web 應用開發最佳選擇的十個原因Node.jsWeb
- 開發人員選擇 PHP 的原因PHP
- 如何選擇小程式軟體開發公司
- 軟體開發專案失敗的3個原因
- 如何成為更好的軟體開發人員
- 選擇軟體開發平臺,“快速開發”是關鍵
- 智慧金融軟體開發前景,怎麼選擇公司
- 軟體開發工程師常用的工具軟體工程師
- NEC選擇Ixia的Linux軟體開發工具包Linux
- 短影片軟體系統開發:選擇開源原始碼原始碼
- 企業使用者選擇Java多於.NET的 5個原因Java
- 8 種基本軟體開發模型:選擇哪一種?模型
- 網路安全和軟體開發學哪個好?0基礎如何選擇?
- 企業為什麼要選擇物件儲存?原因有5點!物件
- 成為軟體高手的幾個忌諱
- 開源軟體將吞噬世界的10個原因
- 寒假小軟體開發記錄03--選擇圖片
- 選擇郵件營銷軟體的N個技巧
- 為何我選擇了iOS開發?iOS
- 軟體測試開發工程師的發展工程師
- 學機器學習要選擇 Python 的13個原因機器學習Python
- 如何選擇防毒軟體?防毒
- 一個 SAP 開發工程師的成長史工程師
- 直播平臺軟體開發,Android 10 拍照和相簿選擇Android
- Evans:IoT、機器學習技術與人工智慧將成為app開發的首要選擇機器學習人工智慧APP
- 如何為專案選擇合適的專案管理軟體專案管理
- 為企業選擇合適的客戶服務軟體
- 何為軟體開發的難?
- 直播軟體app開發,vant 時間選擇控制元件修訂為只顯示年份APP控制元件
- 選擇WEB前端開發,如何才能不成為一個碼農Web前端
- 軟體測試選擇題
- 對軟體開發有利的5個敏捷程式設計方法敏捷程式設計
- 低程式碼開發平臺會成為未來軟體開發的主流模式嗎模式
- 邊緣計算軟體的選擇
- 選擇低程式碼應用程式開發框架的5個關鍵標準框架
- 我為什麼選擇成為獨立開發者
- 想要成為軟體開發中的王者,需要明白的 21 條準則
- 成為優秀前端開發工程師的進階之道前端工程師