1. 程式人生 > >牛逼程式猿需要嘗試的10種姿勢

牛逼程式猿需要嘗試的10種姿勢

很多開發者會認為要想成為一個牛逼程式設計師所需要做的事情一定都是與程式設計技能相關的,不過這種想法卻是完全錯誤的!優秀的程式碼是很好,但要想得到更好的工作,獲得更高的報酬則需要讓更多的人知道你是誰。換句話說,你需要做的還有你想不到的,成為牛逼程式設計師的10個姿勢如下:

1. 撰寫自己的文章

搭一個部落格(根據中國國情建議開個微信公眾號),一個月寫幾篇文章。進行真正的研究,確保你所寫的不是那種非常簡單的東西。更嚴肅地說,就是要學會怎麼寫文章。根據學校的英語老師教你的方式來做:建立一個大綱、敘述、檢查語法和拼音。接下來,簡化剛才所寫的東西,要做到讓讀你文章的人快速過一遍就能迅速掌握文章的要點。現在的網際網路可是要做到精益求精才行。

2. 開源

不要相信那些關於開源的謊話。你們當中的那些年輕人可能已經記不起來過去有的開發者會失業的那種情況了,不過即便在經濟不景氣的時候,我建立的開源專案的所有開發者依然不會被裁員。請確保你所開發的開原始碼能夠反映出你的工作。我希望使用最簡單的解決方案來解決難題,不過我面試了很多開發者,他們都將簡單的問題給搞複雜了。無論你相信與否,這麼做是有市場的,不過請確保你所編寫的程式碼能夠反映出你所在的市場。

3. 不是6個月,更不是10年

不要每6個月就換一次工作。嚴肅地說,一個公司的很多人都會出現離職的情況,同時也會有新人加入進來。換句話說,不要在同一個地方,做相同的事情達到10年以上,否則你會與市場絕緣並形成慣性的。舉個例子,假如你在IBM工作,那麼要想保持自身的價值,你就不能僅僅滿足於按照IBM的方式,使用IBM的技術棧來編寫程式碼。我從來沒有僱傭過在IBM等類似的公司中工作過2年以上的人。他們給我的印象常常是面試中表現很不錯,不過在實際的程式設計中卻敗下陣來。

4. 放眼新技術,著眼實際情況

尤其是一些年輕的開發者們都喜歡使用新技術。Ruby是我最喜歡的一種程式語言,不過平均來說,Ruby帶給我的回報是不如Java的,Ruby的市場也比較小。事實也並非總是如此,Scala看起來勢頭很猛,不過不要忘記它的市場佔有率,其實還是很小的。另一方面,也不要長久以來一直使用同樣的技術,比如那些COBOL或是PowerBuilder開發者們。

5. 編寫自己的文件

當我參與開發一個專案時,經常會被拉出去參加會議,原因就是他們看了我編寫的文件或是演示,而且能夠理解,這種情況出現太多次了。我總是一張總覽圖開始,後面則是對其各種細節的闡述。問題是:對於一個非常忙碌的人來說該知道哪些內容呢?大多數經理們想要知道什麼?請按照這個思路編寫文件。

6. 簡潔是靈魂

對於管理來說,那些知道自己在說什麼的人常常會給出更簡潔的答案。如果回答很長且很複雜,那就意味著回答的人並不知道答案是什麼。此外,聲調通常與主題的重要性成反比。如果有壞訊息來了,那麼大家走進辦公室時就會輕手輕腳,關上門,然後竊竊私語。請保證你知道自己說的是什麼,知道如何總結,如何描述細節,不過請不要事無鉅細地進行方方面面的介紹。請確保你的團隊成員都經過了深思熟慮,然後清晰地闡明你的哪些觀點要好於其他人的。

7. 當眾發言

知道如何做演講,學習如何在公眾場合發言。研究一個主題,然後讓自己成為這個主題的專家。如果能有一些幽默感的話,在公眾場合的演講效果就會更佳。要想掌握這種技能,你需要花費很多的時間與精力,還要忍受住別人的嘲笑,不過對於工程師來說,如果能用英語向管理者解釋清楚問題,同時能就某個主題做出專業的演講,那麼他的薪資一般來說要比那些不具備這種能力的開發者高一些。

8. 現實一些

你很喜歡Erlang,不過Erlang的市場卻沒有那麼大。你應該瞭解多種語言,還應該知道那些“新”的話題,不過請不要說出這種不成熟的話“如果不是Erlang,那我就不打算寫程式碼了”,除非你真正理解了業務問題。這麼做也許會讓你成為一個狹窄領域的專家,不過即便這樣也是有代價的,如果你所掌握的技能過時了,結果就不好玩了。當然了,NoSQL更適合於你自己的一些小專案,不過公司卻不會在那種一次性的系統中對其進行投入,這種情況下RDBMS就很適合了。

9. 解決疑難問題,瞭解相關工具

花點時間學些大部分人都不瞭解的工具。你知道哪些很少有人知道/使用/理解的工具,讓你比周圍的人更具效率呢?比如說,Aspect4j並不適合於每一個人,不過它卻適合我。我編寫了一些.class檔案操作,讓其在Tomcat下正常執行,從而替換掉WebSphere,我修復了私有軟體的記憶體洩漏問題。這每一次經歷都讓我超過了其他人,因為我使用了其他人很少知道的工具來解決重要的難題,而其他人則還在等待著廠商的解決方案。當然還有其他的,不過這些簡單的工具卻能夠解決複雜的問題,讓你超越其他開發者。

10. 保持謙卑

很少有開發者具備謙卑這種特質。有時,這意味著你需要做一些很具體的工作。極客的聲望來去匆匆,不過請記住,是你的行動才讓你收穫這種聲望的。下一週可能一切都煙消雲散了。換句話說,“你並沒有什麼特殊的”。