程序員編程生涯中常會犯的7個錯誤
時間久了,我發現很多程序員總是犯著相同的錯誤,前仆後繼,卻毫不自知。
下麵就是程序員在他們的軟件開發生涯中最常犯的7個錯誤。
▼沒有明確的目標
心中沒有終點目標,那就隻會隨波逐流。
如果你想在軟件開發的職業生涯上獲得成功,那麼你需要有一個明確的目標。
僅僅隻是對遙遠的未來有一個模煳的想法是不夠的。
相反,你應該有堅實的目標——在某個時間段內的首要目的——明確定義的目標。
我認識許多程序員和所謂的專業人士庸庸碌碌地在同一個崗位上幹了幾十年,是的,你沒聽錯,就是幾十年!
這是一場悲劇,但如果沒有目標,這就是你人生的默認選擇。
請引以為戒,否則下一個悲劇就會是你。
那麼,我們能做些什麼呢?
從今天開始,從現在開始,花一些時間,好好想想你的編程生涯,並決定自己的近期目標。
我的意思是,明確當前的首要目標。
一旦達到這個目標之後,再製定一個新的目標,但是現在,請好好想想,你的編程生涯需要實現什麼目的?
你可以記下來,放到每天都能看到的位置,來提醒自己不斷地朝著目標前進。
▼不投資於非技術和“軟技能”
我認識很多程序員其實真的很擅長於寫代碼。
我也認識很多程序員在算法上確實遠遠優於我。他們理解和思考複雜架構的水平,是我所望塵莫及的。
但你猜怎麼著?
在我的軟件開發職業生涯中,我超越了他們,不僅包括職位職務,還有工資,工作效率,性能等等。
我說出來不是為了炫耀,隻是想要說明軟技能對我們的編程生涯有多重要,而不僅僅是那些大多數程序員重點關注的技術技能。
作為一個軟件開發人員,你肯定知道,你的工作並不僅僅是編寫代碼。
還有其他許多必要的重點技能。
我們得時常與人打交道,所以人際交往能力是必須的。
緊張的時間期限,快速的變化則需要穩定的心理,能夠全神貫注,並懂得自我激勵。
在一個不斷變化的環境中,在一個充斥了各種繁多和意外的環境中,我們要學會如何優先安排,並盡可能地富有成效。
此外我們也不能忽略健康以及經濟因素,如果忽略它們的話也同樣會導致失敗甚至是毀滅。
相關方麵的內容還有很多,我就不一一贅述了,感興趣的話,可以閱讀《Soft Skills: The Software Developer’s Manual》 做深入的了解。
總而言之,不管你做的是哪方麵的工作,軟技能幾乎總是比硬技能、技術技能更重要——所以一定要好好學習這方麵的知識。
▼不參與社區
我做的其中一件讓我的編程生涯受益無窮的事就是,參與社區。
這不但讓我有了歸屬感,不再感覺孤單,還能幫助我提高技能,敢於設定更高的目標。
所以,我強烈建議你加入到編程社區中。
眾人拾柴火焰高,參與社區,是一種積極的成長方式。
如果你發現自己的軟件開發職業生涯停滯不前,那麼加入社區吧,裏麵的一些誌同道合之人會為你提供助你克服困難,衝出困境的種種建議。
成為社區的一份子,還可以讓你獲得關注,增加知名度,這將會大大有利於你的事業發展。
那麼,怎麼加入社區呢?
這很簡單。世界各地都有這一類的團體,你可以簡單地加入一個並參加聚會。
比如說,你可以加入一年一次的,免費的,當地的 Code Camp 活動,那時許多軟件開發人員會聚集到一起分享他們的工作心得。並且通常任何人都可以報名發表他們想要談論的話題。
如果你不喜歡這種聚會方式,也可以加入虛擬社區。
對於初學者來說,社區裏麵提供技術開發交流,也有很多資訊和信息,非常不錯。
你也可以寫博客,這也是參與社區的一種方式。
話說,就是博客讓我在社區眾多程序員中脫穎而出的。
▼不專業
如果你曾經看過我寫的博客,或者讀過我的書,你就會發現我幾乎每次都會提到這個話題,因為它真的非常重要。
專業化。
為自己選定一個方向,然後專心致誌地朝著這個方向發展。
但這並不意味著你無需具備廣泛的知識基礎——我非常熱衷於通曉多門編程語言——我的意思是,你應該選擇某個區域,然後孜孜不倦一心一意於挖掘更深層次的內容。
成為某種形式的專業人士是非常重要的,尤其是職業生涯的早期。
專業人士的需求高,所以他們拿到的薪資也高,並且通常而言,他們還能夠更快地塑造起威望來。
另外,如果你的老板知道你在軟件開發領域和技術上麵鑽研得很深,肯定會對此非常開心。
你應該成為小池塘中的大魚,而不是大池塘中的小魚。
或許最終你會因為個頭太大而不再適合這個池塘——那個時候你可以大膽潛入到更深的水域——但是,以一個專業人士的身份開啟你的軟件開發生涯,可以在這一行中為你自己樹立個人品牌和聲譽。(關於這一點,下麵我會詳細說明。)
最後,不要擔心自己專業化了之後會被對號入座——這種事很少發生。
並且,你也不需要真的研究得太深。話說,這麼多年,我也沒碰到有誰是太過於專業化的。
▼不投資於個人品牌
生活中的許多事情來來去去,猶如過往雲煙。你可能會換工作,又或許甚至要換配偶;突然一夜暴富,也可能窮困潦倒;可能身體很健康,但也有可能會發胖——但無論生活中發生什麼,有一樣東西會永遠與你同在……
你的名字。
所以,既然你的名字將貫穿你的一生,為什麼不在這上麵花些精力呢?
你的名字,或者說你的個人品牌,是非常寶貴的財富,也是許多軟件開發人員沒有意識到的財富。
你的名字,或者說你的個人品牌,是你找工作、升職、挖掘潛在客戶、甚至是自己創業的強大工具。
哪怕你的名字從字麵上看並不與眾不同,但隻要你有良好的知名度和聲譽,那麼有時候搞定諸多麻煩隻是舉手之勞而已。
我認識很多的軟件開發人員因為已經具備了堅實的個人品牌,所以再也不必擔心就業問題。因為無論發生什麼事,他們都有把握找到另一份工作,因為他們的聲譽眾所周知。
我們都聽說過推銷產品和服務,但你可曾想過推銷自己?
想在軟件開發行業打造個人品牌,我的建議是寫博客,選擇一個特定的領域或專業,然後做到讓你的名字如雷貫耳就行了。
最好辦法之一就是寫一些對其他人有用的內容。
就拿博客舉例。我寫的博客可以在互聯網上構建了我的品牌和聲譽。如果你覺得這篇文章,甚至是我的網站有價值,那麼你可能會分享。也可能會為此頁添加書簽,或者訂閱相關郵件,這樣你就不會錯過任何好的資訊。
這隻是打造個人品牌的方式之一。
你還可以創建 YouTube 視頻,發表自己的播客,寫文章寫書,在活動中發言。
但這並不意味著你必須做上述所有這些事情,這隻是我認為不錯的一些點子而已。
▼不搞點業餘項目
我們手頭應該總是有個業務項目在做。
業餘項目有很多你可能不知道的有益之處。
首先,業餘項目是改善技能的有效方式。並且,這遠遠比你朝九晚五的工作能更快地提升你的成長速度。
開發業餘項目也是學習新技能新技術的好方法,有助於你尋找新工作。常常有很多程序員抱怨說現在千篇一律的工作沒法讓他們學習新技術,使得他們跟不上市場的腳步。聽到這樣的話,我總是勸他們不妨試著用心儀的新技術去開發業餘項目,這絕對是個學習相關技能的好辦法。
而且,業餘項目還可以讓你賺點外快。
可能你一開始不會想著用業餘項目賺錢,但是業餘項目的確是能讓你獲取額外的收入。
我大概在4年前開始開發 Android 和 iOS app 作為我的業餘項目,並且至今它們依然在為我創造財富。
我也認識不少軟件開發人員最終將業餘項目當作了他們的全職工作。
開發業務項目其實很有趣。
當你工作累了厭了,寫一會自己喜歡的業餘項目能很好地消除疲勞和壓力。並且業餘項目也是一個很好的出路,也許哪一天讓你賺了大錢呢。
▼沒有自我教育的規劃
每次我麵試軟件開發人員時,問的第一個問題往往是關於他們自我教育和自我完善的規劃。
有沒有去做點什麼以便讓自己成長得更為優秀呢?
我經常會問他們用什麼措施來跟上總是在不斷變化的領域。
我經常會問他們最近讀了什麼書,以及哪些是他們認為值得推薦給所有軟件開發人員閱讀的好書。
我想從他們的答案中知道他們是否有一個用於自我教育,用於不斷成長的確切規劃。我之所以這麼做是因為我知道一個致力於不斷自我完善的人不僅會成就自己,也能帶動周圍的人一起朝著成功前行。
然而,很可惜的是,很多程序員都沒有任何形式的自我教育規劃。
如果你還沒有用於學習和提升自我技能的規劃,那麼是時候為自己製定一個了。
想聽聽我推薦的一個簡單規劃嗎?
保證每個月閱讀一本技術或職業發展類的書籍。
一年下來你就能累計閱讀 12 本。
我個人的話,每天至少投入 45 分鍾到閱讀上。
請記住,千裏之行始於足下。哪怕一天 30 分鍾,持續一兩年之後,就能給你帶來巨大的改變。
行動吧,騷年
希望這篇文章列舉的這7個錯誤能警示各位,但是,如果你不采取任何行動,那麼即使是靈丹妙藥,也不會有一絲作用。
所以,閱讀完了之後,不要拋之腦後,請從今天就開始行動。
先將定為至少改正自己已知的一個錯誤。
歡迎留下評論以及分享你的成果。
真正的勇士,敢於直麵自己的不足之處,然後積極改正它們。
本文作者:佚名
來源:51CTO
最後更新:2017-11-02 15:05:07