java程序員需要具備哪些能力才能找到一份月薪2W+的工作
現在程序員是比較緊俏的一個崗位,其實能夠寫代碼的人很多,但是為什么程序員還那么缺呢? 除了需求大以外,還有一個原因就是,真正合格的程序員確實比較少。 想要成為一個合格的程序員,我們需要滿足以下幾點要求: 一、細心 對于很多程序員來說,寫出來的代碼可能這里因為不小心漏了什么,那里因為不小心沒有測試到一個大Bug,因為馬虎而出現的問題不在少數。 所以,細心,能夠很有效的減少開發周期,為整個項目的推進起到良性的作用。 二、膽大 很多時候,我們明明知道業務邏輯上有問題,可能因為怕得罪人,可能因為覺得這個問題不應該由自己來提出,就默不做聲。 其實,無論在任何時候,只要你覺得有問題,就應該直接講問題指出,然后大家在討論,及時整個場面可能比較激烈,但是如果你認為自己是對的,且對方并沒有有效的理由來說服你的話,那你就應該大膽的堅持自己的意見。當然,如果你覺得自己的邏輯確實也是有缺陷的,也應該大膽的承認問題,不要耍賴皮。 三、臉皮厚 臉皮薄是程序員的特性,程序員遇到問題時就自己去百度、谷歌找答案,花了很長時間,也沒有找到問題的原因。 如果你是一個人在家里做實驗,沒有人能給你提供幫助,你這樣做當然是沒啥問題的,但是如果你是在公司里,項目組里,你的周圍都是人,求助才是你的第一選擇,別不要意思,誰還不會遇到問題啊,可能你遇到的問題,在別人眼里只是一個小case呢,你花了4小時,別人花了4分鐘,就效率來說,你4分鐘就學習到了4小時的經驗,并且解決了問題,何樂而不為呢。 當然,上面的都是對程序員的軟性要求,即使你做不到,你也可以成為程序員,只是水平高低。 下面就是一些硬性的指標了: 四、思維邏輯 對于一個程序員來說,你的思維邏輯有些地方其實需要異于常人的。 最經典的笑話就是:女朋友讓程序員買包子,如果遇到賣西瓜的,就買一個。 結果就是,程序員買了一個包子回家。 為什么?因為他遇到了賣西瓜的。 這個雖然是一個笑話,但是在代碼層面,業務流程圖上,確實可能需要這樣來理解的。 所以,一個程序員首先需要培養屬于程序員自身的思維邏輯,不然,你對于設計文檔的理解就可能有問題。 五、編碼能力 這個肯定是一個程序員安身立命的根本技能,你需要熟練的運用一種或多種語言,并且能夠用它寫出所需要的內容。 A和B聊天, A問B:“你都會哪些語言?” B說:“我會中文、英文、日文?!?/font> 那B是普通人; B說:“我會Java,PHP,C#?!?/font> 那B才是程序員。 六、文檔能力 不會寫文檔的程序員不是一個好程序員。 雖然一個程序員寫的最多的是代碼,且幾乎很少有程序員是心甘情愿的寫文檔,但是一個程序員必須具備一定的文檔能力,當然,這個文檔不是說就是Word。 例如,我們現在要做一個功能模塊的分析設計,你至少拿出個幾頁的設計稿,給大家講解一下,這樣才更容易讓人理解,干巴巴的只是說,其他人很難理解你的內容。 如果你做的工作現在需要分派給其他人,你有了新的安排,你Handover你的工作的時候,如果你有良好的文檔習慣,那接手工作的人能夠很容易的上手,不然,他看不懂文檔,只有來問你。 七、編碼習慣 什么是編碼習慣?簡單點說就是,注釋,命名規范,編碼規范 為什么我們必須寫注釋?因為一個月以后,你可能看不懂你的代碼了。 為什么要遵守命名規范?因為一個月以后,你可能看不懂你的代碼了。 為什么要遵守編碼規范?因為一個月以后,你可能看不懂你的代碼了。 你都看不懂你的代碼了,其他人還能看懂?更不可能了。 所以,一定要習慣寫注釋,按照命名規范和編碼規范來嚴格完成。 八、協作能力 研發并不是一個人的戰斗,而是一群人的戰爭。一定要分工配合,不要只是顧自己。不然團隊里的其他人被干掉了,你也活不長。 事不關己的心態是不可取的。 九、學習能力 這個可以說是決定程序員未來的能力,我見過很多30多歲的程序員,除了CRUD,其他的幾乎什么都不懂,他難道10年時間什么都沒有學嗎?不,他學了,只是他學習的只是業務方面的知識,對于技術方面的知識,僅僅學習他需要的。 這樣,他的能力就被局限在了一個公司的格局上,如果是大公司,他可能懂得多一點,如果是小公司,他可能就只會CRUD了。
|