上週我收到三位halmstad大學學生的電子郵件,他們正在做乙個為期三月的專案,內容是關於程式設計師在工作中追求的是什麼,以及企業如何吸引有才華的程式設計師。下面是我對他們問題的答案,按重要程度排序。顯然人們會有不同的偏好,所以我很有興趣聽到你們贊同哪些,反對哪些,重要性的評判,以及你們認為遺漏了的要點。
1. 做軟體產品。我希望我參與編寫的程式成為公司的主要業務。這就排除了it維護工作,因為這種工作只是間接 地支援了真正的業務(不管它是什麼)。我也希望參與系統核心部分的工作,越重要的越好。如果我做的東西出錯了,它應該馬上成為乙個緊急問題。最後,我不願 意參與僅僅是配置、應用或整合其他公司的軟體 — 我希望自己來實現關鍵性的功能。
2. 優秀的同事。和對軟體開發充滿激情的聰明程式設計師一起工作是催人奮進的。我一次又一次地看到和同事一起談論一些問題或設計是如何產生比我們任何乙個人自己悶頭想出來更好的思路的。這種合作方式不光是產生更好的**,過程本身就是非常令人享受的。
你怎麼知道某人是不是乙個優秀程式設計師呢?乙個特別好的特徵就是看他們是否持續學習和提高他們的技能,例如通過讀書、看部落格、參加培訓課程、以及參加 技術大會。這倒也不是乙個必要條件,我就曾經和很多不幹這些事的很棒的開發者共事。最後,優秀的開發者會吸引其他的優秀開發者,因為以上原因。如果乙個企 業有很多優秀的開發者,它就更容易招到更多的優秀開發者。
3. 挑戰難題。程式設計師通過**解決問題。開發的產品起碼在某些角度需要聰明的思路,比如低延遲、大量併發請 求、或有限的硬體資源。不過,很多軟體產品都是由常規**組成,沒有什麼難做的部分。所以你也不能只是盼著做「困難問題」而避開其他的所有需求。而且,組 織好那些看起來很無聊的**,讓它們容易理解和維護,這本身也是乙個巨大的挑戰。
4. 很酷的技術。這主要是關於使用有趣的程式語言(例 如clojure、 erlang 或者 go),但也包括框架和應用(例如hadoop 或 cassandra)。這可能是某些公司有問題的地方。如果它們的應用是用某個語言(比如c++)寫的,它就不會改了。所以如果你想改用一些新的語言,你 可能需要換個工作。例如,如果你在斯德哥爾摩想用erlang,你可以給klarna 或 campanja公司投個簡歷試試。
5. 使用者。編碼的樂趣之一是做出一些對別人有用的東西。做了東西卻沒人用就無聊了。要讓使用者(越多越好)關注你開發的努力並且給予有價值的反饋。唯一例外的可能是創業的時候,但是之後就要把吸引盡可能多的使用者作為最優先的事情。
6. 不錯的薪水。擁有大量優秀開發者的公司懂得優秀人才的價值。因為優秀和一般程式設計師之間的差別是巨大的,所 以報酬向優秀開發者傾斜在經濟上是有道理的 — 其實在生產效率上的差別遠大於薪酬上的差別。反過來說,那些不捨得給程式設計師較好薪水的公司往往把程式設計師看作是可以隨意更換的「資源」。那麼這些公司在其他 方面的表現恐怕也是你看不上的,不僅僅是低薪水。
7. 很好的工具。這個因素的重要性幾乎是不言自明的。一台快速的計算機和幾個顯示器可以加快開發過程 — 誰會反對這一點呢?(好吧,那些光看成本不看效率的禿頭老闆可能會反對)
8. 一周工作40小時。如果你總是要加班完成任務,肯定是你工作的單位有一些問題。而且,長時間工作也不等於有效率。
9. 最少的官僚主義。對於開發過程來說,或多或少會有敏捷開發方法的影子,看起來大家都採用了這種思路。根據我的體會,在大公司裡日常管理的那些瑣事基本上都是躲不開的問題。
11. 離家近。顯然這不容易強求,但是能不用每天花幾個小時在路上多好啊。
如果你是諮詢顧問(而不是程式設計師),這個列表上某些項可能會不一樣。我總是願意在產品公司工作,主要因為我喜歡深入了解系統,看著它隨時間如何演 變。所以我沒有作為諮詢顧問的第一手工作經驗,不過我覺得是這樣的:作為乙個諮詢顧問,你更容易接觸到很酷的新技術,因為你有機會和很多不同的客戶一起工 作。但是,即使你有很棒的同事,你可能也不會每天和他們在一起工作,因為你們會被派到不同的客戶那裡去。
這就是我在單位裡最看重的幾個因素,按重要程度排序。在現實生活中總會打一些折扣,但越是列在前面的因素,我就越不願意給它們打折扣。你看重的因素有哪些呢?
程式設計師的幸福是什麼
程式設計師的幸福是什麼?程式設計師的幸福是天馬行空的思維 無所顧忌的表達 程式設計師的幸福是能夠專心的做一件事 專心的寫一篇文件 專心的寫一段 程式設計師的幸福是不僅能夠自己天天進步,而且也讓周圍的同事 朋友一起進步 程式設計師的幸福是不僅實現了使用者的需求,而且得到了使用者的誇獎 比他想要的做得更...
程式設計師的「素質」是什麼?
在csdn看到乙個很有趣的帖子 裡面說同乙個功能,中 日兩國程式設計師寫出的 天差地別 japan dim griditemindex as integer comment dim currentpageindex as integer comment dim pagesize as integer...
程式設計師的悲哀是什麼?
最大的悲哀是 聽誰的都得死。1 在學校,你聽信別人,覺得這行好找工作。於是考試混過,忙家教忙談女朋友 結局 臨畢業企業不要你,因為你什麼都不會。畢業等於失業。死。2 在學校,你總算把技術學進去了,得了個好offer。結局 你喜滋滋的996 很快,你的技術落後了,你的精力不行了,你的身體被熬壞了。死。...