導航:首頁 > 程序命令 > 差距很大程序員會怎麼說

差距很大程序員會怎麼說

發布時間:2022-12-29 20:14:58

Ⅰ 專科程序員與本科程序員之間最大的區別是什麼待遇又相差多少

有例外,但大多數的人在學歷上依然有非常大區別,不僅僅是程序員這一崗位。

3、長期看來學歷區別並不算太大

作業一兩年後,學歷早已不是你的最大優勢和較大缺點了。這時候,區別二者的就是技術性上的多少。例如我們學校就有一些出色學生就業大牌明星,來學習時學歷很低,但現在已經是年收入大幾十萬的高管。在其中三位我印象最深,一位是普通高中學歷、一位是普通高中肆業、也有一位是退役軍人。根據1年半的零基礎學習畢業之後,用了兩三年時長保證了工程項目經理、業務部副總經理,年薪三十萬之上。中後期本人能力主要表現更重要。

最重要的一點,學歷是過去的能力證實,區別的就是短暫性如今,將來還需持續用能力證明自己,持續學習是每一個職場人的最大競爭能力。

Ⅱ 程序員現狀,看看來自二三線城市程序員的真實感受

2022年3月,烏魯木齊市,95年26歲Java後端程序員。

我先後在烏魯木齊市兩家互聯網公司工作過,通過自己努力的思考,總結出了一些對程序員現狀的看法,供大家分享和參考。以下內容全部屬實。

很多人會覺得程序員是高薪行業,並且有人會說朝九晚五雙休,工作清閑還有業余時間去做其他事情。

我來揭曉真實答案。真實答案和上述情況基本完全相反。

真實情況我的城市,程序員的薪資算不上高薪行業,不是行業平均薪資不高,而是這里很多中小企業都會考慮降低用工成本,在招聘的時候用各種方式打壓你的薪資。

這種方式尤其對新入行的程序員特別奏效。因為企業打壓你工資的方式有很多種,而新入行的程序員根本就沒有與企業談判的資本。或許你入行時技術功底扎實,開發水平相對較高,又或者你學歷很好,綜合能力很強。但是企業依舊會以你沒有工作經驗,以及試用期,或者說培養你都需要付出成本,找人帶你教你等等一系列舉措,讓你啞口無言只好接受企業的用工要求。沒有能跟企業談薪資的能力。企業最後會以一個較低的薪資利用你為企業創造更大的價值。

而處於新手階段和試用期的你,想要獲得企業的青睞獲得轉正的機會,會更好的去工作提升以及轉正。這樣你會在試用期努力工作,為企業創造效益。這個時候大多數程序員都會想,薪資低一些活多一些累一些也無所謂,因為這時候在鍛煉提高自己的工作能力,對自己其實也有很大好處。企業也同樣利用員工這個心裡,不停的激勵你去工作。而企業只是付出了很小的成本,利用新人的你去做了很多又苦又累的活,而你還不自知。這樣企業很開心啊,而你除了努力付出工作和鍛煉,錢卻沒有收獲進口袋裡。

你以為你能力鍛煉了就會對應的拿到較高的薪水的時候。但是你別忘了,小企業把程序員當碼農並且降低用工成本的核心思想並不會因為你的技術提升而發生改變。

企業依舊會以招最少的人用最低的成本讓員工干最多的活去運行,並且項目大人員少,這樣上線前一個就有理由讓你加班,並且告知你是不可避免,去要求你加班工作。我自己的真實經歷是連續加班一個月,並且在每天正常下班之後還需要額外加班5-6個小時,工作日連續五天加班後,周末再額外加班一天的強度去工作。基本就是一天工作14個小時一周工作6天,這么個強度。而且企業並不會在乎你是不很累,加班不會付加班費,而是以加班可以調休的方式安慰你。然而你想想這種小公司,並且開發人員企業不配備很多的情況下,怎麼會讓你調休。調休是需要上級領導項目負責人到經理,一系列人的簽字的。可想而知,調休說是有,基本想想就可以,不會讓你想休就休的,哪怕加班很累,第二天還是要上班。因為你不幹就沒人干,但是公司項目需要上線。而且你的工作每天都有人監工,你就負責幹活就好,讓你做什麼就做什麼。這樣你還會覺得程序員薪資很高嗎?

現在企業都知道招年輕人,剛入行的新人最好。因為他們沒有太多經驗,好對付,便宜而且幹活又賣力。哪怕有幾個不上進的水平差一點的,也會有人監督你把每天的任務完成。怎麼說企業都不虧,所以企業能用新人和年輕人為何還會選擇你要求薪水高的人呢。你以為你技術上去了,可以跟企業要高薪的時候(其實也不高,就月薪過萬而已),以你的技術可以拿到月薪過萬的時候。企業依舊可以通過各種方式降低用工成本,或者壓根就不錄用你。比如試用期只給你80%薪水,哪怕企業知道你經驗很豐富,也利用試用期少給錢讓你多幹活快速熟悉並進入開發。會以工作年限限制你的薪水,你說你水平高怎麼證明,其實就是企業不願意承認和付出更高的成本而已。哪怕你技術很牛學歷很好,一樣會面對這樣的問題。等真到一定的工作年限的時候,你會發現頭發和精力和興趣都會少很多。你再去跟企業談薪,你還會發現企業還有方式降低用工成本。你有家庭嗎,你能加班嗎,對你提更高的技術要求等等。雖然總的來說薪資會有一定上升,你想要拿到一個滿意的薪資很難,因為你滿意企業就會不滿意,企業不會為了照顧你,而降低自己的企業的效益。

這就是現在絕大多數程序員現狀。付出很多,承受很大的壓力,賺取來一點辛苦錢。而且現在程序員絕大多數都會有35歲危機。這行業想要做好是有一定門檻的,還要有抗壓能力和很強的學習能力,理解業務的能力。現在你還覺得程序員這份工作好乾嗎,高薪嗎?那些年薪幾十萬的都是一線大廠的少數人。中國絕大多數行情,程序員就是底層的碼農而已。付出這么多,收入稍微比普通職業高了那麼一點而已。一樣會面對買房買車的壓力。誰也沒比誰好多少。沒有太多業余時間發展愛好,接觸更多事物,壓力大。絕大多數時間在跟計算機打交道。每天面對電腦的時間很久,一坐就是一天。

