⑴ 做程序員的話 ,能達到中產階級嗎
當然可以了,程序員可以說是是典型中產階級職業。
首先,他們收入高,是城鎮就業人口中行業平均薪資最高的群體;
其次,他們的平均教育程度在本科以上;
最後,他們還很講究生活品質。
,程序員群體在輕奢品(比如歐米茄等名表),以及像沃爾沃、賓士這種舒適、安全、高品質汽車品牌的消費比例更高,這些都是典型的「中產LOGO」。
其實,程序員就是典型的有大城市特權的職業。為什麼這么說?接下來我們從工作機會、薪酬和流動性這三個角度來分析。
工作機會
對於中國的程序員們來說,現在活躍在全球各大交易所的278家IT服務上市公司就是這個行業招聘最大的蓄水池。那麼這些公司都在哪呢?
我們將這些公司在地理上的分布作了個分析:
我們看到,中國僅僅有13個城市擁有3家以上的IT服務上市公司,一個北京就占據了行業的半壁江山。
北京的IT服務上市公司多達101家,包括網路、網易、愛奇藝、微博、58同城、汽車之家、陌陌、新浪、搜狗、新氧、易車、世紀互聯,等等。
第二梯隊是上海、深圳和杭州,這三個城市的IT服務上市公司的數目分別是37、26、20。注意,上海雖然數量稍微比深圳和杭州多一些,但一旦考慮到企業質量,杭州和深圳就馬上反超了,所以依然屬於第二梯隊。
再接下來是成都、廣州、南京等5個城市組成的第三梯隊,每個城市有大約5~10家IT服務上市公司。
換句話說,一線和次一線,有著程序員難以割捨的巨大的工作機會。其實全球來看都是這樣:美國活躍的318家IT服務公司,35%(113家)集中在加州的聖荷西和舊金山,英國113家IT服務公司,幾乎一半(49家)都在倫敦。
薪酬
2019年上半年程序員薪資的完整城市圖譜——一個清晰的趨勢就是,人口集聚程度越高的城市,程序員的學歷和工作經驗的溢價越高。
比如說,北京本科學歷程序員的月工資平均為1.8萬元,而中專學歷就下降到8000元,而在濰坊、濟寧這些城市,本科與中專學歷程序員的月平均工資的差異僅為1000元。
再比如說,北京和杭州,5~7年工作經驗的程序員與有1年工作經驗的程序員相比,月平均工資差異最少1萬元,而在綿陽、哈爾濱和海口這些城市,這個差距只有1000元。
再比如說,一個本科剛畢業的最普通的程序員,在人口規模1000萬以上的大城市工作,跟在500萬以下的小城市工作,起薪能差6000元;10年之後,在大城市工作的平均年薪能達到45萬,而在小城市只有13萬。而且大城市機會多,稍微冒尖點就能達到百萬級。
流動性
市場大,工作機會多,自然意味著流動性大。而且,一個深圳或北京的程序員,要回長沙、成都,是很好找工作的,但反過來就沒有那麼容易了。更何況,大城市IT服務公司多,其中還有很多都是全球化的公司,跨國流動也多。像印度IT服務業的興起就是因為美國大量IT從業者的迴流。
換句話說,像程序員這樣的職業,以北京為代表的大城市就是「特權城市」。
當然,程序員並不是特例,還有一些行業(職業)適合待在大城市。
⑵ 在一線城市上班的程序員,家庭一般是什麼樣的
大多數的家庭條件都很一般。我原來的大學同學就是去上海乾程序員,現在已經移民美國了。他這個人家庭條件非常差,大學的時候基本上連伙食都不能保證,只能靠助學金艱難度日。
他的數學理工科都非常好,本來是可以保研的,但是因為有一門思想政治課給掛了,再加上家裡的條件不允許,選擇了出去工作,到一家外資軟體公司擔任程序員。工作業績還是非常好的,後來就移民美國去了。
還有一個同學應該算我師弟大學畢業後去了網路。那時候網路程序員的薪水也是非常高的。他的家庭來自於普通的象徵,只能說收入很一般吧。但是自己夠拼,這么多年,北京也有房有車了。
還有一個大學同學,碩士研究生畢業以後去了谷歌。後來自己出來創業,家庭條件是非常好的。
所以程序員的家庭條件各種各樣的都有。但客觀來說,很少見到官員家庭。一般都是985高校的畢業生。以普通家庭和老闆家庭為多。
通常來說,家庭條件無非就是高、中、低三個檔次,恰好幾種水平的我都接觸過,跟大家聊聊(Base北京)。
家庭條件好點兒的,大多數做程序員都是對這個行業比較感興趣的,或者就是找個工作能夠糊口就行了。
這種家庭條件的程序員,一部分轉行或子承父業了,另外一小部分還在北京做程序員的,不過房子、車子都有了,拿著兩三萬的工資,生活比較愜意(鬼知道他們每年理財能掙多少)。
我屬於條件中等的,我對中等的標準是:父母身體 健康 ,養老沒有負擔,退休工資足夠生活;在北京買房的話,可以幫襯一下,全款拿不出來,幫著湊湊首付沒有啥問題。
我剛工作的時候月薪3K,那時候北京租房便宜,養活自己足夠了。08年底的時候認識了現在的老婆,10年10月買房,首付40萬是家裡出的,還借了一部分。貸款70多萬,月供4K,那時候跳槽完了稅前才8K,所以前期家裡沒少補貼。13年有了孩子,我們的工資基本月光,但是不用往家拿錢,所以壓力不是特別大(四個老人都有退休工資)。
我們這種家庭條件的程序員,基本上還在這個行業,日子過得好壞,基本上取決於買房的早晚。
有一些朋友選擇離開一線城市,去了IT行業還算發達的新一線城市或省會城市,創業或依然當程序員,日子也都過得不錯。
留在一線城市的我們,隨著父母年紀的增加,孩子上學的問題,也開始考慮是否離開北京。
家庭條件差的也遇到過,好一些的,自己過自己的日子;差一些的需要負擔父母的養老甚至弟弟妹妹的學費生活費。
這種條件的朋友只能依靠自己的努力,好在IT行業是個容易創造奇跡的行業;能力強的、運氣好的程序員,可以自力更生,在北京安家置業;混的一般的,拿著幾萬的工資,也只夠租房養家糊口的,在北京買房是遙遙無期了。
不過什麼樣的家庭條件,都不是我們能選擇的。
好好愛著父母,好好工作,我們做不了富二代,那就爭取成為富一代,生個孩子,我們就是富二代他爹。
我將持續分享Java開發、架構設計、程序員職業發展等方面的見解,希望能得到你的關注。
恰好,我有個鄰居在華為(上海部)上班。對此,我給大家描述下他的家庭是什麼樣的。
就家庭收入來說,屬於中上等水平。2年前,他加入華為,工資+年底獎金+工齡補助共計70萬元左右,因為要交個稅,所以真正到手的估計在50萬左右。
著想比其他鄰居來說,要好很多。比如,有個鄰居同事同樣在上海上班,做的也是IT類,每天同樣累到懷疑人生,但年薪只有20萬左右。即使上個月開始,工資增加了2500元,但依然相去甚遠。
就消費觀念來說,屬於節儉型。他有兩個孩子,妻子是全職媽媽,所以養家的金錢重擔只能他一人挑。
妻子知道他的不容易,所以平時很少買昂貴服飾、名包等,衣服基本在幾百元到1000多不等。
平時,他們也很少去餐館吃飯。鄰居一般周末才回來,所以他樂得幫家人燒一桌的好菜。
就教育方面來看,屬於貴族型。雖然他們在生活上比較節儉,但他們在孩子教育上非常捨得。
他的女兒讀的是貴族雙語幼兒園(中班),學費6W/年,這還不包括課外報的畫畫、美術、鋼琴等培訓班。
今年,他的兒子也上了這個幼兒園的小班,學費一樣。
所以,就他們孩子讀書而言,每年花費18-20萬左右。
這種教育開支,肯定不是常人能夠承受的。
在房子、車子等大宗消費上,屬於中等水平。比如,他們開的車子就是普通的豐田系,房子也只有1套3居室。不過聽他們說,近期他們籌劃買第2套房。
這名鄰居,今年35歲,在IT行業已屬於大齡了,但家中還有兩個幾歲的孩子要養育。 所以,即使他的工資很高,壓力也非常大。
也許,不管身在高位,還是普通的工作者,擺正心態,安於自己所有的環境和狀況,才是最好的釋壓方式。
家庭有的好,有的壞,主要是看你個人的出身,如果你是剛畢業一兩年的程序員,如果你家裡面很有錢,那你家裡就是很好的,如果你家裡面沒有錢,那你的家庭就不是怎樣好的。
如果你畢業後工作一段時間,而且你是有名牌大學的學歷並且你的技術過硬,你工作那麼三五年,小有積蓄存款,可以在二線城市給個首付開始買一個房。如果是在一線城市,再加上父母給的一些錢也可以給個首付開始買房了。
這就是程序員的工作,程序員的工資高,並且有些公司福利也是挺好的,如果家庭不怎麼好,通過程序員的努力,可以讓家裡面變得更好,這就是程序員的工作,有人說程序員工作不好,但我認為如果你能夠做的,並且能夠做的比較好的,話程序員對你來說就是一份比較好的工作吧。
如果你一個男人人努力,家裡面肯定不會差,如果一個人不努力,家庭也就是一般
大家好,我是王我。
本人在魔都這座城市已經上班一年啦,也就是說做了整整一年的程序員,這一年裡, 我從小白變成了大白。 寫代碼也慢慢變成了代碼。去年這個時候,我都回家過年了,今年,現在的我還在公交車上無聊的回答一下問題,真是寂寞如雪啊。
作為一個剛剛入行的程序員,我來講講我自己吧。
我不帥,但是我努力。 別人都說程序員的工資高,我在大學的時候也是這么認為的,可是步入了這個行業才發現並不是這個樣子。 我在答題的時候不是一次的說,我現在的月薪是7k, 唉,每天晚上回來看前端書籍,然後看一些視頻,前端和後台不一樣,前端需要去適配不同的瀏覽器和不同的設備,有時間調起來是真的麻煩
我不是城市的孩子,我是農村的。 個人而言吧,我認為如果家境非常好的話,我認為是不會去做程序員的, 畢竟程序員累呀,有錢誰干?倒不如靠關系考考公務員,多好呀為什麼要天天加班?
記得剛剛入職的時候,那是真的難過呀,簡直就是度日如年,每天都要去寫組件, 我們的項目都是vue框架, 然後我們 公司用什麼iview等第三方組件,一開始我看到我是懵逼的,每天晚上回去都要學習,真的是煩啊,一開始的時候,唉。
我在以前答題的時候,我說我一個月7k,很多人評論說少了,的確,我准備年後辭職了,參加一下春招,畢竟我還是半個大學生嘛。然後搞個11k
這本書是陪伴我開始程序員生涯的書,每天回來都翻翻,學好js,走遍天下都不怕
大家好,我是王我,中國最帥的程序員,好啦,馬上要下公交車啦。
1
不要被 「一線城市」 和 「程序員」 兩個高大上的詞給唬住了。
現在不是過去,農村人進個城還要開介紹信,一線城市很大,有很多的就業需求,在一線城市上班,並不是多麼高大上的事。
只要你想去就能去,但是能找到什麼樣的工作,取決於你的學歷和能力。同時,你在一線城市想住下來也沒問題,但是租房還是買房,取決於你自己的實力和家境。
程序員也是一樣,看起來是一項技術很高的工作,需要從業者有很強的專業背景,受過很好的教育,說具體點,就是名校計算機相關專業,這些專業的高考分數都很高。
但這只是過去了,程序員的含金量就像100元面值的人民幣一樣,隨著年代在不斷縮水。
如果是21世紀初,程序員就是職場精英,絕對是名校計算機專業畢業,不是進大外企就是華為、聯想,上班可能都要裝西服,工資比其他行業高出一倍還不止。
因為那個時候,計算機還沒有普及,能學計算機的都是高材生。
但是現在不同了,計算機軟硬體都發展得很快,尤其是程序員這一塊,一方面技術門檻一定程度上在降低,另一方面各個高校都開了計算機專業, 社會 上還有很多培訓班,能學編程的人越來越多。
再加上計算機軟體行業的模塊化,很多底層的東西都被封裝了,從業者不需要從最基本的東西開始學起,不需要過去那樣特別扎實的功底,可能非科班出身,培訓班出來的人,都可以勝任一定的工作。
2我在軟體行業工作了十幾年,見過各種程序員。
有名校計算機畢業的高材生,功底很扎實,工作幾年就可以當上架構師,薪水也拿得很高。
這些人的能力體現在,一是對計算機的基本原理掌握得非常扎實,二是對編程演算法非常了解。
也有普通本科,甚至成人自考的程序員,以外包公司員工的身份去大公司做項目,工作很辛苦,但工資在同齡人裡面算高的。
但他們在平時工作中體現的能力,顯然不如上一種人,寫和程序經常出現bug,而且對於復雜的性能問題束手無策,也缺乏整體架構的思維和意識。
3說到家庭情況,如果是受過良好教育的老程序員,主要有兩中,一種是家庭條件很好,書香門第,從小受過良好的教育,一路名校。
另一種人是城鎮出來的,家庭條件一般,但是這種人有強烈的改變命運的慾望,他們工作、學習特別刻苦,肯鑽研。
現在我接觸到的年輕一輩的程序員,尤其是肯接受996工作的,一般家庭條件都不是太好。
因為現在程序員已經成了民工一樣的苦X,工資雖然相對高一點,但是付出的辛苦更多一些,如果計算單位時間的收入,也就是把工資除以工作時間,時薪未必比其他工作要高。
也就是說,現在干程序員的人,大多都要吃苦,而且程序員的工作無論是對內還是對外,都是乙方。在公司內部,程序員要聽命於產品、被測試折磨,在外部,程序員要唯客戶馬首是瞻。
家庭條件好一點的同學,肯定是願意去甲方。
除非是那種對程序特別有興趣,不考慮現實問題的人,一般家庭條件好一點的同學,很少願意當程序員。
認識一些人,不分年齡,工作情況,一般都是拼,家庭情況一般是普通農民家庭比較多。
程序員領域跟其他行業差不多,就是越高工資,壓力越大。國內干到40歲,基本是到頭了,除非你是名人,牛人,即使名人,牛人他的頭銜也變了。 可以看下國內各種大佬程序員們。基本到後期都是xxx講師,xxx執行官,xxx總監,很少會有人還繼續說自己是某某程序員。。。
程序員行業相對來說還是有門檻的,早期的國內程序員,摸到電腦都很難,最後成為了程序員,每個都是拚命努力才留下來的。隨著這些年互聯網的發展,門檻越來越低。
所以早期的程序員裡面,大部分家庭都是寒門苦讀出生。 到今天,我看到旁邊00後的程序員,家庭慢慢有些改變,很多都是興趣,覺得代碼好玩,學著學著就會了,所以說門檻低了。
我前面一個回答香港問題有說到:有個要好的兄弟,廣東雲浮人, 五一在他家玩,聊過生活壓力話題,他家,爸媽弟弟都很早就過戶到香港,老家那邊已經沒特別親的人,房子自己有完全的自主權,大陸只有他一人。
他在大陸佛山千燈湖有一套房、雲浮市中心有一套房(很早一次付清買的),雲浮村裡有一座樓。可以說並不屬於特別窮的那種。
但壓力猶在,由於父母沒在這邊,老婆全職帶孩子, 每個月車貸,房貸目前正在還,作為程序員,雖然是一小管理,但加班經常有。一刻都不敢放鬆,個別時候帶頭加班通宵。
你可以說他這家庭已經很好,一個人擁有三個地點的房子,可是他也不敢賣掉任何一個, 佛山的如果賣了,他小孩長大讀書,工作沒地方落腳。 市裡的房子,每年放假自己在住,以後自己還指望在這里養老,村裡房子賣不了幾個錢。
個人看來,30歲以上的程序員,大部分家庭都是寒窗苦讀比較多。隨著現在門檻逐漸減低,各式各樣的家庭都會有。
有句話是怎麼說的?「龍生龍,鳳生鳳,老鼠的兒子會打洞」。這話一點不假,在一線城市上班的程序員,收入高,年薪幾十萬,他們大部分的家庭一般也挺不錯的。
這也是我為什麼勸年輕人,你一定要往上爬,原因不僅僅在於你,更在於你的後代。
盡管往上爬,這很難。
我們總公司有一個做運營的,三十歲未婚,看起來細皮嫩肉的,你完全猜不到他有三十歲,保養得很好。他在上海工作,也是地地道道的上海本地人。
有一次他來四川出差,下了飛機,我們從成都出發,開車去目的地城市。那是我第一次看到他,辦公裝備是最新款的蘋果,穿著一個粉紅色POLO衫,一條藍色的直筒褲,POLO衫扎進褲子里,再配一根皮帶,妥妥地互聯網精英一枚。
他的普通話發音非常標准。我跟同事兩個人去機場接他,一下飛機,我們就直接開車去遂寧。
雖然路程只有短短的幾個小時,但我的確是頭一遭真正見識了什麼叫做大城市的人。
什麼叫做大城市的人?
他作為地地道道的上海人,這還不是最令我驚訝的。最令我驚訝的是,他竟然連農村都沒有見到過。我記得車子開到綿陽路段的時候,農村景象一覽無遺,他開口感慨道:「我去,這兒的房子怎麼這么破?這就是四川的農村嗎?」
我知道,這絕非是他故意這么說的,而是他本能發出的感慨。當時我與同事對望,啞口無言。
我原以為,即使是大城市的人,也應該見過農村吧,哪怕是去外地 旅遊 ,也會見過農村吧。但他告訴我們,那是他第一次見到農村,那是他人生中第一次看到那麼破敗的景象。
我想,大城市家庭出身的人果然不一樣,這就是所謂的「城裡人進村」吧。
過去我一直認為,互聯網的出現,把人與人之間的差距拉近了,但那一刻我才發現,這種差距永遠都是存在的,絕對不會因為一種新技術的出現,就能夠拉近。
我還記得那晚我們在遂寧一家有名的串串店吃串串,因為他是從上海來的,我們特意點了一個微辣紅鍋,作為四川人,我們吃這個完全感覺不到辣味。
但他是真的吃不了辣,我們感覺不到辣味,他辣得直接用清水涮著吃。
那也是我第一次發現,原來上海人吃辣是真的不行。
我們在遂寧待了兩天,他的談吐和思維能力,都深深令我佩服。和他相處,你永遠都有一種如沐春風的感覺,他會給你一種恰如其分的尺度,能夠照顧到你的情緒。
後來我問了問他的家庭情況。他告訴我,他父母都是大學教授,就一個獨生子,生他生得比較晚,現在他父母都退休了,在上海有兩套房子。
說這話的時候,他臉上沒有什麼表情,彷彿不是在說他自己,而是在說旁人。
當然,我也知道在一線城市上班的程序員里,肯定還有來自條件一般的家庭。但程序員這個群體,不同於別的崗位,好的學校非常重要。
而眼下的情況是,寒門子弟想讀一所好的學校,正變得越來越困難。
這是一個魔咒,是一個無限循環 游戲 。
END.
我以阿里員工的身份回答一下,我身邊眾多的程序員同事或者朋友,一般都是勤奮踏實上進的青年,大多出自農村或者鄉鎮,家庭非常普通,都是靠刻苦學習,職場打拚進入的阿里巴巴。這就是大家自嘲的「農村做題家」!
曾經北漂十幾年,還沒畢業就跑去漂了,從找到第一份工作到後來認識現在的媳婦,都是在北京度過,呆過的公司不是很多,但明顯感覺加班是越來越多,主要跟公司性質有關,還和個人承擔的東西越來越多有關,現在就經歷過幾家公司的實際生活狀態給大家分享下。
第一份工作的時候是孤身一人,大約工作了兩年的時間遇到了現在的媳婦,在剛工作階段由於基礎薄弱大部分的業余時間都是撲在彌補編程基礎上了,每天基本除了睡覺的時間都在在研究代碼或者看編程書籍中度過,算是編程生涯比較純粹階段,入行的前兩年基本上工作強度不是很大,可能還和公司的性質有關(外企)而且還是彈性工作制,因為入行時間比較短工作時間上控制的比較嚴格,基本上還屬於按照正常點上下班,有時候還會加班加點,大致上的規則是有個項目加班加點非常瘋狂,一旦項目緊急階段過去了基本上就趨於正常了,一年大概有個三四次這種緊急階段,後來認識了現在的媳婦,業余的時間也有所傾斜,按下下班的時間變多了,業余想抽調大塊的時間也變得艱難起來了,但總體而言第一家公司算是職業生涯呆過的最輕松的公司,呆的時間也是最長的,差不多有5年多的多時間,而且和這個公司的同事已經呆出了感情,不是公司經營不善說不定還會一直呆到現在,畢竟從性格上來講不太喜歡到處亂動,還是喜歡在一個比較穩定的地方安身的搞代碼技術,對於別的訴求相對比較低,由於呆的時間比較長對於裡面的業務模塊已經非常熟練了,所以加班加點也不是很多,頻繁的跳槽不見得是一件非常明智的事情,呆在一個地方熟悉環境了,反而更加容易出成績。
總體來講第一份工作前期入門階段加班加點比較多,後來因為家庭原因加上對業務模塊越來越熟悉導致,加班加點反而不是那麼多,平時按點下班的概率非常高,基本上下班後還能和媳婦一起逛逛街,算是職業生涯比較順的階段,家庭和諧指數也非常高。
第二份工作選擇了一家蒸蒸日上的中小企業,明顯的工作強度比較大,主要原因還是對新業務的一個熟悉過程,前半年基本上加班加點比較多,用了大半年的時間在工作奠定一個比較穩定的地位,畢竟進入新公司都需要一個適應階段,包括人員的磨合技術的磨合等等,企業的性質屬於項目制,每到項目緊急時刻也是忙的要命,而且技術人員普遍沒有在第一家公司強,屬於經驗豐富的老技術員帶著一幫新兵蛋子工作階段,除了趕項目還要培養新兵,所以這個階段非常累,差不多有一年的時間在趕項目和培養新人,等到新人培養出來了項目也接近穩定了,開始進入平穩期了,在剛進入公司階段由於工作強度大,媳婦還是非常不滿意,覺得工作已經把整個人的魂魄給弄走了,每天都是很晚回來,基本上兩個人說話的精力都沒了,後來忙過來一年時間把整個業務梳理清晰,才算是恢復正常的階段,本來在這家公司還是非常有希望拿到一份額外的收入,由於乾的還不錯,也拿到股份,但由於國家那年的上市的政策變化給耽誤了,前幾天還打聽到公司到現在還沒上市,所以一旦錯過再找到機會起來其實挺難的。
第三份工作算是純正的互聯網公司性質,選擇換工作還是想進入一家正牌的互聯網公司挑戰下,也是加班強度最大的一家公司,幾乎很少有按點下班的時候,就這還不到公司一半員工的平均加班水平,算是加班非常少的員工 ,在裡面耍了三年的時間,充分感受到了加班加點出版本的氣氛,這個階段也是和媳婦吵架非常多,主要還是精力都在工作上,回到家不是很晚就是精力耗盡,最後選擇了辭職直接結束了北漂的生涯,整體算下來北漂十幾年混的還挺知足,人貴在取捨,懂得什麼時候做什麼事情。
畢竟一直在外邊漂著,最後的結局還是要葉落歸根,滿足了所欲的技術慾望之後,就要考慮以後的生活該如何去做,規劃以後的生活,轉眼間離開北京已經將近四年的時間了,每次回顧起來也是帶著慢慢的感激之情,北漂的十幾年完成技術小白到一個程序員,中間也做出點小成績,正是由於十幾年的技術積累才讓自己有機會在三線小城市還能做著自己喜歡的編程技術,加班加點少了,對於生活上照顧也多了,家庭上面也順了許多,能有更多的時間陪著老婆孩子。
希望能幫到你。
⑶ 高收入低情商程序員節來襲,你眼中的程序員是什麼樣
對,非常正確
⑷ 作為一名優秀的程序員,要具備哪些基本功
程序員(英文Programmer)是從事程序開發、維護的專業人員。
作一個真正合格的程序員,需要具備:
1:團隊精神和協作能力
團隊精神和協作能力是作為一個程序員應具備的最基本的素質。
2:文檔習慣
文檔是一個軟體系統的生命力。作為代碼程序員,必須將30%的工作時間寫用於技術文檔。沒有文檔的程序員勢必會被淘汰。
3:規范化的代碼編寫習慣
知名軟體公司的代碼的變數命名、注釋格式,甚至嵌套中行縮進的長度和函數間的空行數字都有明確規定,良好的編寫習慣,不但有助於代碼的移植和糾錯,也有助於不同技術人員之間的協作。
4:需求理解能力
程序員要能正確理解任務單中描述的需求。
5:模塊化思維能力
作為一個優秀的程序員,其思想不能在局限當前的工作任務裡面,要想想看自己寫的模塊是否可以脫離當前系統存在,通過簡單的封裝在其他系統中或其他模塊中直接使用。
6:測試習慣
測試是軟體工程質量保證的重要環節,但是測試不僅僅是測試工程師的工作,而是每個程序員的一種基本職責。程序員要認識測試不僅是正常的程序調試,而要是要進行有目的有針對性的異常調用測試,這一點要結合需求理解能力。
7:學習和總結的能力
程序員是很容易被淘汰的職業,所以要善於學習總結。
⑸ 程序員算精英嗎
不算 類比建築業 在IT業內部就是瓦匠的水平 只不過收入高 辦公環境還不錯而已
⑹ 真正的精英程序員是什麼樣的
在我看來,程序員要能夠適應各種技術的更新、及時學習和更新自己的技術,同時能夠和別人合作共同完成很多的項目,在指導或者幫助別人的時候,能把晦澀的計算機語言或代碼講起來很通俗易懂,這才是一名優秀的程序員。
⑺ 如何成為一個優秀程序員
從初入職場菜鳥到職場大咖,很多程序員在努力充實自己,有時候我們需要對自己進行一次能力定位,了解自己的優勢和沒有掌握的技術。芯學苑列出幾點作為初入職場的新手評估自己,明了前進學習的方向。
1、技術能力(解決問題的能力)
這是非常重要的事;過硬的技術能讓你得到面試機會,並在工作中游刃有餘。當公司招聘一個Java開發人員時,是會優先考慮能力因素的。在實際的項目開發中,一個程序員的技術能力等於其解決問題的能力。
如果拿一個尺度來衡量這個能力的話,一個程序員的能力可以用能完成任務的數量和難度來衡量。一個程序員能基本無誤的完成項目中的一個功能算是合格,但在此之前,他對項目的生產力為負,為他布置的任務,中間環節的溝通,修補bug的時間其實要多於自己直接完成該功能的時間的。能較好完成一個完整模塊的程序員才算是較好的程序員,也是項目中的主要開發者。能獨立完成整個項目才是優秀的程序員。
2、專業基礎(知識的積累)
一個程序員的知識積累很大程度上決定了其解決問題的能力。知道如何編寫代碼是基本的技能,但是知道Java編程語言的原理,知道代碼背後的演算法將使你從人群中脫穎而出。
3、主流編程工具
今天,事實是,你不能成為一個樣樣都懂的人(雜而不精)。你必須選擇你要掌握的工具。有時這是由工作的環境決定的,但是按照下面說的去做也是一個很好的選擇:
構建工具:Maven或Gradle。
SCM:Git(不是GitHub。大不相同)。
構建自動化:Jenkins。
IDE:Netbeans或Eclipse——不僅用於編寫代碼,而且還從IDE中重構和調試代碼。我遇到了很多沒有如何從他們最喜歡的IDE調試的開發人員。
Bug跟蹤:Bugzilla或Jira。
4、JSF的知識
應用程序伺服器
所有Java開發人員應該知道如何在Apache Tomcat中部署。
當Glassfish開發停止時,下一個最好的事情是J Boss Wild Fly。
5、溝通的能力
溝通是我們做好一切事情的關鍵。我們必須與我們周圍的環境保持互動,無論是在我們的私人還是職業生活中。一個良好的程序員知道如何在各種團體面表達自己。也許對你來說顯而易見的東西在他人的角度來看並非如此。
從大的尺度(比如一個人的工作生涯)來看,一個程序員知識積累的多少只決定於其自學能力和他對編程本身的興趣。
在一個分工明確的項目中,程序員需要理解產品,和領導溝通理解自己的任務,和同事們溝通以正確的方式進行合作。無論哪一個方面溝通出了問題都不是小事情,同時,程序員還需要正確的傳達設計的實現難度,以及讓別人正確的理解自己設計模塊的介面。在不寫文檔時,正確的口頭溝通非常重要,需要寫文檔時,良好的編輯能力也算做是溝通能力的一部分。
6、自學能力
這是一個非常重要的技能,在你自己的空閑時間學習新的技能。不要等待公司為你提供培訓。你需要自己去學習新技術,提升自己在相關領域的水平。從Java後端開發到架構模式,總是有一些新事物值得學習。經常閱讀博客和論壇,嘗試加入本地聚會小組。你學到的東西可以幫助你的事業。知識刷新頻率極快讓人無法追趕的這個時代,難免會有超出自己知識范圍的時候,此時你的自學能力決定了你能多快的完成任務。
7、良好的團隊合作精神
無論是部分編程還是大型項目,所有開發人員都是作為團隊的一部分在協同工作。你需要致力於團隊的目的,或幫助新的團隊成員克服障礙。不要存在這種「我只要做好我的本職工作,下班就直接回家」的態度。成為團隊的一部分,幫助周圍的同事,對自己的能力也是不小的提升。
就像拿破崙說的不想當元帥的士兵不是好士兵,追求參與一個大型軟體系統的開發,是每個程序員的夢想。在此之前,應該學習更多的專業知識,達到優秀程序師的標准。最後希望各位程序員閱讀本文後能夠得到一些裨益,在這條路上走得更好。
⑻ 怎麼樣才算是真正合格的程序員
作一個真正合格的程序員,或者說就是可以真正合格完成一些代碼工作的程序員,應該具有的素質。
1:團隊精神和協作能力把它作為基本素質,並不是不重要,恰恰相反,這是程序員應該具備的最基本的,也是最重要的安身立命之本。把高水平程序員說成獨行俠的都是在囈語,任何個人的力量都是有限的,即便如linus這樣的天才,也需要通過組成強大的團隊來創造奇跡,那些遍布全球的為linux寫核心的高手們,沒有協作精神是不可想像的。獨行俠可以作一些賺錢的小軟體發點小財,但是一旦進入一些大系統的研發團隊,進入商業化和產品化的開發任務,缺乏這種素質的人就完全不合格了。
2:文檔習慣說高水平程序員從來不寫文檔的肯定是乳臭未乾的毛孩子,良好的文檔是正規研發流程中非常重要的環節,作為代碼程序員,30%的工作時間寫技術文檔是很正常的,而作為高級程序員和系統分析員,這個比例還要高很多。缺乏文檔,一個軟體系統就缺乏生命力,在未來的查錯,升級以及模塊的復用時就都會遇到極大的麻煩。
3:規范化,標准化的代碼編寫習慣作為一些外國知名軟體公司的規矩,代碼的變數命名,代碼內注釋格式,甚至嵌套中行縮進的長度和函數間的空行數字都有明確規定,良好的編寫習慣,不但有助於代碼的移植和糾錯,也有助於不同技術人員之間的協作。
有些coding fans叫囂高水平程序員寫的代碼旁人從來看不懂,這種叫囂只能證明他們自己壓根不配自稱程序員。代碼具有良好的可讀性,是程序員基本的素質需求。
再看看整個linux的搭建,沒有規范化和標准化的代碼習慣,全球的研發協作是絕對不可想像的。
4:需求理解能力程序員需要理解一個模塊的需求,很多小朋友寫程序往往只關注一個功能需求,他們把性能指標全部歸結到硬體,操作系統和開發環境上,而忽視了本身代碼的性能考慮,有人曾經放言說寫一個廣告交換程序很簡單,這種人從來不知道在百萬甚至千萬數量級的訪問情況下的性能指標是如何實現的,對於這樣的程序員,你給他深藍那套系統,他也做不出太極鏈的並訪能力。性能需求指標中,穩定性,並訪支撐能力以及安全性都很重要,作為程序員需要評估該模塊在系統運營中所處的環境,將要受到的負荷壓力以及各種潛在的危險和惡意攻擊的可能性。就這一點,一個成熟的程序員至少需要2到3年的項目研發和跟蹤經驗才有可能有心得。
5:復用性,模塊化思維能力經常可以聽到一些程序員有這樣的抱怨,寫了幾年程序,變成了熟練工,每天都是重復寫一些沒有任何新意的代碼,這其實是中國軟體人才最大浪費的地方,一些重復性工作變成了熟練程序員的主要工作,而這些,其實是完全可以避免的。
復用性設計,模塊化思維就是要程序員在完成任何一個功能模塊或函數的時候,要多想一些,不要局限在完成當前任務的簡單思路上,想想看該模塊是否可以脫離這個系統存在,是否可以通過簡單的修改參數的方式在其他系統和應用環境下直接引用,這樣就能極大避免重復性的開發工作,如果一個軟體研發單位和工作組能夠在每一次研發過程中都考慮到這些問題,那麼程序員就不會在重復性的工作中耽誤太多時間,就會有更多時間和精力投入到創新的代碼工作中去。
一些好的程序模塊代碼,即便是70年代寫成的,拿到現在放到一些系統裡面作為功能模塊都能適合的很好,而現在我看到的是,很多小公司軟體一升級或改進就動輒全部代碼重寫,大部分重復性工作無謂的浪費了時間和精力。6:測試習慣作為一些商業化正規化的開發而言,專職的測試工程師是不可少的,但是並不是說有了專職的測試工程師程序員就可以不進行自測;軟體研發作為一項工程而言,
⑼ 怎麼樣才算高級程序員
高級一般指的是5年經驗以上的
但實際上沒有固定說法,專注一件事5年左右都是高級人才
編程是需要持續積累的
一般招聘需求高級和普通 在JD上就有明顯差異, 可以去讀一讀
⑽ 怎麼才能算是一個合格的程序員要求要懂些什麼東西,到什麼程度
如何成為一個合格的程序員
確定目標
做什麼事都要有明確的目標,因此,你首先要為自己確定一個可測量的目標,並把這個大目標分解為幾個分階段的小目標。比如,要在一年內開發出一套倉庫管理軟體:第一月的目標是學會一種計算機語言;第二個月的目標是熟悉倉庫管理業務;第三個月學會資料庫;第四個月寫出原型……然後按計劃去做,每完成一步你的信心就會增加一些,並會感受到成功的快樂。
選擇工具
當你開始著手的時候,會發現市面上有太多的計算機語言和工具供你選擇了。具體選擇某種語言和環境與你的目標直接相關,比如要開發單片機系統和要開發管理系統,所選擇的語言會有天壤之別。下面是一些參考意見(純屬個人意見):
1、腳本類:特點是簡單、易學、易用。比較常用的有:Unix/ Linux的Shell語言,網頁里用的VBScript/JavaScript,MS-Office里用的VBA,動態主頁用的JSP、ASP、PHP等,通用語言Perl、Python等。當然像Python/Perl語言的功能已非常強大,有用它們寫出的資料庫、系統管理等大型系統,如Zope、WebMin等。
2、RAD類:這類以快速開發著稱的語言及工具比較流行,常用的有VB、Delphi、Powerbuilder、Visual FoxPro等,這類工具常用來開發管理信息系統,如用友、金碟等,也用來開發通用軟體。
3、專業類:最常用的是C/C++,Java等,如果你想成為專業的程序員,就要學習這些內容。它們通常用來開發系統級程序,比如操作系統(MS-Windows、Unix/Linux等)、資料庫(Oracle、SQL-Server等)、開發語言(C/C++、Python等)、工具軟體(WPS、KV3000等),在大型系統里基本都有它們的身影。
4、專用類:這類語言種類最多,它們一般設計用來完成一項特殊的工作。例如現在最流行的Flash,它內含Action Script語言;AutoCAD內帶VBA和AutoLisp;每一種單片機都帶有自己的ASM語言;許多系統如MatLab、Spss、Intouch、Modsoft等都有自己的專用語言。
總的來說,當選擇語言的時候,一定要與自己的目標相結合,另外,入門的時候,可先選擇容易一些的,入門後,再選擇專業些的。一開始就選擇C++可能會讓你知難而退,但如果選用Python,你就可能會覺得計算機語言原來也挺容易。
勤奮練習
除了多寫程序,沒有別的辦法去更快地提高你的程序水平了。看書的時候,最好把書上的例子自己輸進電腦實踐一遍,然後進行各種試驗,再聯想出各種相關的程序,自己寫出來,並驗證自己的結果。如果有好的想法,就嘗試把它寫出來,很快你會發現你的水平在快速上升。
當你有了一定的基礎的時候,可以嘗試去讀高手寫的程序,解讀他們的程序的設計理念、風格、解決問題的思路等。在這方面,GNU/Linux為我們提供了一個巨大的源程序寶庫,裡面有各種各樣的程序源代碼,詳細研究一套你感興趣的系統,你的水平會得到大幅度提高。
不斷提高
除了多加練習,你還需要多讀書,特別是英文書。讀書可以在理論上提高你的水平。信息技術發展太快,而大部分的技術最先出現的時候都是英文版本的,要幾個月以後才有中文版本的書出來,因此要想跟上步伐,一定要努力提高自己的英文水平,這樣才能同步跟上信息技術。你可能擔心自己的英語水平不行,沒關系,剛開始多查字典,很多就會發現計算機英語其實很容易。當然,這里的書是泛指,包括網路上的各種文章,電子書等。
另外,多與他人交流經驗也有助於自己水平的提高。互聯網為我們提供了一個巨大的交流平台,各種BBS和新聞組上都有熱心的高手回答你的問題。不過在問問題之前,自己一定要先努力嘗試過,再給出自己的想法。動不動就問別人,自己水平得不到提高,別人也不再會回答你的問題。
繼續深造
當你覺得自己成了程序員的時候,你就會發覺還有很多東西要學,你可以繼續深入學習來提升你的水平。
1、向下深入:了解操作系統的機制,了解底層的API,這對開發系統級程序非常有用。
2、向上延伸:學習項目管理,軟體工程,設計模式,分析設計等,這對你開發大型系統非常有幫助,特別是一個團隊去開發一個大型項目的時候。
3、橫向擴展:熟悉各種系統如資料庫、多媒體、人工智慧等,然後集成起來應用,會產生更大的效果。