❶ 程序員是做什麼的
程序員一般的工作是從事程序開發、程序維護。
程序員是從事程序開發、程序維護的專業人員。一般將程序員分為程序設計人員和程序編碼人員,軟體從業人員分為初級程序員、中級程序員、高級程序員(現為軟體設計師)、系統分析員,系統架構師,測試工程師六大類。具體工作職責如下:
1、負責軟體項目的詳細設計、編碼和內部測試的組織實施,對小型軟體項目兼任系統分析工作,完成分配項目的實施和技術支持工作。
2、協助項目經理和相關人員同客戶進行溝通,保持良好的客戶關系。
3、參與需求調研、項目可行性分析、技術可行性分析和需求分析。
4、熟悉並熟練掌握交付軟體部開發的軟體項目的相關軟體技術。
5、負責向項目經理及時反饋軟體開發中的情況,並根據實際情況提出改進建議。
6、參與軟體開發和維護過程中重大技術問題的解決,參與軟體首次安裝調試、數據割接、用戶培訓和項目推廣。
7、負責相關技術文檔的擬訂。
8、負責對業務領域內的技術發展動態。
(1)程序員是哪個階段擴展閱讀:
職業要求
一般的程序員都有四年的在專業領域的學習,需要一個在程序領域的學士學位獲得者,不論是數學方面的還是工程方面的都是可以的。
大約有20%的人在這一領域的計算機科學和工程學擁有更高的學位。還有很小一部分程序員是自學的,盡管一些專業性的學校或者綜合大學可以提供,但是也需要一些別的途徑來提供相關的人才。
盡管學歷是比較重要的,但是公司經常把重點放在應聘者的工作經驗上,很多剛從大學畢業的大學生雖然有引人注目的學位證書,但是他們找不到工作是因為他們缺乏經驗。
一個程序員雖然沒有正規的學歷,但是如果一個人擁有程序設計的深厚知識背景或者豐富的工作經驗的話,那麼他的機會要比有學歷的應屆畢業生大得多。
對於職業程序員,另外一個重要的方面就是,程序員需要不斷提升自己的業務技術,他的技術必須一直保持在一個較高的水平,並且要不斷發展,程序員也要尋找貿易的機會,要參加研討會,在周刊上發表文章和接受職業教育,這些使程序員在自己的領域中分級或者不斷並排前進。
❷ 成為程序員要經歷哪幾個階段
你指的事軟考的 那個初級程序員 還是軟體設計師
這樣跟你說吧, 軟考的初級程序員,你只要是學過編程語言的話,買本程序員教材看看就行了,考試都是選擇填空的什麼。設計師也這樣,但是設計師要求知識面比較廣,編程要學的好點
❸ 網站程序員的程序員成長之路大概分幾個階段 和未來的發展
信息技術的更新速度是驚人的,程序員的職業生涯則是一個要求不斷學習的過程,如何才能成為一名合格的程序員,一名合格的程序員需要掌握哪些技能呢?為此天天招生網采訪到幾位孳生的程序工作人員,就如何做好一名成功的程序員談出了自己的經驗。
熟練掌握開發工具
做為一名程序員至少熟練掌握兩到三種開發工具的使用,這是程序員的立身之本,其中C/C和JAVA是重點推薦的開發工具,C/C以其高效率和高度的靈活性成為開發工具中的利器,很多系統級的軟體還是用C/C編寫。而JAVA的跨平台和與WEB很好的結合是JAVA的優勢所在,而JAVA即其相關的技術集JAVA One很可能會成為未來的主流開發工具之一。其次,能掌握一種簡便的可視化開發工具,如VB,PowerBuilder,Delphi,C Builder,則更好,這些開發工具減小了開發難度,並能夠強化程序員對象模型的概念。另外,需要掌握基本的腳本語言,如shell,perl等,至少能讀懂這些腳本代碼。
熟知資料庫
為什麼資料庫是如此重要?作為程序員,他們自然有自己的理由:很多應用程序都是以資料庫的數據為中心,而資料庫的產品也有不少,其中關系型資料庫仍是主流形式,所以程序員至少熟練掌握一兩種資料庫,對關系型資料庫的關鍵元素要非常清楚,要熟練掌握SQL的基本語法。雖然很多資料庫產品提供了可視化的資料庫管理工具,但SQL是基礎,是通用的資料庫操作方法。如果沒有機會接觸商業資料庫系統,可以使用免費的資料庫產品是一個不錯的選擇,如mySQL, Postgres等。
對操作系統有一定的了解
當前主流的操作系統是Windows,Linux/Unix,熟練地使用這些操作系統是必須的,但只有這些還遠遠不夠。要想成為一個真正的編程高手,需要深入了解操作系統,了解它的內存管理機制、進程/線程調度、信號、內核對象、系統調用、協議棧實現等。Linux作為開發源碼的操作系統,是一個很好的學習平台,Linux幾乎具備了所有現代操作系統的特徵。雖然Windows系統的內核實現機制的資料較少,但通過互聯網還是能獲取不少資料。只有對操作系統有一定的了解後,你會發現自己上了一個新的台階。
懂得網路協議TCP/IP
在互聯網如此普及的今天,如果您還沒有對互聯網的支撐協議TCP/IP協議棧有很好的掌握,就需要迅速補上這一課,網路技術已改變了軟體運行的模式,從最早的客戶/伺服器結構,到今天的WEB Services,再到未來的網格計算,這一切都離不開以TCP/IP協議棧為基礎的網路協議支持,所以,深入掌握TCP/IP協議是非常必要的。至少,你需要了解ISO七層協議模型,IP/UDP/TCP/HTTP等常用協議的原理和三次握手機制。
明白DCOM/CORBA/XML/WEB Services存在的意義
隨著技術的發展,軟體與網路的無縫結合是必然趨勢,軟體系統的位置無關性是未來計算模式的重要特徵之一,DCOM/CORBA是當前兩大主流的分布計算的中間平台,DCOM是微軟COM(組件對象模型)的擴展,而CORBA是OMG支持的規范。程序員需要做的不僅僅是利用商業的開發平台來開發軟體,而是要理解這些技術的初衷,即為什麼需要這項技術,如果你能理解了這一點,再回頭看這些技術的具體實現,就如庖丁解牛,迎刃而解。XML/WebServices重要性不言而喻,XML以其結構化的表示方法和超強的表達能力被喻為互聯網上的「世界語」,是分布計算的基石之一。
不要將軟體工程與CMM分開
現代大型軟體系統的開發中,工程化的開發控製取代個人英雄主義,成為軟體系統成功的保證,一個編程高手並不一定是一個優秀的程序員,一個優秀的程序員是將出色的編程能力和開發技巧同嚴格的軟體工程思想有機結合,編程只是軟體生命周期中的其中一環,優秀的程序員應該掌握軟體開發各個階段的基本技能,如市場分析,可行性分析,需求分析,結構設計,詳細設計,軟體測試等。一句話可以概括我的看法:「創意無限,流程保證」。
擁有強烈的好奇心
什麼才是一個程序員的終極武器呢,那就是強烈的好奇心和學習精神。沒有比強烈的好奇心和學習精神更好的武器了,它是程序員們永攀高峰的源泉和動力所在。
如果您正為如何成為一名合格的程序員而發愁的話,希望以上文字能為您排除一些顧慮和問題。如果您想獲得更多有關程序員的信息,那麼請隨時關注天天招生網,我們將在最短的時間內提供最
真實,最准確的相關信息。
❹ 與代碼有關的工作階段有什麼
如果系統比較復雜,那應該在系統架構明確,概念清晰的時候開始。如果系統簡單,...
至於如何判斷系統復雜程度,一般依據參與員工的數量和經驗。大多數企業都有自己...
❺ 程序員的成長過程中,有哪些階段
階段一:不知道自己不知道(Unconscious incompetence)
大學期間,我和老師做過一些小項目,自認為自己很牛,當時還去過一些公司面試做兼職,但是就是不知道為什麼沒有回復。那個時期的我,壓根不知道自己不知道,還以為自己懂很多,現在想起自己以前就好笑,那個時候還算不上程序員,頂多隻能算是個業余編程愛好者。
表現:假自信、過度承諾、滿口我能行沒問題、看不起其他程序員….
階段二:知道自己不知道(Conscious incompetence)
工作後,發現自己在項目中工作時遇到困難不知道怎麼解決,和身邊人一比發現自己知識很欠缺,這時候知道自己技不如人,很多地方都不足,需要大補才行,這個時候就是大家所說的初級程序員階段,這個階段必須依靠別人指導。
表現:有點心虛、虛心學習、偷偷努力、羨慕牛人…
階段三:知道自己知道(Conscious competence)
工作三四年後,自己的技能逐步提高,成為了項目組的技術大拿,這時候也很自信,知道自己能夠解決遇到的所有問題,這時候就是高級程序員階段了。
表現:自信、比較客觀、真正承諾、有點自我…
階段四:不知道自己知道(Unconscious competence)
工作多年後,隨著自己知識的深度和廣度的提高,越學發現越不懂,有時好覺得自己以前真是浪費了太多時間。雖然覺得自己還有很多需要提高,但是對工作中遇到的問題基本沒有解決不了的,這個時候很多知識都自成體系,解決問題也有了自己的潛意識,有時連自己都不知道自己知道,這時候屬於架構師級別了。
表現:開放、主動、好學、謙虛…
❻ 初級程序員和中級程序員的區別是什麼
中級程序員和初級程序員最大的區別在於:工作經驗,有沒有真正的項目實戰經驗。一般來說,程序員都會最基本的刪減,而對於真正的項目就不會接觸太多,所以有的程序員就停留在初級,不了解項目到底該怎麼做,只有你做了幾個項目經驗的時候,才能說自己步入了中級程序員的標准!
❼ 程序員成長過程
序員是一種技術工作,在IT的發展中有相當重要的地位,從底層硬體通訊協議的建立, 到數據傳輸層的處理,到操作系統的建設,到資料庫平台的建設,一直到應用層上各種數 據營銷平台的搭建,程序員在裡面都扮演著舉足輕重的角色並為IT事業的發展做出了巨大 的貢獻。
中國有很多精於編碼的人,但是中國軟體行業,尤其是網路應用開發方面誤區很大,很難形成有規模的軟體開發力量和產品能力,不但比美國差距甚遠,和印度相比也是頗有不如。這些問題不是在於中國程序員的智商和工作努力狀況,也不是在於國家和民間對開發的投入程度,而是很大程度上,有一些對技術,對程序開發,對項目設計方面的思想誤區,這些誤區,導致了軟體行業的產品化能力不足,缺乏規模化和大型復用系統研發能力,可以說,改變認識誤區,是解決軟體行業小作坊模式和個體英雄模式所帶來的局限性 的重要工作。
中國有很多小朋友,他們18,9歲或21,2歲,通過自學也寫了不少代碼,他們有的代碼寫的很漂亮,一些技術細節相當出眾,也很有鑽研精神,但是他們被一些錯誤的認識和觀點左右,缺乏對系統,對程序的整體理解能力,這些人,一個網上的朋友說得很好,他們實際 上只是一些Coding fans,壓根沒有資格稱為程序員,但是據我所知,不少小網路公司的 CTO就是這樣的coding fans,拿著嚇人的工資,做著嚇人的項目,項目的結局通常也很嚇 人。
❽ 程序員一般的工作都是干什麼
程序員一般的工作是讀別人的代碼、寫注釋文檔、了解需求寫代碼、開發中的其他各種溝通。
程序員的前景是毋庸置疑,看現在的新基建,人工智慧,大數據就知道,科幻片里的場景都將出現在現實世界,未來的世界,就是數字世界,憧憬一下吧,作為新基建的時代的工人,作為重構未來世界的主力軍,程序員的職業前景還是很不錯的。
JAVA人才社會需求量大,根據IDC的統計數字,在所有軟體開發類人才的需求中,對JAVA工程師的需求達到全部需求量的60%~70%。Java軟體工程師一般月薪范圍在6000-10000元,遠遠超過了應屆畢業生月薪3500元的平均水平。同時,JAVA工程師的薪水相對較高。通常來說,具有3~5年開發經驗的工程師,擁有年薪10萬元是很正常的一個薪酬水平。80%學員畢業後年薪都超過了5萬元。Java平台以其移動性、安全性和開放性受到追捧。
想了解更多有關程序員的詳情,推薦選擇【達內教育】。該機構已從事19年IT技術培訓,累計培養100萬學員,並且獨創TTS8.0教學系統,1v1督學,跟蹤式學習,有疑問隨時溝通。該機構26大課程體系緊跟企業需求,企業級項目,課程穿插大廠真實項目講解,對標企業人才標准,制定專業學習計劃,囊括主流熱點技術。→感興趣的話點擊此處,免費學習一下
❾ 現在的程序員月薪在哪個階段
江蘇省,我們這一般程序員(中級)或本科是2500一個月
初程序員相當於技術員,中程序相當助理工程師(學校里相當於助教),高程相當於工程師(講師),對應的工資是1500,2500,3500
高程一般月薪是在3000左右的,3000大概是底薪吧
成都程序員月工資一般是在2000-5000之間不等
❿ 從程序員到架構師要經歷哪些階段
架構師是什麼?
架構師這詞其實很有意思,很多人的Title是這個,但其實我們對架構師都干什麼並沒有太統一的認識。往大了說,比爾蓋茨當年好像也稱自己為架構師,往小了說隨便一個小的軟體上做設計的也說自己是架構師。所以如果把這個詞泛化而不局限於特定的場景,估計單是說清楚什麼是架構師就要花費不少口水。下面我們用一個取巧的辦法,在一個具體的場景下來看看,架構師都該干什麼,而不把這個詞泛化,如果在特定場景下這個角色應該干什麼清楚了,那它就可以為其它場景下提供不錯的參考。
我們只考慮從頭開發一款產品的場景,不考慮這款產品可能是個家族,可能需要在公司里與許多東西配合這樣繁瑣的事情。這樣問題就簡化成:當我們要開發一款新產品的時候,架構師都要幹些什麼?為讓事情更具體,我們進一步假設公司想做一個Trello,Worktile這樣的協同辦公工具。
在產品初期除了UI這類東西,還能明確的一些關鍵需求大概是這樣:
簡單、迅速,追求極致的用戶體驗,這時也許能想到看板這樣的功能
打入社交元素(任務分配與溝通時打入信息流的機制)
移動端支持
公司判斷:如果產品能在1年內上線,時機比較好
其他的需求呢就是感覺上肯定有,但暫時說不清楚
基於這樣的簡單提示,長做程序的可能腦子里會立刻冒出來無數東西,比如:
快的確保?
看板里拖動的實現?
SaaS時伸縮性的確保?
資料庫中表的設計?
資料庫類型的選擇?
移動端的支持方式?
人員的現狀?
迭代式開發的支持?
... ...
但顯然不是每個事情都要在架構設計階段搞定,否則等於是被弄蒙了,這時候架構師的一個關鍵職責就是要能區分出哪些東西預先需要搞定,而哪些東西則要在迭代過程中解決。
一般來講重置成本越大,牽涉的人越多的事情越應該由架構師預先搞定,否則就容易做無用功,對開發工作產生致命傷害。具體來講這類事情由三個核心部分組成:
選定Tech Stack
概要設計,確立分工的基礎
協同方式
下面來分別解釋下這三個方面的具體含義。
選定Tech Stack是指要選定包括編程語言,基本框架等一系列東西,比如Trello選完之後大致是下面這個樣子:
http://www.csdn.net/article/2014-07-28/2820883