我這兩天也是剛離職,因為企業不招人進來,就五六個人干一個項目,還加班。當你去面試的時候一大堆企業要招你,但是能給你滿意薪水的企業的數量直接就大打折扣了。

當然企業不給你滿意的薪水,也不代表你不好,這只是畸形商業模式下的企業招人的方式而已。你要相信自己其實比很多人要優秀。

否則企業會讓你懷疑人生的。在一個沒有裝修過的小房間當碼農的感覺親自體會一下就明白了。就像不被企業在乎的流水線工人埋頭苦幹。

遇到這種情況程序員們一定要堅持自己薪資的底線,不要讓企業或者根本不懂技術的hr 輕易的壓低你的薪資。而你卻選擇默默接受。雖然我們是打工人,但是面對這樣的企業也要堅持自己的原則,去進行雙向的選擇。並且為自己以後的發展做好規劃。

希望程序員們都能找到一家滿意的公司,去發展。人生只有一次,不只是工作,一定要按自己喜歡的方式去活。

這就是來自二三線程序員的真實現狀。你們怎麼看呢?歡迎在評論區留下你的看法。

Ⅲ 為什麼程序員越來越排斥面試時做題

幾乎沒做過程序員,不是不想做,實在是歲數大高手多的是。



  

登錄

微wx笑

關注

為什麼程序員都很排斥面試時做題?答不出題的程序員會是大牛嗎? 原創

2018-11-08 08:24:52 16點贊



微wx笑  

碼齡12年

關注

相信很多人都有過這樣的經歷,就是去面試的時候,先被要求做題。

如果像下面的判斷選擇還好!



如果是讓寫個什麼演算法之類的,那就呵呵了!每天和滑鼠握手,還哪會寫字啊!

關於這件事,很多小夥伴紛紛吐槽。

網友一:

不止是程序員,沒有誰喜歡面試時做題吧。

對於程序員的面試來說,通常的面試方法有兩種,一種就是做題加面試,一般針對比較低級的崗位。一種就是聊,直接和技術經理,或者技術總監聊,面試官一般會提醒面試者帶著自己的作品或者項目來,通過作品項目更能看出一個人的過往經歷和專業水平。

發現沒有,很多人一起做題,本身就是對待比較初級崗位的做法,誰會喜歡?如果阿里巴巴挖一個華為的工程師,難道面試前先做個題?

有經驗的HR就知道,很多時候面試的時候讓面試者寫題目,往往會錯失一個好人才。

我的上家招我的時候一開始就是讓我答題的,結果題目全是一些大學時候學的概念和平時寫代碼時候用到的知識點。

說實在的,我真的很多概念都記不住了。因為離開學校三年了,記憶力哪有這么好。

結果我只答了一半的題目,就直接放棄了,我說我不想答了,能不能直接找你們技術總監談一下。

Ⅳ 作為一個好的程序員,都需要具備哪些基本的素質和能力

我上班第一天我的老闆讓我做的第一件事
看兩篇文章:
程序員隨想
雷軍
我不是天生的程序員,也並非天生就喜歡電腦,上高中時也沒有想過將來會當程序員,接觸電腦純屬偶然--小時候的一個好朋友上大學時選擇了電腦專業,為了和這個朋友有更多的「共同語言」我便選擇了計算機系。在大學,我略窺電腦世界,開始為之「發燒」;畢業後,開始了一個程序員的職業生涯。
從開始寫程序到現在快十年了,寫過的程序不少。從這些年的風風雨雨中走過來,不能不有些體會。說到體會,最大的體會就是這條路太漫長。
一、一輩子有你 苦一點也願意
我沒有奢望大家把寫程序和文學創作相提並論,但其中的苦楚卻不是一個普通用戶能夠體味的。為了寫好一個程序,我們度過太多不眠之夜。有個朋友如此評價道,「寫程序簡直是在自殺,巨費精力巨費腦子巨累」。但還是有許多人不畏其苦,前仆後繼。
我剛接觸到電腦就發現電腦的妙處:電腦遠沒有人那麼復雜,如果你的程序寫得好,你就可以和電腦有著非常融洽的關系,就可以指揮電腦干你想乾的事,這個時候,你是十足的主宰。每每坐在電腦面前,你就如同在一個王國里巡行。
電腦里的世界很大,程序員是活在自己想像的王國里。你可以細微到電腦里的每一個位元組、每一個比特的東西。
這樣的日子簡直就是天堂般的日子,很多人都愛上了這樣的日子。
不少人認為程序員最多干到三十五歲就可以收山,腦子也差不多該歇歇了,並認為寫程序是年輕人的事情,到了一定年齡,估計沒什麼人再當程序員。
我剛畢業時,意氣風發,也想先吃點苦,到了三十歲就不幹了。年長一點後就發現了自己的無知。一個人大學畢業就二十一二歲,技術成熟一點後可能二十五,接著就是票子、妻子和房子等等諸多忙不完的事情。一切搞掂的時候,也許就是三十五歲。如果三十五歲就放棄的話,我們就不用選擇程序員的道路。
電腦進入我國時間不短,但真正大規模開始用,還是八五年PC登陸我國時候的事。因此國內真正寫電腦程序的人最長也就寫了十幾年(不知道是否還有這樣的人)。由於電腦應用在國內時間比較短,國內程序開發的主力以三十五歲以下的年輕人為主,但這並不表示程序員如同紅粉佳人般的容易衰老。美國和台灣地區的開發者以三四十歲的人為主。開始寫程序的時候,我們覺得沒有什麼不能做的(現在還能聽到這樣的豪言壯語),而且更要命的是,好象我們特別聰明,特別適合開發軟體,比老外強得多。當我們真正接觸那些傑出的國外開發人員的時候,發現他們太厲害了,都有十多年的開發經驗,絕對多數的產品出自這些有豐富開發經驗的程序員之手。
畢業後,編程不僅僅是愛好,而且成了一輩子的工作,可以肯定會干一輩子,雖然我沒有打算一生只干這一件事。用一生來編程是一件既容易又困難的事。如果碌碌無為,為交差寫點程序,這樣寫兩輩子的人都有。但如果想全身心地寫程序,寫十年都不是一件容易的事。現在我的不少朋友都洗手了,有時我也有這種想法,但一旦面對電腦,立刻頓悟:電腦還是自己最擅長乾的事,也是最順手的事。
二、我的未來不是夢
有的人刻苦學習編程技術,努力提高編程水平,並把高級程序員作為追求的目標,甚至是終身的奮斗目標。後來參與了真正的商品化軟體開發後,感到非常困惑和茫然。
當我上大學的時候,高級程序員也曾是我的目標。當時,我通過等級考試獲得了高級程序員證書,並在自己的名片上印上「高級程序員」的字樣。後來,我的水平提高了,似乎也成了大家認可的好程序員了。這個時候我卻開始茫然。我希望我的技術能得到別人的承認,當得到別人的承認後,我又能如何呢?後來我發現,無論成為多麼高級的程序員都沒用,關鍵是是否能夠出想法、出產品,你的勞動是否能被社會承認,是否能為社會創造財富。
我的未來是明確的,開發出高質量的適用社會的產品,為社會創造財富。
三、每一個程序都是藝術品
有人認為程序員沒有什麼了不起,不過是一種熟練工種而已;也有人把編程說成是藝術創作,捧上天。這兩種意見爭論比較激烈,甚至可以說針鋒相對。
我們換個工種來看,石匠應該是熟練工種,跟藝術似乎沾不上邊。;但正是這些石匠,給我們留下了數不勝數的文物古跡,如樂山大佛、莫高窟等等。應該說這此石匠給我們留下了無窮的文化財富。我認為編程的工作和石匠比較相似,是技術,也是藝術。
現代軟體工業已具相當規模,很多軟體的完成需要的是大兵團作戰。一名精通程序員接受編寫某一塊的任務後,往往只是寫代碼,發揮的餘地很小。在大項目中,很多程序員只能了解到和自己所編模塊相關的很局部的細節,另外還受到開發環境的限制,真的很難體會到自己在從事「藝術」創造,更多的時候是感到自己在從事重體力勞動。有的時候還擔心自己苦苦參與的這個項目究竟有沒有意義,是不是在同類產品中有競爭力,會不會開發出來以後就因為硬體的發展、操作系統的換代而過時......
編程是技術活,才有可能大規模進行,才會有軟體工程的理論。也正是編程具備藝術創作的特點,我們的生活才會有如此多的好軟體產品。寫一個程序需要付出腦力和體力,當我—我們—某個群體完成一個程序之後,在我們的眼裡,每一個程序就都是藝術品。

