⑴ 程序員真的是一份吃青春飯的活嗎
說程序員是一份青春飯,這個結論既正確也不正確。沒有哪個行業是絕對看年紀的,演員可以說是一個標准「青春飯」行業,即便是這樣,也會有「小鮮肉」無法輕易戰勝的「老戲骨」。
互聯網也有互聯網的「青春飯」,這里的「青春飯」是指新知識、新技術。在社會發展如此迅速的背景下,不僅是程序員,任何一個互聯網人都要不斷更新,不斷學習,不斷進步。如果你是20歲的青年,害怕十年之後被公司淘汰、被更年輕的人淘汰,那你要做的就是進行職業規劃並保持一個好的心態進行學習。
技術的更新發展是日新月異的,而所有程序員面對的挑戰都是一樣的,但是如果你的基礎扎實就能更容易地學習新事物、新知識。一個新技術即使再絢爛奪目也是利用基礎知識搭建而成的,就像武功一樣,我們都知道降龍十八掌很厲害,那為什麼不一開始就練它呢?原因很簡單,如果你連基礎功夫都沒學好,即使拿到秘籍也是徒勞。
相反地,如果你的基礎還不夠牢靠,每天下班之後也不願意花時間去了解行業內的動態,為自己充電,那你也只是靠年齡來勉強立足。
如果十年後的自己沒有任何進步,或者說進步得不夠多,捫心自問:你不應該被淘汰嗎?
任何職業的身價都取決於他的不可替代性,如果你的工作內容很容易就被他人取代了,那你就要小心了,要使自己不可替代,就要努力往上走,往高處走,當你和他人拉開距離的時候才能告訴自己的老闆,你值這個價。
多學、多看、多問。從項目中學,從網路中學,從失敗中學,涉足各種開源社區和學習論壇,並找到和你一起前進的「戰友」,積累自己的人脈和學習圈子,在關鍵的時候你們可以互相扶持。
在這場信息時代的革命化變革中,你願意做弄潮兒還是急流勇退?
有意思的是,很久之前看到這個問題的時候是這樣寫的:「程序員到了30歲就要轉行了嗎?」,現在問的問題是:「程序員到了35歲就要轉行了嗎?」
我發現這條年齡線已經被拉長了5歲,那麼我是否可以這樣推斷:等過了兩三年之後,這條年齡線將會繼續延長5歲,問題也會改成:「程序員到了40歲就要轉行了嗎?」
既然有程序員不斷地在問,也有程序員不斷地在解答,那就表示還有很多30+、40+的碼農仍然奮斗在編程的前線。隨著時間的推移這條年齡線還會不斷地往後移,等到碼農正式退休之後,大家就會恍然大悟:「原來程序員是可以做到退休的!」
⑵ 程序員主要的工作
程序員(英文Programmer)是從事程序開發、維護的專業人員。一般我們將程序員分為程序設計人員和程序編碼員,但兩者的界限並不非常清楚,特別是在中國。
作一個真正合格的程序員,應該具有的素質。
1:團隊精神和協作能力
團隊精神和協作能力是作為一個程序員應具備的最基本的素質。軟體工程已經提了將近三十年了,當今的軟體開發已經不是編程了,而是工程。獨行俠可以寫一些程序也能賺錢發財,但是進入研發團隊,從事商業化和產品化的開發任務,就必須具備這種素質。可以毫不誇張的說這種素質是一個程序員乃至一個團隊的安身立命之本。
2:文檔習慣
文檔是一個軟體系統的生命力。一個公司的產品再好、技術含量再高,如果缺乏文檔,知識就沒有繼承,公司還是一個來料加工的軟體作坊。作為代碼程序員,必須將30%的工作時間寫用於技術文檔。沒有文檔的程序員勢必會被淘汰。
3:規范化的代碼編寫習慣
知名軟體公司的代碼的變數命名、注釋格式,甚至嵌套中行縮進的長度和函數間的空行數字都有明確規定,良好的編寫習慣,不但有助於代碼的移植和糾錯,也有助於不同技術人員之間的協作。 一些所謂的高手甚至叫囂高手寫的代碼一般人看不懂,我只能說他不是一名合格的程序員。
4:需求理解能力
程序員要能正確理解任務單中描述的需求。在這里要明確一點,程序員不僅僅要注意到軟體的功能需求,還應注意軟體的性能需求,要能正確評估自己的模塊對整個項目中的影響及潛在的威脅,如果有著兩到三年項目經驗的熟練程序員對這一點沒有體會的話,只能說明他或許是認真工作過,但是沒有用心工作。
5:模塊化思維能力
作為一個優秀的程序員,他的思想不能在局限當前的工作任務裡面,要想想看自己寫的模塊是否可以脫離當前系統存在,通過簡單的封裝在其他系統中或其他模塊中直接使用。這樣做可以使代碼能重復利用,減少重復的勞動,也能是系統結構越趨合理。模塊化思維能力的提高是一個程序員的技術水平提高的一項重要指標。
6:測試習慣
測試是軟體工程質量保證的重要環節,但是測試不僅僅是測試工程師的工作,而是每個程序員的一種基本職責。程序員要認識測試不僅是正常的程序調試,而要是要進行有目的有針對性的異常調用測試,這一點要結合需求理解能力。
7:學習和總結的能力
程序員是很容易被淘汰的職業,所以要善於學習總結。許多程序員喜歡盲目追求一些編碼的小技巧,這樣的技術人員無論學了多少語言,代碼寫起來多熟練,我們只能說他是一名熟練的代碼民工,他永遠都不會有質的提高。一個善於學習的程序員會經常總結自己的技術水平,對自己的技術層面要有良好的定位,這樣才能有目的地提高自己。這樣才能逐步提高,從程序員升級為軟體設計師、系統分析員。
作為高級程序員,乃至於設計師而言,除了應該具備上述全部素質之外,還需要具備以下素質:
1、 需求分析能力
2、 整體框架能力
3、 流程處理能力
4、 模塊分解能力
5、 整體項目評估能力
6、 團隊組織管理能力
1,激情
我曾經遇到許多「職業程序員」,他們從事IT是因為覺得這是一種職業,他們只在工作時間編程,除非送去培訓否則他們不會學習新東西,這不是好的程序員。我認為一個好的程序員總是對編程充滿激情,而且好的開發者會做一些編程工作即使這沒有報酬。激情是一個優秀程序員的重要指標。
2,自學好學
編程領域始終發展變化著,不出一年有些新技術就變成了老技術,這並不是說好的程序員要對所有新技術跟進,但有些卻對學習任何新技術都沒有興趣。他們通常在學校學習了編程,然後工作後單位安排學什麼就學什麼。如果在招聘中你聽到「讓我培訓一個星期我就會勝任這個工作」那不要僱傭他。實際上,真正優秀的程序員始終談論著你所不知道的新技術,向人們解釋為什麼你必須用這個技術,哪怕沒有聽眾聽得明白,哪怕他自己也不明白。
3,聰明
聰明包括很多因素,情緒和社會交際只是其中之一。好的程序員絕不木訥,他們是最聰明的人,他們中的許多善於交際,健談、興趣廣泛。
4,隱性的經驗
—好的程序員通常有自己的私人的一些研究、愛好、項目,而這些是他們不寫在簡歷上 (通常覺得不值得寫),但表現出來卻可能恰恰是他的潛能、深度和後勁所在。
5,技術多樣性
由於好的程序員喜歡學習和涉獵新技術,所以一般來說超過22歲的都熟知很多新技術,而且對多種技術的長短有 「強烈」的個人意見/見解,喜好嘗試新鮮技術。
6,資格證書
資格證書並不是識別真正程序員的方法,MCSE、SCJP說明不了什麼,它們只是讓別人認識和獲取的,頂多代表這個人在某個技術有一定的知識。
原文作者在文末寫道:以上所說的標准並不是絕對的,因為有些優秀的程序員確實不符合上述,而有些bad程序員卻符合了。但相信這些對大多數真正的程序員都適用。
總結而言,優秀的程序員通常有一下特點:
對技術充滿激情
將編程作為一種愛好
如果你允許會滔滔不絕地跟你談論技術
有過個人的開發經歷(與4意思相同)
堅持認為某種技術最好
如果讓他用他認為不好的技術他會非常別扭
聰明、健談、興趣廣泛
在大學和工作前就開始接觸程序
[編輯本段]考試說明
1、 考試要求:
(1) 熟練掌握基本演算法和數據結構,用C語言編製程序;
(2) 掌握數據結構、程序變速器和操作系統的基礎知識;
(3) 了解軟體工程、資料庫、多媒體和網路的基礎知識;
(4) 掌握數制、機內代碼及其算術運算和邏輯運算的基礎知識;
(5) 了解計算機的體系結構和主要部件的基礎知識。
2、 通過本級水平考試的合格人員能按照軟體設計說明書編製程序,具有相當於助理工程師
的實際工作能力和業務水平。
3、 本級水平考試范圍包括兩個模塊:模塊1——程序編制能力(考試時間為150分鍾);模
塊2——基礎知識(程序員級)考試時間為120分鍾)。題型為:單項選擇題十多項選擇題。
考試范圍
模塊1:程序編制能力
1.1按照軟體設計說明書,能熟練使用下列程序語言編製程序
1.1.1C(美國標准)
1.2理解給定程序的功能,能發現程序中的錯誤並加以糾正
1.3具有良好的程序編制風格
1.4基本演算法
1.4.1查找、更新、排序、合並及字元處理
1.4.2迭代、插值、數值積分、矩陣計算、議程求解和搜索求解
1.5程序編制方法
1.5.1分支、循環、子程序(過程和函數)、遞歸
1.5.2輸入輸出和文件的處理
模塊2:基礎知識(程序員級)
2.1軟體基礎知識
2.1.1數據結構基礎
數組、記錄、列表(list)、隊列、棧(stack)、堆(heap)、樹和二叉樹的定義、存儲和操作
2.1.2程序語言基礎知識
·匯編、編譯、解釋系統的基礎知識
·程序語言的數據類型
·程序語言的控制結構
2.1.3操作系統基礎知識
·操作系統的類型和功能
·操作系統的層次結構和進程概念
·作業、處理機、存儲、文件和設備等管理的基礎知識
2.1.4軟體工程基礎知識
·軟體生命周期各階段的任務
·結構化分析和設計方法
·面向對象基本概念
·軟體開發工具與環境基礎知識
2.1.5資料庫基礎知識
·資料庫模型
·資料庫系統的結構
·SQL的使用初步
·常用資料庫管理系統的知識
2.1.6多媒體基礎知識
·多媒體基本概念
·常用圖象文件
·簡單圖形(線段和圓)的計算機圖示
2.2硬體基礎知識
2.2.1數制及其轉換
·二進制、十進制和十六進制等常用數制及其相互轉換
2.2.2機內代碼
·原碼、補碼、反碼、移碼
·定點數與浮點數的機內表示
·ASCII碼及漢字編碼等常用的編碼
·奇偶校驗碼、海明碼、循環冗餘碼(CRC)等常用校驗方法
2.2.3算術運算和邏輯運算
·計算機中的二進制數運算方法
·邏輯代數的基本運算和邏輯表達式的化簡
2.2.4計算機的體系結構和主要部件
·中央處理器CPU、存儲器和輸入/輸出設備
·匯流排結構、指令流和數據流
2.2.5指令系統
·常用的定址方式
·指令的格式、分類及功能
·指令的執行過程
2.3網路基礎知識
2.3.1網路的功能、分類與組成
2.3.2網路協議與標准
2.3.3網路結構與通信
2.3.4網路的安全性
2.3.5Client-Server結構
2.3.6Internet和Intranet初步
⑶ 剛踏入職場的程序員,如何快速踏實地提升自己的能力
程序員提升主要靠實踐,跟一個完整的項目能最大限度的提升項目能力,以後找工作不用愁啊,現實工作中很難達成,你可以去找找培養這方面人才的,提升一下自己,你看看願碼ChainDesk,有你需要的
⑷ 程序員和網路工程師哪個更有前途
毋庸置疑是程序員 網路工程師是有局限性的 只能做網路這塊 但要是程序員的 還可以兼職做網路工程師 所以還是做程序員更有前途
⑸ 網上什麼程序員指令,開啟網卡,升級網卡驅動辦法都試過了,沒用,關於升級win10導致沒有wifi,
可能的原因有幾點
1.網卡壞了,這個可能性不高,也是有可能的。
2.驅動有問題。卸載了驅動程序再安裝。(驅動精靈或者去官網下載具體型號的驅動)
3.系統問題,系統禁用了網卡。系統開啟飛行模式,或者系統WiFi模塊關閉。
4.電腦禁用了網卡,筆記本上常見的WiFi開關。
⑹ 程序員:零基礎轉行到互聯網,真的不需要多大技術
IT行業入門門檻兒較低,對於IT專業外的知識儲備沒有太高要求。適合各專業各領域的學生和在職者加入。薪水高、地位高、沒有性別歧視和具體的年齡限制等。
IT領域未來的發展方向,從實體方面來看一定是智能設備和物聯網,從領域來看一定是互聯網,未來的網路將會越來越智能,也將會提供大量的就業機會。因此,IT行業的前景是毋庸置疑的,國家信息產業部發布的最新報告顯示,我國目前信息安全從業人才缺口高達40萬人,每年以20%的速度在增長。國家信息產業部已把軟體工程師列為「國家緊缺型人才」的行列。前景好,人才需求廣,就業高薪,所以很多大學室會很青睞。希望可以幫到您,謝謝!
⑺ Java程序員如何加快升級之路
能把客戶需要的功能搞出來就算是高手啦,什麼代碼規不規范、資料庫設計的合理不合理,都得服從功能。把功能搞得讓用戶滿意,系統使用起來方便順手,符合用戶日常工作習慣,那就是好程序員。你的代碼再簡潔再規范,對用戶都關系不大,你雖然節約了伺服器資源,程序運行效率較高,但是用戶基本感覺不到。如果功能做不到位,為用戶著想的不夠,用戶是完全有感受的,比如多欄位錄入問題,用戶的習慣和期望是每輸入完成一個欄位後回車焦點就轉到下一個文本框,但是不少程序員開發的管理系統都沒做到這點,而是輸完一個欄位後必須右手離開鍵盤去操做滑鼠,用滑鼠把游標切換到下一個文本框,這種程序代碼既使再規范又能怎麼樣?還有就是一些程序員喜歡畫蛇添足,原本很簡單的需求,編程時卻把功能搞得很啰嗦,比如注冊、登錄問題,要這個要那個的,把用戶搞得很煩。
⑻ 程序員轉網路營銷怎麼樣
雖然不知道你為什麼想轉網路銷售,但是我還是想以自己的親身經歷告訴你,如果可以的話還是別轉!網路營銷雖然說看起來很洋氣,但是實際上還不如程序員。程序員累是累了點,但是薪資水平確實超出了大多白領,這點不可否認。所以建議你慎重考慮