敲黑板:
1:文字較多,用PC版看不上眼睛。
2:時間不夠收藏起來慢慢看。
一 可能我知道的,是您關心的我是04年讀的計算機專業08年本科畢業,然後一直從事這個行業至今,數數年份,已經有13年。
從最簡單的寫程式碼,到參與政府軟體開發專案、到參與面向市場的軟體開發、再到一箇中等規模公司的CTO,最後出來創業,一路爬了很多坑。
這13年的開發技術經驗雖然不敢和BAT(百度、阿里、騰訊)這些大廠的CTO比,但也許可以給想學習程式設計、想投身於這個行業、想使用程式設計技術改進生產效率的小夥伴提供一些有用的經驗教訓、學習方法、以及思考問題的方式等。
所以我想慢慢來梳理我瞭解的知識,然後透過自媒體的方式和大家分享。
對於一個從無到有的小白來說,想要跨入軟體行業這個領域,一定會關心各種各樣的問題。在這裡我整理了一些關注度比較高的問題,來聊一聊我的看法。
看,大佬的眼神
二 問題來了問題1: 前途怎麼樣,收入怎麼樣?
前途是指兩個問題,目前的行業薪資情況,未來的發展趨勢。
行業薪資收入情況:
軟體開發這個行業的薪資確實要比大部分行業的薪資要高。相關專業本科畢業從事計算機工作的底薪普遍就高於大部分其他行業的人。若能進入到BAT在做到個不錯的薪資評級,百萬年薪不是夢。
以我在的城市為例(昆明),2018年IOS 開發5年經驗的工程師可以拿到20W的年薪。
行業的發展前景:
10年前我從事軟體開發行業時就有人說這個行業已經處於頂峰,要開始滑坡了。但10年後的今天這行業貌似發展得還不錯,成就了很多人,那未來10年呢?我不敢說它會發展到什麼地步,但能看到的是這個行業依然可以保持現狀。
問題2: 這個行業辛苦嗎?
辛苦,但看看其他行業那些高收入人群,貌似也很辛苦。若你不是富二代(人家的父母也打拼過),那麼大家都需面臨一個現狀。我國收入排前十的行業,都有一個共同特點,要麼需要很努力(不是傻傻的努力),要麼就是高風險。
或者我換一種方式來問這個問題,想要賺錢?你願意為其付出努力和高風險的代價嗎?
問題3:沒有一點基礎,能學嗎?
沒有一點基礎,能學嗎?其實所有從事計算機程式設計這個行業的人,都是從零基礎開始的。沒有誰天生就會寫程式碼的。所以只要下定決心開始行動,然後堅持,剩下要解決的問題就是效率問題。
問題4: 學軟體開發難嗎?
不難。
覺得難,無非就是下面的這些原因之一。
1:被那些抽象的概念或專有名詞嚇到了。
2:沒有找到好的學習路徑,就像騎摩托車一樣(我是摩托車愛好者),一開始就讓你來高速壓彎,翹頭你能吃得消?
3:技能會了,但意識沒跟得上(玩過王者的小夥伴,一定有這種感受)。
4:沒有熬過最難的第一階段。
關於學習方法,學習路徑,意識(軟體設計方法,和過程管理方法),我會在後面和大家分享。
問題5: 入門要多長時間,變成大神要多長時間?
入門要多長時間?
我們要先來了解入門的定義。如果你能用一門程式語言,獨立地解決一個簡單實際問題,這就算是入門了。在正常情況下,每天拿出90分鐘從一個小白到入門需要3個月的時間。
從入門找到一份好的工作,同樣每天拿出90分鐘的時間來學習,需要6個月左右。
變成大神需要多長時間?
我們先來看大神的定義,就是給他一個需求,他能獨立的根據這個需求設計一套完整的解決方案,然後透過程式語言實現出來,完成測試後投放到市場。這個過程有很多細節,比如需求的分析、程式的構架、技術的選型、開發過程的管理、軟體的測試等。這些內容後面會和大家分享交流。
那要從入門達到大神的標準需要多長時間呢?
5~10年。這裡面5-10年的差別主要看行業,比如是做電商行業的 5年足矣(技術套路已成熟),若是做量化交易或者遊戲開發的,可能需要10年,若是做科研的可能需要10年以上。
聰明的小夥伴可能會發現,在前往開發大神的道路上,行業知識的積累,起到了很大的作用。
問題6: 會掉頭髮嗎?
秀髮給我自信
馬化騰、李彥宏他們都是程式設計師出身,但他們並沒有掉頭髮。王石是萬科的創始人,但他掉頭髮。
說簡單點,寫程式碼和掉頭髮無關。
問題7: 是不是很難找物件?
找物件難不難,主要還是看人吧,我見過風趣幽默人見人愛的程式設計師,也見過話題終結者程式設計師。程式設計師給大家一個不好找物件的刻板印象應該是因為他們比較忙,996等。但我覺得找物件這件事情還是看個人魅力、圈子大小和緣分。
問題8 我只是好奇程式設計開發,把它當做業餘愛好,可以嗎?
我從事這個行業越久越覺得程式設計帶給我下面這些好處。
1)讓我做任何事情的時候,思路都很清晰。
2)軟體開發中的一些思考問題的方式能幫助我解決其他生活中的問題。
3)預防頭腦退化。
4)很多人來找你修電腦(建立人際關係的好機會)。
5)需要什麼工具,可以自己開發一個。
最後:
我會慢慢的拿出業餘時間推出免費的基礎程式設計課程,我想把它做得更貼近生活一些,讓任何人都能感受到程式設計帶來的好處,無論是收入上,還是生活趣味上。
程式設計課程會基於Python這門開發語言來講解,因為Python簡單、學習起來舒服、設計領域廣闊。
比如:
下一篇內容,我會帶著小白,體驗一下程式設計的感覺。