程序員應具備的素質
前言
程序員是一種技術工作,在IT的發展中有相當重要的地位,從底層硬體通訊協議的建立, 到數據傳輸層的處理,到操作系統的建設,到資料庫平台的建設,一直到應用層上各種數 據營銷平台的搭建,程序員在裡面都扮演著舉足輕重的角色並為IT事業的發展做出了巨大 的貢獻。

中國有很多精於編碼的人,但是中國軟體行業,尤其是網路應用開發方面誤區很大,很難形成有規模的軟體開發力量和產品能力,不但比美國差距甚遠,和印度相比也是頗有不 如。這些問題不是在於中國程序員的智商和工作努力狀況,也不是在於國家和民間對開發 的投入程度,而是很大程度上,有一些對技術,對程序開發,對項目設計方面的思想誤 區,這些誤區,導致了軟體行業的產品化能力不足,缺乏規模化和大型復用系統研發能 力,可以說,改變認識誤區,是解決軟體行業小作坊模式和個體英雄模式所帶來的局限性 的重要工作。

中國有很多小朋友,他們18,9歲或21,2歲,通過自學也寫了不少代碼,他們有的代碼寫的很漂亮,一些技術細節相當出眾,也很有鑽研精神,但是他們被一些錯誤的認識和觀點左右,缺乏對系統,對程序的整體理解能力,這些人,一個網上的朋友說得很好,他們實際 上只是一些Coding fans,壓根沒有資格稱為程序員,但是據我所知,不少小網路公司的 CTO就是這樣的coding fans,拿著嚇人的工資,做著嚇人的項目,項目的結局通常也很嚇人。

一、程序員基本素質
作一個真正合格的程序員,或者說就是可以真正合格完成一些代碼工作的程序員,應該具有的素質。
1:團隊精神和協作能力
把它作為基本素質,並不是不重要,恰恰相反,這是程序員應該具備的最基本的,也是最 重要的安身立命之本。把高水平程序員說成獨行俠的都是在囈語,任何個人的力量都是有 限的,即便如linus這樣的天才,也需要通過組成強大的團隊來創造奇跡,那些遍布全球 的為linux寫核心的高手們,沒有協作精神是不可想像的。獨行俠可以作一些賺錢的小軟 件發點小財,但是一旦進入一些大系統的研發團隊,進入商業化和產品化的開發任務,缺 乏這種素質的人就完全不合格了。
2:文檔習慣
說高水平程序員從來不寫文檔的肯定是乳臭未乾的毛孩子,良好的文檔是正規研發流程中 非常重要的環節,作為代碼程序員,30%的工作時間寫技術文檔是很正常的,而作為高級 程序員和系統分析員,這個比例還要高很多。
缺乏文檔,一個軟體系統就缺乏生命力,在未來的查錯,升級以及模塊的復用時就都會遇 到極大的麻煩。

3:規范化,標准化的代碼編寫習慣
作為一些外國知名軟體公司的規矩,代碼的變數命名,代碼內注釋格式,甚至嵌套中行縮 進的長度和函數間的空行數字都有明確規定,良好的編寫習慣,不但有助於代碼的移植和 糾錯,也有助於不同技術人員之間的協作。
有些coding fans叫囂高水平程序員寫的代碼旁人從來看不懂,這種叫囂只能證明他們自 己壓根不配自稱程序員。代碼具有良好的可讀性,是程序員基本的素質需求。
再看看整個linux的搭建,沒有規范化和標准化的代碼習慣,全球的研發協作是絕對不可 想像的。

