如何知道自己是否適合做軟體開發?
謝邀。大致說說我的觀點吧。這個問題,要區分開「適合」與「喜歡」。喜歡不喜歡,是自己感覺的。
簡單地問一句:如果這行的工資很低,你還願意幹嗎?
毫不猶豫地回答「是」的,那90%以上是真喜歡啦,是其他回答,則基本上可以排除「真喜歡」這種情況。適合不適合,則是需要理智分析的。一般來說,只要你智商中等,年紀不大(低於30歲吧),具備相應的知識基礎(比如擁有高中以上學歷),肯下功夫,就能勝任軟體開發這個行當的很多工作。如果具有大本及以上的知識基礎與基本素質,90%以上的工作都可以干,再加上注意勤學苦練,多學多思,完全可以成為一名優秀的職業軟體開發者。上述情況都可以說是你是「適合」干這行的。
還剩下10%那些具有很高技能要求、要求豐富知識儲備和開發經驗的工作,那確實只有那些腦瓜子極好使的少數人才具備勝任的能力,就不要強求了。這批人通常都是歸屬於本行業一流層次的人物了,總是佔少數的。找工作有點類似談戀愛,你愛的,和你最後選擇成立家庭的,未必是同一個人。如果兩者合二為一,My God,你實在是幸運!這個問題按照我的理解我想你應該不是在問,自己能不能學會編程,而是什麼樣的人,什麼樣的年齡,才適合做編程,做了編程以後的發展規劃是什麼樣的。
首先我想說,我見證過好多,高中生或者高中沒畢業,學編程的,年齡在20歲左右,學的也很快,不過我只能說是少數,因為這種人在社會上吃了不少苦,知道掙錢不易,同時自己又特別聰明,再加上自己努力,那學習編程也是沒有問題的。不過我想說學歷確實會影響職業發展,高中以下學歷一般在小公司比較多。再說一下年齡,年齡最好28歲之前,如果年齡再大的話,可以試想一下,一般的軟體從業者年齡是23歲左右,五年之後一般就是項目經理了,你28歲過去面試,一個25歲左右的人面試你,並且以後管理你,是不覺得很彆扭呢,同時管理者也覺得很彆扭,所以他就乾脆不會招你進公司了。
再說一下以後的職業發展,初期到公司,做初級工程師,然後中級,高級,技術主管,技術總監,架構師,諮詢師。這是做的好的一個路線,做到架構師級別基本可以年薪過50萬了。但是也總會有人一直是中級工程師,可是是時間原因,沒時間學習;可能是智力問題,沒能力學會;可能是懶惰,根本就不想往高處學習;等等原因吧最後說一下怎麼快速入門,若在校大學生,可以自己在線學習,比如騰訊課堂,網易,百度傳課,等,也可以下載點視頻。如果畢業了呢,建議找個靠譜的機構跟著老師,還有班裡的小夥伴,一起體驗那種為夢想奮鬥,拼搏的氛圍還是不錯的體驗的。最後祝你能順利度過困惑和難關!工作有時候真的像談戀愛,只有高度參與、用心經營、不斷調整磨合才能體味各種滋味,才有合適不合適。適不適合做軟體,沒有做過很難揣測,但可以問問「過來人」的意見,但說實話99%的建議你也吸收不了。你倒是可以看看有過幾年經驗的人的生活狀態、個人發展是不是你期望的幾年後的自己的狀態,來簡單判斷。
無他,看興趣。
確認你真的要邁入軟體開發領域
軟體開發是一項純智力活動(現在人們都意識到長時間超負荷的連續寫程序並不會提高軟體生產率,反而會對軟體品質造成很大負面影響,所以儘管很多程序員仍然長時間加班,但這種現象正在逐步減少並最終會消失,所以體力要求並不會比其他行業高),如果你不是一個智力高於平均水平的人,說實話,軟體開發並不適合你,你基本不可能在軟體開發領域取得很高的成就和地位,而且不久就會因為年齡的增長而被淘汰。
如果你以那些開發出共享軟體的軟體英雄和著名黑客為榜樣,立志也要成為他們的一員,像武俠小說中的大俠一樣仗劍江湖。我要先給你潑上大大一盆冷水,把你從幻想拉到現實中來。
首先,現在的軟體其複雜度和規模都遠遠超過以前,想一個人獨力完成一個規模稍大的軟體,基本沒有可能(雖然還是有些特例,but trust me,那些僅僅是特例,請不要把自己想像成獨一無二的超人、幸運兒);
其次,無論是軟體英雄還是仗劍江湖的頂尖黑客,他們的軟體開發功底和智力都遠遠超過軟體行業從業者的平均水平,沒有多年的積累和堅韌超常人的毅力,是不可能,換句話說,想成為他們的一員,可以,但請首先成為一個合格的軟體開發人員。
如果你是因為傳說中程序員的所謂「高薪」,對自己現在從事的工作不滿意,而萌生轉行的念頭,我勸你還是再慎重考慮一下。程序員的待遇一般來說,是要比平均水平高一些,但遠遠談不上高薪,而且以現在程序員的工作量來算,其實同樣的付出,程序員所得到的能和平均水平看齊就不錯了,程序員的競爭和淘汰也是異常殘酷的。
技術的更新速度更是其他行業所罕見,每個程序員都要不停的跑步跟上,不使自己落伍,所以在這個層面上來說,沒有誰可以停下來休息,唯一能夠積累下來的就是你的經驗,但經驗中能夠為你的競爭力增添籌碼的並不多。
說了這麼多,並不是我故意貶低,而是希望告訴你我所知道的軟體開發行業的真實情況,基於此請再慎重考慮你是不是真的要邁入軟體開發領域。
檢驗一下你是否適合當個程序員
在我看來,要做一個合格的程序員,你需要具備下面幾個條件:
1. 強烈的好奇心和求知慾
2. 追求完美的精神
3. 良好的邏輯分析能力
其他方面的條件幾乎所有類似的帖子都有提及:如果你不是準備單打獨鬥,那麼團隊合作能力必不可少;英語我就懶得說了,沒有基本的閱讀英文資料的能力,我勸你還是打消做個程序員的想法,沒有為什麼;數學能力也是必不可少的,如果不是做演算法,高中水平的數學能力就足夠了,但一定要成績很好才行。
看能不能修好女神的電腦
推薦閱讀:
※大齡門外漢如何進入軟體開發行業?
※在目前的互聯網環境及要求下,後端開發工程師變為全端工程師更容易些,還是變成前端工程師更容易些?
※為什麼較多知乎用戶認為編程能使自己愈加富裕?
TAG:軟體開發 |