程序員的內心需求
本文由IT江湖-宋立君翻譯自:henrikwarne
上周我從三個哈爾姆斯塔德大學的學生那里收到一封電子郵件是關于他們做了一個三個月的項目名字叫程序員想要什么,以及企業如何吸引有才華的程序員。 這里是我自己按照重要性對于問題的幾條答案。很明顯,人有不同的觀點,所以聽你同意或不同意哪一條,或你認為落下的,下面的這些會讓你感興趣的。
該項目是公司重要產品
我喜歡我工作的項目是公司的主要業務。當然不包括在信息技術領域工作的人們,因為他們的工作只適合接待間接業務(不管是什么業務)。我也喜歡工作系 統的中央部分,越重要越好。如果我的工作部部分停止工作,應該立即成為公司的緊急問題。總之,我不想只是其他公司的配置,適應者和粘合劑——我自己想增加 大量的功能。
聰明的同事
與聰明的并且充滿熱情的同事們在一起搞軟件開發是一件特別刺激的事,我注意到一次又一次,我與同事一起討論一個問題或一個設計的解決方案,都比自己要好。這種方式不僅能獲得更好的解決方案,這個過程本身也很愉快。
你怎么知道某人是否是一個好的程序員?一個很明顯的標志就是,他們是否在不斷的學習和提高自己的技能,例如通過閱讀書籍和博客,上有關的課,或開一 個類似的會議。盡管這樣,這并不是一個必要的條件,我曾經與很多非常好的開發人員的工作,他們也不曾這樣選擇。總之,好的開發人員往往會因為以上各種原因 吸引其他開發人員。事實上,一個公司有很多偉大的開發人員使招募更多人才變得更容易。
挑戰性的問題
程序員喜歡用代碼來解決問題。某些方面的產品起碼應該有些要求比如需要聰明的解決方案,要求減少延遲,或有限的硬件資源,等等許多并發請求。然而, 很多產品軟件是常規代碼沒有任何特別困難的部分。所以你不要指望只工作中遇到“難題”,而避開一切其他的。此外,組織無聊的代碼,使它變成很容易理解和維 護的代碼,這是一個很大的挑戰。
很爽的技術。這主要是關于使用有趣的編程語言(例如Clojure,Erlang或者Go),但也包括框架和應用 程序(例如Hadoop或Cassandra)。這是一個公司可能有問題的地方。如果他們的應用程序是用某種語言(如c++),它不會改變。所以,如果你 想要改變使用一些新的語言,那么你需要改變工作。例如,如果您希望使用在斯德哥爾摩Erlang,你可以試試Klarna或Campanja。
用戶。編碼的樂趣之一就是創造對他人有用的東西。制造沒有人使用東西是一件很無聊的事情。讓用戶(越多越好)在工作中使用并給出有價值的反饋。唯一的意外是剛開始,然后必須讓用戶盡
快達到壓倒一切的優先級。
豐厚的的薪水
公司有很多優秀的開發人員知道偉大的人民勞動的價值。原因是優秀的和普通程序員之間的差異很大,具有的經濟價值超過了開發價值——生產力的變化遠遠 大于工資的變化。另一方面,公司不支付他們的程序員往往是公司認為程序員是可互換的“資源”。這些都是公司想避免因其他原因,不僅僅是工資太低。
好工具。這幾乎是不言而喻的。高速的計算機和一些監控設備——對,是誰反對?(好吧,禿頂老板干涉,只看到成本,而不是利益,這樣的做法將會被反對)。
每周40小時
如果你經常需要加班的話,一些組織安排肯定是錯誤的。此外,長時間工作不等同于富有成效。
最小的官僚機構。對于開發過程,這是或多或少固定與敏捷開發方法,這似乎普遍采用。我的經驗,一般行政超載問題主要是在規模較大的公司。
在家工作。能夠很方便有時在家工作,但它在我的列表中不放在重要的位置。我喜歡在辦公室和與人交流。我使用視頻會議和遠程辦公室工作,聊天和電子郵件,但它并沒不如在辦公室方便,更容易有收獲。
交通方便,時間不長
顯然很難影響,但如果每天不花幾個小時在交通上,的確很棒。