4:需求理解能力
程序員需要理解一個模塊的需求,很多小朋友寫程序往往只關注一個功能需求,他們把性 能指標全部歸結到硬體,操作系統和開發環境上,而忽視了本身代碼的性能考慮,有人曾 經放言說寫一個廣告交換程序很簡單,這種人從來不知道在百萬甚至千萬數量級的訪問情 況下的性能指標是如何實現的,對於這樣的程序員,你給他深藍那套系統,他也做不出太 極鏈的並訪能力。性能需求指標中,穩定性,並訪支撐能力以及安全性都很重要,作為程 序員需要評估該模塊在系統運營中所處的環境,將要受到的負荷壓力以及各種潛在的危險 和惡意攻擊的可能性。就這一點,一個成熟的程序員至少需要2到3年的項目研發和跟蹤經 驗才有可能有心得。
5:復用性,模塊化思維能力
經常可以聽到一些程序員有這樣的抱怨,寫了幾年程序,變成了熟練工,每天都是重復寫 一些沒有任何新意的代碼,這其實是中國軟體人才最大浪費的地方,一些重復性工作變成 了熟練程序員的主要工作,而這些,其實是完全可以避免的。

復用性設計,模塊化思維就是要程序員在完成任何一個功能模塊或函數的時候,要多想一 些,不要局限在完成當前任務的簡單思路上,想想看該模塊是否可以脫離這個系統存在, 是否可以通過簡單的修改參數的方式在其他系統和應用環境下直接引用,這樣就能極大避 免重復性的開發工作,如果一個軟體研發單位和工作組能夠在每一次研發過程中都考慮到 這些問題,那麼程序員就不會在重復性的工作中耽誤太多時間,就會有更多時間和精力投 入到創新的代碼工作中去。

一些好的程序模塊代碼,即便是70年代寫成的,拿到現在放到一些系統裡面作為功能模塊 都能適合的很好,而現在我看到的是,很多小公司軟體一升級或改進就動輒全部代碼重 寫,大部分重復性工作無謂的浪費了時間和精力。
6:測試習慣
作為一些商業化正規化的開發而言,專職的測試工程師是不可少的,但是並不是說有了專 職的測試工程師程序員就可以不進行自測;軟體研發作為一項工程而言,一個很重要的特 點就是問題發現的越早,解決的代價就越低,程序員在每段代碼,每個子模塊完成後進行 認真的測試,就可以盡量將一些潛在的問題最早的發現和解決,這樣對整體系統建設的效 率和可靠性就有了最大的保證。

測試工作實際上需要考慮兩方面,一方面是正常調用的測試,也就是看程序是否能在正常 調用下完成基本功能,這是最基本的測試職責,可惜在很多公司這成了唯一的測試任務, 實際上還差的遠那;第二方面就是異常調用的測試,比如高壓力負荷下的穩定性測試,用 戶潛在的異常輸入情況下的測試,整體系統局部故障情況下該模塊受影響狀況的測試,頻 發的異常請求阻塞資源時的模塊穩定測試等等。當然並不是程序員要對自己的每段代碼都 需要進行這種完整測試,但是程序員必須清醒認識自己的代碼任務在整體項目中的地位和 各種性能需求,有針對性的進行相關測試並盡早發現和解決問題,當然這需要上面提到的 需求理解能力。
7:學習和總結的能力
程序員是人才很容易被淘汰,很容易落伍的職業,因為一種技術可能僅僅在三兩年內具有 領先性,程序員如果想安身立命,就必須不斷跟進新的技術,學習新的技能。
善於學習,對於任何職業而言,都是前進所必需的動力,對於程序員,這種要求就更加高 了。
但是學習也要找對目標,一些小coding fans們,他們也津津樂道於他們的學習能力,一 會學會了asp,一會兒學會了php,一會兒學會了jsp,他們把這個作為炫耀的資本,盲目 的追逐一些膚淺的,表面的東西和名詞,做網路程序不懂通訊傳輸協議,做應用程序不懂 中斷向量處理,這樣的技術人員,不管掌握了多少所謂的新語言,永遠不會有質的提 高。
善於總結,也是學習能力的一種體現,每次完成一個研發任務,完成一段代碼,都應當有 目的的跟蹤該程序的應用狀況和用戶反饋,隨時總結,找到自己的不足,這樣逐步提高, 一個程序員才可能成長起來。
一個不具備成長性的程序員,即便眼前看是個高手,建議也不要選用,因為他落伍的時候 馬上就到了。
具備以上全部素質的人,應當說是夠格的程序員了,請注意以上的各種素質都不是由IQ決 定的,也不是大學某些課本里可以學習到的,需要的僅僅是程序員對自己工作的認識,是一種意識上的問題。

