㈠ 程序員能幹一輩子嗎(程序員能幹一輩子嗎知乎)
程序員是吃青春飯的嗎,可以干到多少歲?作為一個技術老兵,在技術行業內混了十幾年了,明顯能感覺到目前國內軟體開發工作,在某些行業就是吃青春飯般的存在,尤其是表現在互聯網公司,而且公司越大加班的瘋狂程度越強,互聯網公司更加喜歡招收一些年輕人畢竟工資相對低一點,沖勁還足最關鍵能不惜體力的加班,國內互聯網公司大部分做的事情跑馬圈地,應用級的開發居多,所以難度不是很高,有了2,3年的工作經驗就可以跟著做了,誰的執行力強能夠加班更加被公司所喜愛,很多老程序員在互聯網公司體驗幾年基本上就回歸傳統軟體企業了。
很多公司在招聘的時候發現年齡超過35歲就開始有意設置門檻了,畢竟這個年齡段的程序員人生閱歷也比較豐富,對於職場上的一些事情也摸得比較透徹,說的不好聽就是職場的老油條了,公司出個什麼政策這幫人看到比較徹底,不容易忽悠,年輕點的更加容易被接受,所以說成是吃青春飯的職業有點誇張,但一定程度上也能說得過去,國外40多歲繼續做研發的環境要不國內還是好很多,但也在一定程度上找工作受到一定的制約,現在過40多歲如果還在寫代碼肯定被周圍的人議論了,都這么大了也沒混上個管理職位之類,現在這個年齡段還在一線寫代碼的數量也不在少數,基本上屬於公司頂樑柱存在,絕大部分做著技術管理,並沒有完全脫離技術崗位,遇到難點還是上陣去解決問題。
老程序員如何在技術生涯找好自己的方向點?
1.盡早向技術管理方向轉移
越是拖到最後完成轉型形式越是被動,管理是一種學問,不像是玩技術你把自己管理好久萬事大吉了,技術類的管理如果在技術能力到位的情況下可以,以技術服人這樣無形之中減少了管理的阻力,更加容易讓底下的人信服,平時多補一些管理方面的基礎。如果有轉的想法今早實施,做什麼事情都要趁早。
2.將技術進行到底
技術類在職場上的分支有兩個主項,一個是管理方向,可以沿著這個路線一直做到副總或者更高的級別;還有一個技術專家方向,對別的事情不感興趣就想著一輩子能研究點技術,也沒有什麼大的追求,在很多公司專門設置某個項目的技術專家稱號,職位基本上和技術經理持平,算是同一個級別,同樣是拿著這個級別的薪水。
技術職位如果技術足夠強,可以考慮直接在這個方向一直走向去,無論國內還是國外對於高級的技術專家永遠都是持開放的程度,金字塔上層的技術人才畢竟是少數,但也是技術領域一直欠缺的,如果喜歡技術並且乾的還不錯就可以考慮在這個方向上一直堅持到底。
3.轉行做別的職業,闖出另一番天地
很多程序員中間轉行挑戰別的行業,只要能把一個職業做好一定能夠把別的方向給弄好,嘗試新的天地未嘗不是一個方向,新的方向新的起點新的挑戰,可能帶來的是新的收獲。
作為一個程序員也有隨著年齡的增長有一種無形的壓力在心頭,能做的就是拚命提升自己的技術能力,擔心年齡大了淘汰,只能是繼續提升技術和管理水平。
希望能幫到你。
很多人都說程序員這個行業就是吃青春飯的,為什麼會有這樣的問題呢,難道程序員真的感到30歲就要退休了嗎,或者必須轉行嗎?程序員難道不就是敲代碼嗎,難道年紀大了敲代碼就不能敲不動了嗎?不是都說程序員靠經驗嗎,經驗越豐富,不就是技術越豐富嗎?作為過來人,今天索性沒啥事,就和大家一起聊聊這個話題吧。
首先、先說說為什麼會有這樣的傳言,為什麼會有這樣的說法吧。
第一個就是很多人在這個行業干久了,從大學畢業到30歲至少也得6,7年了吧,行業做久了很多人自己也會感到厭煩,也想換換新的行業,嘗試一下新的崗位,當然轉行有風險,所以很多人轉行都是轉比較靠近的,比如做運維、做產品、做教育、當然走管理路線也是,這些都是比較輕松好轉的行業,基本風險不大。
第二個就是很多做開發公司加班比較多,晚上下班回家比較晚,陪老婆孩子沒時間,況且加班熬夜身體吃不消,搞不好把身體搞垮了,而且大部分程序員都是懶得運動,健身的人,作息時間不規律,最後30歲的人居然熬成了快60歲的大爺,這就是為什麼很多人都說程序員就是禿頂(這里我要澄清一下不適所有程序員都是禿頂呀,至少我還完好的保留著頭發),在這里不得不替這些人傷心3秒鍾。最後連娶老婆都去不到,還有很多連說話都說不通的人,表達能力已經到達到了原始社會。
第三個就是很多那種在公司混日子,技術能力差一點的,以為公司就是可以養老的人,技術干不過別人,工資不見長,可以說非常佛系的,在這個行業混了個6,7年,終於待不下去了,壓力大呀,老婆孩子一家人的希望呀,最後選擇了轉行,最後離開的原因竟然是公司不需要這種人了,但是我們想想哪怕是爭一口氣也不會混到這么差呀。
其實呢,不是說程序員真的就是考吃青春飯,30歲之後就必須的轉行,想想原因還是在這些人自己身上,年輕不願意拼實力,不願意積累點能量,真正有技術的人,想想公司能放走嘛、高薪難道還差嗎,除非那公司真的做的有點過分,虧待功臣,卸磨殺驢呢,自己不爭氣在前,怎能怪別人呢。
當然加班、熬夜這些都是存在,但是其他行業也不好做,那些高管,有錢的職業經理人,哪一位不辛苦呢,而且其他行業也是一樣,老闆雖然壓榨,但是真正想要福利好的,除非公務員,不然工資很低,所謂功高者後祿,這個不會假。
另外當然也有很多願意嘗試新行業的人,願意挑戰,嘗試新的開始這也有很多。總的來說,程序員真的是不是吃青春飯呢,不能一概論之,有經驗,有能力的人,高薪,誰願意走。
絕大多數程序員確實是吃年輕飯。
不管你願意不願意承認,等你到40歲之後就知道了。
這里有個界定,從事研發的排除在外,從事開發的包括在內。要注意研發和開發是兩個不同的概念。
一般研究所,研究生院中的程序員多叫工程師,這類人是越老越值錢。年紀大經驗越多,能力扎實,對做研發突破苦難起到至關重要的意義。
而開發不同,開發更多是面相年輕人來做的,你開發一款軟體給60歲的老大爺們,且不說你開發的好不好,老大爺他也不會用。
一般從事開發的程序員在35-45歲時是個分水嶺,能力強,有水平能熬到領導層,或者能獨當一面,那麼就留下來。如果不能基本就被淘汰了。而這部分留下來的人只是少數。
為什麼程序員要年輕化?第一,上面說過,開發主要針對的用戶是年輕人,那麼只有年輕的程序員才知道年輕人喜歡什麼愛好什麼。讓一名60歲的老程序員寫一個游戲,能火起來的概率不大。第二,年輕人無牽掛,肯吃苦,能加班熬夜,工資待遇又相對低。上了年紀的程序員家裡有老婆孩子需要管,還有父母需要照顧,也沒有了年輕時干勁,思想也漸漸和社會主流脫鉤,並且工資還極高。這個時候如果這個老程序員不能為企業創收,那麼辭退一名老程序員,省下的薪水可以在招好幾個大學畢業生。
有些話不是空穴來風,也不是無能人的借口,看看各大企業裁員的年齡段就知道了。
只有碼農,靠蠻力,用體力而不是用腦力的程序員才是吃青春飯的人!
大多數程序員都認為程序員是個吃青春飯的職業,編程這個事只能幹到30歲,最多35歲吧。每每聽到這樣的言論,都讓人感到相當的無語……
有研究者用了最近5年內比較流行的技術Tag,然後用了一套比較嚴謹的演算法來查看那些所謂的「老程序員」是否在新技術上跟上不了,所謂跟不上,也就是這些老的程序員在回答這些新技術上並不活躍。所謂老,就是37歲以上的程序員。
老程序員和年輕的程序員對於一些新技術的學習來說也是差不多的,甚至有些項目還超過了年輕的程序員:
1、程序員技術能力上升是可以到50歲或60歲的。
2、老程序員在獲取新技術上的能力並不比年輕的程序員差。
由於如今許多的年輕程序員太浮躁了,才會說30歲是程序員的頂峰。
其實,對於大多數人來說,如果還沒有編程到30歲,還不能成為一個「合格」的程序員。所以,並不是編程編到30歲就玩完了,而是編程編到30歲才剛剛入門。
在我身邊,就有一些年齡在40以上,並且還對技術保持熱衷的「老程序員們」,他們無一不是身懷絕技,在公司身居要職或高管,成為公司最寶貴的技術保障。
工齡超過三十年了,做了一輩子程序員,單位還在不斷招人,所以還有事情做,沒有坐冷板凳,不存在什麼危機。。
公司也很重視加班,但我早就過了干體力活的階段,領導並不管我加不加班。進度慢了領導就會說你需要人嗎。
學新技能么,還好吧,java,c語言這樣的經典可以用一輩子,重要的是有編程思維,學習並使用哪種語言很容易。
做一輩子程序員肯定是可以的,只是很多人不願意而已。可能男人野心大了些吧,編程一輩子覺得很丟臉,總想往上爬。。身為女性就沒那麼多想法,人到中年,有人願意雇我們有口飯吃就滿足了,老老實實幹活的人,老闆不會不要的,換過幾次工作,並沒有遇到年齡障礙,也沒有刻意去經營人脈,你的表現如何,別人都是默默看在眼裡的。。
回顧一下,有幾點經驗,一是不管坐哪個職位,不能丟掉編程這個技能,做了很多項目的負責人,框架自己搭,核心模塊自己寫,技術掌握在自己手裡,項目完成有保障。。項目結束了,就要去當普通程序員,有一手過硬的編程技能,還是挺受歡迎的。二是不能總是生活在一個舒適圈裡,要不斷學習新知識,迎接新的挑戰,每次接受新的項目或任務,一定要有所突破,不能只是單純的重復。
我也算是這個行業的一位老兵了,從13年到現在也快八年了,程序員其實是挺費身體的,熬夜加班家常便飯,所以我覺得程序員是在吃青春飯,互聯網公司基本上都存在一個問題就是看誰下班的晚,不管你在公司有沒有在做事情,只要你下班比其他人晚那麼你的績效就一定不會差。至於我現在的話已經沒有經常加班了,偶爾發一下版,上下班都比較規律,這就是我還在堅持的原因,程序員能幹到多少歲這全看你自己,我身邊三十多歲依然在干程序員,雖然程序員吃青春飯,但是你自己也可以選擇往中層或者其他崗位去轉,肯定不能再像初出校園那樣,不然身體遲早吃不消的,禿頭,脂肪肝,亞健康,近視,腰椎間盤脫出這些都是普遍存在的,大家不要覺得程序員的工資就一定非常的高,這也要看地方,像重慶程序員的工資還真不如有些工種。
大多數程序員認為程序員是吃青春飯的工作。編程只能幹到30歲,最長可達35歲。我經常聽到這樣的話,都讓人感到適當的無語......
今天,我們來談談這個老話題......
首先,我們來看一篇論文《?》(英文版)。本文是來自北卡羅來納州立大學計算機科學系的兩個人,他們在StackOverflow.com上對用戶進行了相關的數據挖掘。一些數據出來了。(StackOverflow.com上的數據被公開,任何人都可以使用它進行分析和核算,所以這篇論文的實際情況還可以。
讓我們來看看他們的年齡分布圖:我們可以看到程序員年齡的正常分布(高點大約是25歲,但中點大約是29歲)然後,計算每個人的月營業額,這樣你就可以找到用戶的真實生動的時刻,這樣便於計算程序員的真正才能。(總聲望/活潑時刻),我可以得到他每個月均勻得到的Reputation。我們可以看到程序員的才能從25歲開始上升,並且直到50歲才會開始下降。因此,程序員不吃青春飯的。只有碼農,依靠蠻力,使用武力而不是腦力的程序員才是吃青春飯的人。
年齡大可以跟上新技能嗎?該論文的作者使用了過去5年更受歡迎的技能標簽,然後使用更謹慎的演算法來檢查所謂的「老程序員」是否跟上新技能。所謂的跟不上,也就是說,這些老程序員並沒有積極回答這些新技能的問題。所謂的老,就是是37歲以上的程序員。
我可以看到老程序員和年輕程序員在學習一些新技能方面相似,有些甚至超過了年輕的程序員。
論文的結論是:
1、程序員技能可以升至50或60歲。
2、老程序員在獲得新技能方面並不比年輕程序員差。
結論
從上面的數據可以看出,由於現在很多年輕程序員都太浮躁了,據說30歲是程序員的巔峰。事實上,對於大多數人來說,如果你沒有編程到30,你就不能成為「合格的」程序員。因此,並不是編程編到30歲就玩完了,而是編程編到30歲才剛剛入門。
這個問題,我應該比較有發言權,大城市呆過2年然後回了小城市,5年程序員轉行當老師。大部分程序員是吃青春飯的,因為大部分程序員干技術,只是停留在應用層面,沒有足夠的平台,5年後很難再有質的提升。技術有了提升後,還需要有足夠大的平台才能撐的起你的薪資。我離開程序員行業的導火索是見到某公司,辭退唯一的一個45歲架構師。當然如果你可以不要求高薪,放平心態,我相信很多公司還是願意要大齡程序員的。
到35歲還在基層那基本上就是沒希望了,隨著年齡增長,思維能力不如年輕人,如果不能升上去帶團隊,那隻能一直做基層碼農。
程序員三十以後就老了,一是技術更新太快,二是經常性熬夜加班,三十以後轉管理崗,搞技術吃不消了。
單純作為一個職業來說,程序員在中國能幹一輩子直到退休嗎?
單純就職業來說程序員當然可以做一輩子直到退休,如果你的腦力、體力都還跟得上的話。
但是,程序員的黃金年齡一般在25—35歲之前,超過這個年齡段無論是自身的體力還有腦力都不如從前,再加上後輩們也會成為崗位的威脅。
以上是我個人看法。
程序員到底能幹多久和自己的興趣愛好緊密聯系的,有些朋友本身就喜愛編程研究,這也許就是他的終生歸屬了,一直當成事業幹下去。還有一部分開發到一定階段後,因為某些原因可能會轉行出現。下面部分學習知識點:
1.例如字元串查找、子串、模式匹配等。?當在Lua中對字元串做索引時,第一個字元從1開始計算(而不是C里的0)。索引可以是負數,它指從字元串末尾反向解析。即,最後一個字元在-1位置處,等等。
2.字元串庫中的所有函數都在表string中。?它還將其設置為字元串元表的__index域。因此,你可以以面向對象的形式使用字元串函數。例如,string.byte(s,i)可以寫成s:byte(i)。
字元串庫假定採用單位元組字元編碼。
接收零或更多的整數。返回和參數數量相同長度的字元串。其中每個字元的內部編碼值等於對應的參數值。
數字編碼沒有必要跨平台。
string.mp(function[,strip])
3.返回包含有以二進制方式表示的(一個二進制代碼塊)指定函數的字元串。?之後可以用load調用這個字元串獲得該函數的副本(但是綁定新的上值)。如果strip為真值,二進制代碼塊不攜帶該函數的調試信息(局部變數名,行號,等等。)。
帶上值的函數只保存上值的數目。當(再次)載入時,這些上值被更新為nil的實例。(你可以使用調試庫按你需要的方式來序列化上值,並重載到函數中)
string.find(s,pattern[,init[,plain]])
4.查找第一個字元串s中匹配到的pattern)。?如果找到一個匹配,find會返回s中關於它起始及終點位置的索引;否則,返回nil。第三個可選數字參數init指明從哪裡開始搜索;默認值為1,同時可以是負值。第四個可選參數plain為true時,關閉模式匹配機制。此時函數僅做直接的「查找子串」的操作,而pattern中沒有字元被看作魔法字元。注意,如果給定了plain,就必須寫上init。
如果在模式中定義了捕獲,捕獲到的若干值也會在兩個索引之後返回。
string.format(formatstring,···)
5.返回不定數量參數的格式化版本,格式化串為第一個參數(必須是一個字元串)。格式化字元串遵循ISOC函數sprintf的規則。不同點在於選項*,h,L,l,n,p不支持,另外還增加了一個選項q。q選項將一個字元串格式化為兩個雙引號括起,對內部字元做恰當的轉義處理的字元串。該字元串可以安全的被Lua解釋器讀回來。
希望能幫到你,謝謝!
㈡ 軟體業的技術路線是什麼
技術路線和管理路線始終是每個程序員糾結的問題,也是各大論壇經常被辯論的問題。
然而一個有趣的現象是,在現實生活中,人們多願意承認自己不精通某項技術,卻很少有人願意承認自己不能做管理。技術方面有問題多能夠校正自我,而管理方面有了問題卻總認為是對方的錯,總之領導怨員工,員工怨領導,鬧得不可開交。
在中國傳統的官本位的思想中,不能不說管理路線佔了絕對性的優勢,尤其是在穩定的外企,管好管壞極難衡量的情況下。
做技術苦啊,相比於管理路線,有如下的弱勢:
首先,IT業的技術變化太快,弄的技術人員疲於奔命。年輕人可以每天晚上幾個小時的看新技術的書籍,而年紀偏大的你上有老下有小,做飯,洗衣,陪老婆,照顧老人小孩,逛超市,每天能有一個小時的學習時間十分不易了。如果是你已經很熟悉的領域,你自然可以用較少的時間就能達到年輕人較長時間看完的東西(理想狀態下),然而公司的項目所用的技術方向可不是隨你心願的。如果你是一個Java高手,碰巧公司買的一個第三方的庫是用C++寫的,需要對其進行封裝,如此艱巨的任務,工程師中你的薪水最高,你不入地獄誰入地獄啊。你總不能說:我只負責Java的部分,C++的別來找我吧。
也許你經常聽領導說:「編程主要靠思想,語言和平台無所謂」。然而如果你跳槽的時候,卻經常聽到面試官這樣說:「好像你沒有太多這方面的經驗嘛」,你卻不能以我很有編程的思想來回答。此矛盾之處著實使人困惑許久。技術路線還是分很多的方向的,正如武林有很多的門派。語言,操作系統等屬於內功,然而只有內功卻不足以行走江湖,必須還要有一定的套路,如Debug tool,profile tool,出現問題後的分析辦法,編程時候的各種習慣,一些非常管用的技巧等,都是因語言和平台不同而不同。雖然對於初級的工程師來說,這些不是很重要,然而工作三年五年之後,是否能夠熟練運用這些套路來准確的定位問題和解決問題,卻是區別你是初級工程師,還是高級工程師的一個標志。當然當你在上升到項目經理的時候,又可以只談編程思想的時候了。一句實話,一個要飯的不要因為聽富人說吃青菜養生就見肉也不吃。周易中,同樣在乾卦,同樣元亨利貞,初九則應潛龍勿用,九五則可飛龍在天了,不同的位,同樣的話,意義不同。
其次,沒有優先知情權。當任務到來的時候,美國那面的老大一般是先發郵件給項目經理的。項目經理會進行一系列統籌考慮後再選擇發給那些人。作為同項目經理同一級別的技術人員,是否提前或同時,甚至晚於與其他技術人員收到郵件,取決於你技術外的能力(你的reputation, 你和項目經理的關系等)。上面的文章也說過了,在外企,郵件是一門很大的學問,也決定了從屬關系。把本來你擅長的任務先發郵件給他人,從而變成了他人的任務,也不是不可能的事情。當然當美國老闆過來的時候,陪同和展示成果的,也多是管理人員的事情,雖然裡面全是你的心血。
其三,沒有資源支配權。項目經理一般可以支配多種資源的,如買硬體,Team building的經費,培訓的機會等。但是相同級別的技術人員卻沒有。
其四,沒有績效評定權。任何員工的績效都是基本由其report得頂頭上司起決定作用的。相同級別的技術人員可能會有一些評價做參考,但是你不會知道和你平級甚至下級的薪水和績效。
最後,沒有人事任免權。一個員工是否能夠進某個項目組,也基本是項目經理起決定作用的。一般的外企都會有推薦的制度,而通常會發現一般狀況下(被推薦人不是明顯的差),管理路線的人推薦到其他組的人比較容易錄取(同組推薦沒有推薦費啊)。大家總要多少照顧個面子嘛,萬一哪天要向對方的組推薦自己的人呢?
基於上述幾點,經濟基礎決定上層建築,你也就怪不得基層員工對你僅僅是因為技術而產生的尊敬,而對manager則是因為既威且信而產生的敬畏了。也許其實是你的建議是正確的,大家卻都同意按照manager的來做;也許你一把年紀還要和年輕人因一個小小的設計爭得面紅耳赤,而他在manager面前總是yes, ok, i am 100% agree;也許你因一項新技術不很精通而被新人鄙視;也許就沒有也許。
當前的中國是浮躁的,以上的原因造成大批大批的人湧入管理路線的獨木橋,也造成了一些不合格的管理者走上了管理崗位。也許有這樣的現象,明明在國外僅夠做高級工程師的在中國做了Team lead,卻在和普通工程師爭功勞;在國外僅夠做Team lead的,在中國做了manager,卻不能很好的領導多層化的組織結構。
這種情況是悲劇的,卻不僅僅在軟體業,包括高校(系主任更容易拿項目),包括醫院(院長更容易申請經費),包括研究所。
這也是為什麼總有轉管理,轉售前,轉銷售,甚至轉其他行業的論調的原因了。
其實技術路線也有它的好處,你可以埋頭認認真真研究自己感興趣的技術,兩耳不聞窗外事。而由於一直沒有放下技術,跳槽也相對容易的多,畢竟在中國,號稱會管理一個團隊的一抓一大把,而真的很有經驗的技術人員卻不是很多。
作為軟體工程師,我們應該找到一條屬於我們自己的路。
㈢ 一個優秀的程序員真的能頂10個普通的程序員嗎
在工作當中的話這句話是對的,因為優秀的程序員的重要性不言而喻。但是如果說他們比賽的話那可能就比不了了。
㈣ 普通的程序員和大神級的程序員有什麼區別
㈤ 互聯網行業哪個職位比較有前途
開篇,我想讓你知道一個職業是否有前途,需要看你付出多少,雖然付出不等於回報,但是沒有付出永遠不會有回報。所以職位的發展沒有覺得好與不好,只是選擇適合自己的崗位,才能在這個領域闖出一番自己的天地。
其次,一個互聯網公司和其他普通傳統行業的公司一樣,也需要一些基礎部門,比如財務、行政、市場、法務等。依據公司的性質和業務方向可能還有你所在的客服部(或銷售部)。但是除了這些常規的部門,互聯網行業還有研發、測試、設計、運營、產品、運維等部門。
回到本個問題的核心,這幾個具有互聯網特色的崗位如何發展會有前途?
一個產品的從0到1,需要一個完整的項目團隊依據項目流程做對應的工作。一個產品的生命周期大致都會經過產品-設計-開發-測試-運營-運維這些部門。
對於產品崗,雖然大家都在說「人人都是產品經理」,但是真的每個人都能做產品經理嗎?當用戶、需求、項目、團隊、戰略等全部向你迎面撲來時,你的能力是否能夠招架得住嗎?產品經理需要參與項目的全過程,如果沒有幾年的項目經驗,可能連和項目組人員溝通都很困難。目前市場很青睞有項目背景轉產品經理的技術人員,所以想要讓自己在產品市場更有競爭力,可以在技術崗先了解技術、熟悉項目流程等,然後有意識的培養產品思維、豐富產品相關的知識。
那我們選擇設計、開發、測試去聊聊,這些技術性崗位如何發展才有前途呢?
一、全鏈路UI設計
UI即User Interface(用戶界面)的簡稱,UI設計則是指對軟體的人機交互、操作邏輯、界面美觀的整體設計。好的UI設計不僅是讓軟體變得有個性有品味,還要讓軟體的操作變得舒適、簡單、自由、充分體現軟體的定位和特點。
設計崗也有精分,有交互設計、UI設計、甚至專職的插畫設計。2020年乃至以後,什麼樣的UI設計更受企業歡迎?UI設計怎樣才能讓在職場上更具核心競爭力?帶著這些問題我們從招聘網站上調研了大量UI設計師招聘崗位的職能需求,並且也與很多合作企業的HR進行了深入溝通,了解他們對UI設計師更高的一個期望是什麼。
對於UI設計,中小型的公司一般不會有很明確的崗位界定,而大型的公司也會比較傾向復合型的技術人才,所以市場上出現了全鏈路UI設計的說法。所以如果想要進入UI設計行業,讓你的職業發展更有前途,那就需要往全鏈路方面發展。
全鏈路UI設計可以做產品原型、Web界面設計、移動UI設計、運營H5設計、用戶體驗設計、插畫設計、視覺創意設計、C4D設計、平面VI設計甚至會Web前端知識。那全鏈路UI設計需要具備哪些能力呢?
選擇UI設計方向,並不是會簡單的設計工具就可以了,想要在行業里有不錯的前景與發展,需要順應市場需求去不斷完善自己。如果熱愛設計行業,請以全鏈路UI設計為目標不斷努力學習。
二、Web前端開發
Web前端是所有互聯網企業研發團隊中的必須者,它在國內開始被重視的時間不超過八年,從2014年至今,「前端工程師」熱度持續走高,其薪資也水漲船高。
前端工程師首要工作是去實現UI設計的界面,可以說所有用戶終端產品與視覺和交互有關的部分都屬於前端工程師的專業領域。
5G對於網站的變⾰必將是巨⼤的,再加上萬物互聯,VR、可穿戴設備、⻋載系統、智能投影、智能交互等新應用場景的出現, 以後Web前端會直接進入各個垂直領域,這也意味著前端將有更⼴闊的發展空間。
那前端需要哪些技術呢?通過招聘網站我們總結出了企業招聘時提及最多的技能要求:Javascript、CSS3、html5、Vue、Vue.JS、Boostrap、Uniapp、React、Node.JS······
所以作為Web前端工程師不僅要精通前端技能,還得了解後台的技術,所以想要往Web前端發展,你得具備基於Web前端開發領域的全棧開發能力。
三、Java全棧開發
可能大家會疑惑,編程語言這么多,為什麼選擇Java,我們來看看Java在所有編程語言排行榜中的地位。
數據來源:TIOBE編程語言排行榜
可以看出Java作為一門面向對象編程語言,近20年的時間幾乎都是排在第一,所以Java是全球主流的編程語言之一。
那為什麼Java語言這么受歡迎呢?因為Java技術具有卓越的通用性、簡單性、安全性、高效性、健壯性、多線程、動態性、平台獨立與移植性等特點,可以用於編寫Web 應用程序、桌面應用程序、分布式系統和嵌入式系統應用程序等。
技術人員一般都有初級、中級、高級、資深之分,而走技術路線的小夥伴一般都是初級入行,以領域專家為目標,持續學習。當然也有很多Java開發會往架構師、大數據、人工智慧等技術方向發展。當然,不走技術路線也可以轉去做市場、產品、管理等,有一定的技術背景可以讓你在這些領域更有競爭力。
那Java開發需要具備哪些能力呢?
在查看市場需求之後,企業在招聘需求中提及最多的技術有以下幾點:
熟練掌握Java常用框架及多線程編程技術,熟練Spring-Boot、Spring-Cloud等微服務框架;
熟練掌握MySQL、Oracle等常見資料庫;
熟練Linux操作系統;
熟悉前端技術CSS、JS、HTML、JQuery、Vue.js框架等;
想要在Java開發領域有好的前景,應該先扎實自己的基本功,熟練掌握Java語言、框架等,同時要掌握常見的資料庫、Linux操作系統,也要熟悉前端技術。當基本功扎實之後,想要往其他技術領域發展就相對容易了。
四、測試開發
對於軟體測試工程師,大家的印象可能還停留在點點點的功能測試上,然而「敏捷開發、測試驅動開發」、「測試提前介入開發流程」等的提出孕育出了新的市場需求-測試開發。很多外行的小夥伴可能會有疑問,這到底是測試呢?還是開發呢?
實際上測試開發屬於軟體測試的范疇,但它不同於普通的功能性測試,它可以藉助開發能力協助測試工作,使測試工作更高效、精準。比如自動化測試腳本、自動化測試框架以及工具。
對於一個測試人員,應該以更高的標准要求自己才會不被市場淘汰。那目前市場需求量最大的測試開發,需要哪些基本技能呢?
熟悉標准規范的測試流程,能夠做功能、性能、自動化測試;
熟練使用Linux系統,獨立搭建測試環境;
熟悉MySQL、Oracle等資料庫中的一種或多種;
掌握一門計算機語言Python或Java;
所以為了讓自己更有競爭力,不管是普通的功能測試工程師還是想要轉行的小夥伴,都可以以測試開發工程師作為自己的目標。為了在測試領域發展更好,應該往測試開發靠攏,不要只停留於簡單的功能測試,還要關注產品的性能、安全等。除此之外,利用自動化測試提升測試效率,減少重復工作,精通一門編程語言協助測試工作,甚至開發測試工具等。
以上只選取了UI設計、Web前端開發、Java開發、測試開發四個方向和大家做簡單的分享,通過這些簡單的介紹其實也不難看出,企業更需要綜合類的人才。所以UI設計才有了全鏈路UI、開發才有了全棧開發這樣的說法。
全棧、全鏈路其實是讓大家充分了解整個項目流程中所用到的技術,可以讓項目團隊協作更高效有序。當然,了解其他方向知識的前提是對自己領域內的知識精通掌握。所以互聯網哪個職位的發展更有前途,取決於你掌握技術的深度以及廣度,希望以上回答對你的選擇有幫助。
㈥ 想當程序員,大學應該學什麼專業
想當程序員可以學這兩個專業:
1、軟體工程
軟體工程專業以計算機科學與技術學科為基礎,強調軟體開發的工程性,使學生在掌握計算機科學與技術方面知識和技能的基礎上熟練掌握從事軟體需求分析、軟體設計、軟體測試、軟體維護和軟體項目管理等工作所必需的基礎知識、基本方法和基本技能,突出對學生專業知識和專業技能的培養,培養能夠從事軟體開發、測試、維護和軟體項目管理的高級專門人才。
2、計算機科學與技術
計算機科學與技術專業主要培養具有良好的科學素養,系統地、較好地掌握計算機科學與技術包括計算機硬體、軟體與應用的基本理論、基本知識和基本技能與方法,能在科研部門、教育單位、企業、事業、技術和行政管理部門等單位從事計算機教學、科學研究和應用的計算機科學與技術學科的高級科學技術人才。
選了這兩個專業,會在大學中學習到c語言,c++,java,javaweb等等一系列編程語言,要注意的是,大學里一般一個學期結束一門語言課程的學習,進度會非常快,課程安排量也不會太充足,想要學好,還得靠自己課下努力才行,至少得掌握一門自己拿手的語言。
當程序員需要具備的能力
1、編程語言能力
作為合格的計算機程序員,精通一門語言是必須的。這種精通,不是說看了一本編程寶典,抄了幾個程序就能說精通的,要靠長時間的積累。
2、編碼能力
遵守編碼規范,是一個程序員最基本的要求。另外一個就是注釋,要注意不是為了注釋而注釋。對類,以說明職責為主;對方法,以說明意圖為主;對方法體,以說明實現思路為主。對於大段大段的代碼,要分段,使用空行隔開,並使用行內注釋進行說明。
3、面向對象思維能力
多數編程語言都是面向對象的編程語言。而這些面向對象編程語言的共同精髓就是面向對象的思想。掌握這些比面向對象語言本身更重要,比如對繼承,多態,重載的理解。對面向對象基本原則的理解,比如開閉原則,介面隔離原則,單一職責原則等。在此基礎上,應該掌握常用的設計模式,比如工廠模式,策略模式,觀察者模式,模板方法模式,命令模式等等。
㈦ 我是學軟體的,找個工作,是程序員好呢,還是軟體實施工程師好,還是其他更有前途
這樣的選擇關鍵還是看你的能力和興趣愛好
能力:編程學的好的話就做程序員。差一點就做測試工程師,再差一點就做軟體實施工程師
興趣愛好:比較內向的話就做程序員,組織能力比較強比較活潑外向的話就做軟體實施工程師
我給個比喻吧:你要建一座房子,那麼軟體工程師相當與總指揮,而程序員相當與建設的工人,在這個工地上既不能沒有軟體工程師也不能沒有軟體程序員。他們是一個團隊。在這個過程當中一個軟體工程師以前絕對是一個優秀的程員。序程序員一般要掌握各種語言以應用。而軟體工程師,要對一個軟體項目進行分析,分析它的框架,分析它要用什麼語言來寫,分配給一個小組中每個程序員應該做什麼。然後還要對軟體進行測試,是否達到預期的效果,是否會出現異常,哪些地放需要改進。雖然這兩個崗位看似是有領導者和被領導者的區別,不過薪資待遇的話還是看能力,好的程序員會比工程師拿的工資高的多的。
還有一點兒需要提示樓主,既然是學習軟體的,就不要去老想著其它專業更好,努力的學以致用,在本行業里有所建樹吧。能力強的人在什麼崗位上都是會發光的。加油!:)