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