二、高級程序員/項目設計者還需具備的素質
那麼作為高級程序員,以至於系統分析員,也就是對於一個程序項目的設計者而言,除了應該具備上述全部素質之外,還需要具備以下素質:
第一,需求分析能力
對於程序員而言,理解需求就可以完成合格的代碼,但是對於研發項目的組織和管理者, 他們不但要理解客戶需求,更多時候還要自行制定一些需求,為什麼這么說呢?
一般而言,進行研發任務,也許是客戶提出需求,也許是市場和營銷部門提出的需求,這 時候對於研發部門,他們看到的不是一個完整的需求,通常而言,該需求僅僅是一些功能 上的要求,或者更正規些,可能獲得一個完整的用戶視圖;但是這都不夠,因為客戶由於 非技術因素多一些,他們可能很難提出完整和清晰,或者說專業性的性能需求,但是對於 項目組織者和規劃者,他必須能夠清醒認識到這些需求的存在並在完成需求分析報告的時 候適當的提出,同時要完整和清晰的體現在設計說明書裡面,以便於程序員編碼時不會失 去這些准則。
程序設計者必須正確理解用戶需求所處的環境,並針對性做出需求的分析,舉例而言,同 樣一個軟體通過ASP租用方式發布和通過License方式發布,性能需求可能就是有區別的, 前者強調的是更好的支撐能力和穩定性,而後者則可能更強調在各種平台下的普適性和安 裝使用的簡捷性。
第二,項目設計方法和流程處理能力
程序設計者必須能夠掌握不少於兩到三種的項目設計方法(比如自頂至下的設計方法,比如快速原型法等等),並能夠根據項目需求和資源搭配來選擇合適的設計方法進行項目的 整體設計。
設計方法上選擇不當,就會耽誤研發周期,浪費研發資源,甚至影響研發效果。
一個程序設計者還需要把很多功夫用在流程圖的設計和處理上,他需要做數據流圖以確立 數據詞典;他需要加工邏輯流圖以形成整體的系統處理流程。
一個流程有問題的系統,就算代碼多漂亮,每個模塊多精緻,也不會成為一個好的系統。 當然,做好流程分析並選擇好項目設計方法,都需要在需求分析能力上具有足夠的把 握。
第三,復用設計和模塊化分解能力
這個似乎又是老調重談,前面基本素質上不是已經說明了這個問題嗎?
作為一個從事模塊任務的程序員,他需要對他所面對的特定功能模塊的復用性進行考慮, 而作為一個系統分析人員,他要面對的問題復雜的多,需要對整體系統按照一種模塊化的 分析能力分解為很多可復用的功能模塊和函數,並針對每一模塊形成一個獨立的設計需 求。舉個例子,好比是汽車生產,最早每輛汽車都是獨立安裝的,每個部件都是量身定做 的,但是後來不一樣了,機器化大生產了,一個汽車廠開始通過流水線來生產汽車,獨立 部件開始具有一定的復用性,在後來標准化成為大趨勢,不同型號,品牌甚至不同廠商的 汽車部件也可以進行方便的換裝和升級,這時候,汽車生產的效率達到最大化。軟體工程 也是同樣的道理,一個成熟的軟體行業,在一些相關項目和系統中,不同的部件是可以隨 意換裝的,比如微軟的許多桌面軟體,在很多操作模塊(如打開文件,保存文件等等)都 是復用的同一套功能模塊,而這些介面又通過一些類庫提供給了桌面應用程序開發者方便 掛接,這就是復用化的模塊設計明顯的一個佐證。

將一個大型的,錯綜復雜的應用系統分解成一些相對獨立的,具有高度復用性的,並能僅 僅依靠幾個參數完成數據聯系的模塊組合,是作為高級程序員和系統分析員一項最重要的 工作,合適的項目設計方法,清晰的流程圖,是實現這一目標的重要保證。
第四,整體項目評估能力
作為系統設計人員,必須能夠從全局出發,對項目又整體的清醒認識,比如公司的資源配 置是否合理和到位,比如工程進度安排是否能最大化體現效率又不至於無法按期完成。評 估項目整體和各個模塊的工作量,評估項目所需的資源,評估項目可能遇到的困難,都需 要大量的經驗積累,換言之,這是一種不斷總結的累計才能達到的境界。在西方一些軟體 系統設計的帶頭人都是很年長的,比如4,50歲,甚至更老,他們在編碼方面已經遠遠不 如年輕人那樣活絡,但是就項目評估而言,他們幾十年的經驗積累就是最重要和寶貴的財 富。中國缺這么一代程序員,主要還不是缺那種年紀的程序員,而是那種年紀的程序員基 本上都是研究單位作出來的,都不是從專業的產品化軟體研發作出來的,他們沒有能積累 那種產品化研發的經驗,這也是沒有辦法的事情。
第五,團隊組織管理能力
完成一個項目工程,需要團隊的齊心協力,作為項目設計者或研發的主管人,就應當有能 力最大化發揮團隊的整體力量,技術管理由於其專業性質,不大同於一般的人事管理,因為這裡面設計了一些技術性的指標和因素。
首先是工作的量化,沒有量化就很難做到合適的績效考核,而程序量化又不是簡單的代碼 行數可以計算的,因此要求技術管理人員需要能真正評估一個模塊的復雜性和工作量。
其次是對團隊協作模式的調整,一般而言,程序開發的協作通常分為小組進行,小組有主 程序員方式的,也有民主方式的,根據程序員之間的能力水平差距,以及根據項目研發的 需求,選擇合適的組隊方式,並能將責權和成員的工作任務緊密結合,這樣才能最大發揮 組隊的效率。
一個代碼水平高的人,未必能成為一個合格的項目研發主管,這方面的能力欠缺往往是容 易被忽視的。

綜上可以看到,作為一個主管研發的負責人,一個項目設計者,所需要具備的素質和能力 並不是程序代碼編寫的能力,當然一般情況下,一個程序員通過不斷的總結提高達到了這種素質的時候,他所具有的代碼編寫能力也已經相當不簡單了,但是請注意這裡面的因果 關系,一個高水平的項目設計者通常已經是代碼編寫相當優秀的人了,但是並不是一個代 碼相當優秀的程序員就可以勝任項目設計的工作,這裡面存在的也不是智商和課本的問 題,還是在於一個程序員在積累經驗,逐步提升的時候沒有意識到應當思考哪方面的東 西,沒有有意識的就項目的組織和復用設計進行揣摩,沒有經常性的文檔習慣和總結習 慣,不改變這些,我們的合格的項目設計者還是非常欠缺。

另外,為防止有無聊的人和我較真,補充一點,本文針對目標是作商業化的軟體項目和工程,那些科研機構的編程高手,比如演算法高手,比如圖象處理高手,他們的工作是研究課題而非直接完成商業軟體(當然最終間接成為商業產品,比如微軟研究院在作的研究課 題),因此他們強調的素質可能是另外的東西,這些人(專家),並不能說是程序員,不能用程序員的標准去衡量。

三、軟體項目研發的設計流程
最後補充一點東西,一個軟體項目研發的設計流程是怎樣的呢?以通常標準的設計方法為例,(不過筆者喜歡快速原型法)。
第一個步驟是市場調研
技術和市場要結合才能體現最大價值。

第二個步驟是需求分析
這個階段需要出三樣東西,用戶視圖,數據詞典和用戶操作手冊。
用戶視圖是該軟體用戶(包括終端用戶和管理用戶)所能看到的頁面樣式,這裡麵包含了 很多操作方面的流程和條件。

數據詞典是指明數據邏輯關系並加以整理的東東,完成了數據詞典,資料庫的設計就完成 了一半多。
用戶操作手冊是指明了操作流程的說明書。
請注意,用戶操作流程和用戶視圖是由需求決定的,因此應該在軟體設計之前完成,完成 這些,就為程序研發提供了約束和准繩,很遺憾太多公司都不是這樣做的,因果顛倒,順 序不分,開發工作和實際需求往往因此產生隔閡脫節的現象。
需求分析,除了以上工作,筆者以為作為項目設計者應當完整的做出項目的性能需求說明 書,因為往往性能需求只有懂技術的人才可能理解,這就需要技術專家和需求方(客戶或 公司市場部門)能夠有真正的溝通和了解。
第三個步驟是概要設計
將系統功能模塊初步劃分,並給出合理的研發流程和資源要求。 作為快速原型設計方法,完成概要設計就可以進入編碼階段了,通常採用這種方法是因為 涉及的研發任務屬於新領域,技術主管人員一上來無法給出明確的詳細設計說明書,但是 並不是說詳細設計說明書不重要,事實上快速原型法在完成原型代碼後,根據評測結果和 經驗教訓的總結,還要重新進行詳細設計的步驟。

第四個步驟是詳細設計
這是考驗技術專家設計思維的重要關卡,詳細設計說明書應當把 具體的模塊以最』干凈』的方式(黑箱結構)提供給編碼者,使得系統整體模塊化達到最 大;一份好的詳細設計說明書,可以使編碼的復雜性減低到最低,實際上,嚴格的講詳細 設計說明書應當把每個函數的每個參數的定義都精精細細的提供出來,從需求分析到概要 設計到完成詳細設計說明書,一個軟體項目就應當說完成了一半了。換言之,一個大型軟 件系統在完成了一半的時候,其實還沒有開始一行代碼工作。
那些把作軟體的程序員簡單理解為寫代碼的,就從根子上犯了錯誤了。

第五個步驟是編碼
在規范化的研發流程中,編碼工作在整個項目流程里最多不會超過1/ 2,通常在1/3的時間,所謂磨刀不誤砍柴功,設計過程完成的好,編碼效率就會極大提 高,編碼時不同模塊之間的進度協調和協作是最需要小心的,也許一個小模塊的問題就可 能影響了整體進度,讓很多程序員因此被迫停下工作等待,這種問題在很多研發過程中都 出現過。編碼時的相互溝通和應急的解決手段都是相當重要的,對於程序員而言,bug永 遠存在,你必須永遠面對這個問題,大名鼎鼎的微軟,可曾有連續三個月不發補丁的時候 嗎?從來沒有!
第六個步驟是測試
測試有很多種:
按照測試執行方,可以分為內部測試和外部測試
按照測試范圍,可以分為模塊測試和整體聯調
按照測試條件,可以分為正常操作情況測試和異常情況測試
按照測試的輸入范圍,可以分為全覆蓋測試和抽樣測試
以上都很好理解,不再解釋。

總之,測試同樣是項目研發中一個相當重要的步驟,對於一個大型軟體,3個月到1年的外 部測試都是正常的,因為永遠都會又不可預料的問題存在。

完成測試後,完成驗收並完成最後的一些幫助文檔,整體項目才算告一段落,當然日後少 不了升級,修補等等工作,只要不是想通過一錘子買賣騙錢,就要不停的跟蹤軟體的運營 狀況並持續修補升級,知道這個軟體被徹底淘汰為止。

寫這些步驟算不上賣弄什麼,因為實話講我手邊是一本《軟體工程》,在大學里這是計算 機專業的必修課程,但是我知道很多程序員似乎從來都只是熱衷於什麼《30天精通VC》之 類的,他們有些和我一樣游擊隊出身,沒有正規學過這個專業,還有一些則早就在混夠學 分後就把這些真正有用的東西還給了老師。
網上現在也很浮躁,一些coding fans亂嚷嚷,混淆視聽,實際上真正的技術專家很少在 網上亂發帖子的,如筆者這樣不知天高地厚的,其實實在是算不上什麼高手,只不過看不 慣這種對技術,對程序員的誤解和胡說,只好挺身而出,做撥亂反正之言,也希望那些還 沉迷於一些錯誤人士的coding fans們能認真想想,走到正途上,畢竟那些聰明的頭腦還 遠遠沒有發揮應有的價值。

Ⅳ 小公司程序員的編程水平與BAT大公司相比,有多大差距

網友一:

單純從技術上來說,大公司是小公司沒法比的,大公司系統要更加復雜,研究的東西更加深入。

比如高並發,大數據,小公司沒有那麼大流量和數據量根本沒辦法研究。

大公司一個系統N台機器,為了節省資源就要研究怎麼使機器能力最大化,優化代碼,優化邏輯。

小公司可能一兩台機器就能支撐一個系統,只要沒bug就能正常運行。

但是大公司大部分普通程序員,由於做得太專一了,基本上在某一方面做得不錯,整體能力差很遠,但是自己覺得啥都行。

這么比喻吧,如果說把程序員比作廚師。

普通公司的程序員基本上是各個飯店的大廚,啥菜都會做。

bat是御膳房,程序員什麼大菜都見過,但基本上一個大菜也做不了。很多人就是御膳房後勤部切蔥花大隊的切蔥花手。

Ⅵ 未來程序員的薪資將會發生怎樣的變化

隨著大數據、雲計算、物聯網、人工智慧等技術的發展,未來程序員的薪資待遇將呈現出以下幾個特點:

第一:高端人才(具備創新研發能力)的短缺將導致薪資待遇持續攀升。 目前整個IT領域正在進行產業結構化升級,在物聯網、人工智慧等領域需要大量的高端人才進行技術攻關和落地實踐,由於人工智慧等高端人才的培養周期相對較長,所以在未來較長一段時間內,高端人才的薪資待遇將持續攀升。

第二:中高端人才(具備較強的研發能力)待遇穩定提高。 中高端人才是目前推動IT領域發展的主力軍,近些年隨著互聯網領域的快速發展,整個行業的中高端人才待遇已經得到了明顯的提升。下一步隨著產業互聯網的發展,整個IT行業的中高端人才待遇將在一個穩定的基礎上保持增長。

第三:中低端人才(應用級開發)薪資上升空間有限。 產業互聯網的發展必然會需要大量的中低端人才充斥到行業應用領域,由於崗位自身的技術含量有限且培養周期相對較短,所以中低端人才的薪資待遇並不會有明顯的提升。在傳統的IT領域,中低端應用級程序員的淘汰率也往往比較高,隨著技術不斷更新,不少應用級程序員因為無法適應新技術而選擇轉行。

從IT行業的發展趨勢來看,未來雖然IT領域會持續釋放出大量的就業崗位,但是對人才的要求也會逐漸提高。如果未來想在程序員的道路上走的更遠,一定要走研發級程序員路線,這樣不僅能穩步提升自己的薪資待遇,職業生命周期也有明顯的優勢。

對於廣大的大學生和初級程序員來說,讀研是一個不錯的選擇。

作者簡介:中國科學院大學計算機專業研究生導師,從事IT行業多年,研究方向包括動態軟體體系結構、大數據、人工智慧相關領域,有多年的一線研發經驗。

歡迎關注作者,歡迎咨詢計算機相關問題。

現在程序員的工資,在我看來是有一定水分的,但是和前五年、前十年相比,已經被擠出去很多了;未來程序員的工資,兩極分化可能會比較嚴重,高的依然很高,但是跨行參加個程序員培訓班,想通過半年的培訓就找到一份高工資的工作,會非常難了。

程序員的工資並沒有想像中那麼高

未來入門門檻越來越高,低水平程序員日子不好過

近十來年,計算機一直是熱門行業,所以一方面有很多大學生選擇這個專業,另一方面各種培訓機構也在「量產」軟體程序員;我在北京這十來年,見到最誇張的時候,一個非計算機專業的學生,進培訓班半年,出來就能找到一份月薪幾千的工作,半年後跳槽就能月薪過萬了。

但只有當大潮退去的時候,你才能知道誰在「裸泳」,當整個行業不在「瘋狂」的時候,混日子的程序員一定會被淘汰。

現在越來越多的公司在招聘程序員的時候,會看這個人的學歷、能力和工作經驗,而不會「是根兒菜就先撿到碗里」,大家也不要問「初中畢業參加程序員培訓班,能找到工作么?」,「四十歲計算機小白想轉行程序員,來得及么?」。

沒問題,但過程一定很難!

未來優秀的程序員,薪資依然會很高

未來很長時間,程序員的缺口依然很大,只不過行業從原來的「野蠻生長」,變成了「優勝劣汰」;優秀的程序員需要持之以恆的學習,很多堅持不下來的,要麼轉行,要麼只能接受低薪;

程序員這個行業的特殊性,程序員小哥哥們的「腦袋」是最重要的生產資料,優秀的程序員是可以做到「一頂五」的,並且隨著自動化工具的推廣,只會「體力勞動」的程序員會逐漸被淘汰,剩下的必將是高薪的「人才」;

我們單位每年校招的時候,好學校計算機專業畢業生都「搶」不到...

我將持續分享Java開發、架構設計、程序員職業發展等方面的見解,希望能得到你的關注。

有個段子說,程序員之間是存在鄙視鏈的,我想說當你踏入這一行的時候,你會發現這不只是一個段子,而是真實存在的。

一、即使初入行,雖然都是程序員,但是起點薪資差距就已經能很明顯看出差距的。

看一組招聘網站的數據

測試的工資

Java開發的工資

人工智慧方向的程序員

圖里是不是可以一目瞭然,程序員的薪資存在明顯差異?

程序員嘛,大家應該也都知道,測試、開發這些,而測試分什麼功能工作、自動化測試、性能測試等等,開發分什麼前端開發、後端開發、Java開發等,還有人工智慧等方向的。

其中最容易入門的是哪個?是的,很多人都知道就是測試。 最容易入門的測試人員,其實只需要你有執行力就夠了,很明顯就是會執行測試用例就行,不需要你太多的思考,不過這個時候你想拿個五六七八千的還是可以的。

很多外行人總覺得搞IT的工資很高,程序員動不動就年薪百萬,不是的,你知道優秀的程序員和普通的程序員之間的差距有多大嗎?你知道不同食物鏈端的程序員的上升和漲薪有多難嗎?而且你知道低端程序員和高端程序員之間的起點差距就很大了嗎?

很多人總覺得說,我大學沒畢業參加培訓機構轉行程序員可以嗎?可以是可以,但是因為培訓機構出來的人越來越多的,加上資深的HR基本上從簡歷上有的就能判斷出是培訓機構出來的,這個時候你連敲門磚都敲不了,即使有也是那種要求很低的,這種的薪資是真的不高的,而且對於你的發展是真的很受限制的。

目前我接觸的面試主要是針對於測試工程師的,招聘對象在畢業1年到3年之間的初級測試工程師,為什麼我們不太想要3年以上的呢?一是超過3年的思維大多數比較固定化,二是薪資要的高,三是大多數能力真的很一般,那麼這樣就會造成啥?造成當你工作好幾年還是個初級測試工程師的時候,跳槽工資也不會很高,而這個趨勢會越演越烈。

所以說到底,低端的多且技術一般(即編程能力一般),工資再過多久都不可能升很高。

就目前的市場來說,程序員其實已經開始兩極化了,高的那一撥真的工資是以年薪百萬算的,而低的有可能年薪都不到10萬。而且程序員不是一行越老越吃香的行業,一定是那一批吸收新知識掌握新技術的人,才能是說邁入高端程序員的。

所以未來程序員的薪資會變得越來越兩極化,因為大批加入IT行業的人,特別是非科班出身然後只是經過了短短幾個月的培訓的人,你會發現你很難接觸大公司,甚至你有可能一直只能在外包,這個時候你工作1到3年你會發現比剛畢業或者剛轉行的要強一點,但是當你工作了5年之後,你會發現你的薪資怎麼的也上不去。

當低端的程序員越來越多甚至開始達到飽和的時候,市場價格就不可能會有多大的提升空間,但是那些高端的搶手的程序員,他們一定會工資越來越高的,所以未來程序員的薪資一定會比現在的更加兩極化,而且擁有一批高端程序員的公司一定會走得更快和更遠,他們就越有資本吸引更高端的程序員了。

PS:每周篩選測試簡歷上百份,面試過多個測試候選人,目前正在進修測試技能

所有職業的收入預期,無一例外都與它所在行業的興衰關聯。互聯網行業雖然已經發展多年,但仍不停有熱點和新概念出現。加上傳統行業的信息化需求巨大。所以程序員的需求會長期存在。

雖然現在很多人進入程序員這個行業,但程序員的流失率更大。所以在供不應求的情況下程序員的收入還是看好的。

互聯網我認為IT領域未來的發展方向, 從實體方面來看一定是智能設備和物聯網,從領域來看一定是互聯網+,未來的網路將會越來越智能。

互聯網是網路與網路,網路與人的連接;而物聯網就是物體與網路,人與網路的連接。阿里巴巴的投資人孫正義在互聯網大會上說過:「今天每個人大概會有兩個移動設備,2020年的時候,每個人連接的設備的數量會達到一千個」。

互聯網將會應用的越來越廣泛, Python+人工智慧、Java+大數據、 游戲 開發的人才在未來的三五年內應該都是緊需的人才。 隨著大數據時代的到來, 演算法/研究方向的高端人才將變得及為緊缺。

一個初級的Java工程師,薪資都是從8K起,更別說技術大牛CTO之類的年薪過百萬也不是瞎說!

薪水高,企業需求量大,讓很多人趨之若鶩。


2018年,教育部撤銷了很多專業。

為什麼這些專業一夜之間會被撤銷呢?

據權威解釋:主要原因是 就業問題。

很多非熱門的專業招生,造成學生就業困難。而個別不符合市場未來發展方向,前景不明朗的專業也終會被淘汰。

對於被取消該院校的專業的在校大學生來說,或許有一種「還沒畢業就有種被 社會 淘汰了的感覺......」,因為報考的專業被取消,也就意味著 社會 需求並不是很大,或者可以說 社會 就業率低,擔心自己畢業後找不到合適的工作。

那麼,撤銷了這些專業,

現在,又有哪些新專業比較火呢?

雖然有很多專業被取消了,但是全國也新增2072個本科專業,不久前,人力資源和 社會 保障部正式發布13個新職業,主要集中在高新技術領域,由人工智慧、最新的數字技術催生出來。其中新增最熱門的專業要數: 機器人工程和人工智慧。

這,無疑是個風向標。

教育部公布2018年度《普通高等學校本科專業備案和審批結果》,其中,全國各大高校新增備案最多的4個本科專業分別是數據科學與大數據技術(196所)、機器人工程(101所)、智能科學與技術(96所)、智能製造工程(50所);新增審批最多的3個本科專業分別是人工智慧(35所)、網路空間安全(25所)、會計學(13所)。

應市場需求, 人工智慧 專業開設院校數量穩居第一。而且,這個專業將於2019年在全國首次招生。

Python作為一種動態、面向對象的主流腳本語言,由簡單易學、免費開源、可移植性高、速度快等特點,得到了越來越多開發者的青睞,同時Python還有豐富的庫以及嵌入性,這也大大解放了開發者的勞動力,讓大家省去很多碼字時間,做更高級的思考。Python開發工程師們的年薪,普遍可以在25萬-50萬之間。

不管是Java還是Python,未來需求會這些變成語言的程序員肯定會越來越多,薪資肯定也會提升。

現在it行業成群體性發展bat這種都是生態鏈式發展今後程序員應該待遇成兩級分化

程序員差別很大,技術層次差別很大,不好說啊。

不會有什麼變化 這是一個有價值的工作 一般人做不了

兩極分化更嚴重,,高端人才比如人工智慧,視覺處理等高端人才的需求增大導致薪資還會持續增長,普通的程序員的工資不會和現在有太大差

Ⅶ 眼下,北上廣深,程序員的待遇差距很大嗎

北上廣都是一線城市,程序員的呢待遇差別不大,一線城市和二三線城市程序員的待遇差別比較大。二三線城市首先是沒有那麼多的互聯網公司,對程序員的需求也不大。比如說在一個小的縣城,幾乎就沒有公司需要程序開發的人員。

Ⅷ 初級程序員、中級程序員、高級程序員最大的區別是什麼

程序員之間也是存在很大的區別,他們之間最大的區別主要表現這這個方面,跟大家分享一下。

  1. 能力。一些程序員剛剛進入一個單位,學習的東西還不多,他們的能力差距要比老員工差很多。

  2. 經驗。有的程序員,自身的能力是提升上去了,但是,由於呆的時間相對比較短,經驗還不是很足,面對一些疑難雜症,還是不能解決。

  3. 薪資待遇。因為能力不同,所以獲得的回報也是不一樣的,一般高級程序員的薪資都是非常高的,畢竟他們能夠解決很多困難以及復雜的問題。

當然,除了這幾個方面之外,還有一些也是有差距的,比如說頭發,思維以及工齡等等。

閱讀全文

與差距很大程序員會怎麼說相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:671
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:485
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:382
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:349
風翼app為什麼進不去了 瀏覽:778
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:150
伊克塞爾文檔怎麼進行加密 瀏覽:892
app轉賬是什麼 瀏覽:163