1.程序員未來有哪些發展方向
許多的程序員最終可能是做技術經理、項目經理或者項目總監之類的,那么到底我們職業生涯要選擇哪一種呢?這個問題沒有一個統一的答案,因 為每個人的性格不一樣,際遇也不一樣,就像你從小希望當貪官,可是命運卻偏偏讓你做了一個程序員。
所以應該根據你的興趣、性格與際遇選擇一條道路,比如說 你正好有機會帶一個項目,而你又不是很討厭項目經理這個位置,那么你就可以選擇向項目經理方向發展。 實際上很多時候,國內并沒有明確的技術經理、項目經理、產品經理之分,在許多的公司里,他們經常是由一個人承擔。
在外包公司里,通常會有項目經理和 系統分析員(也可能是技術經理)。在一些非IT公司里,可能會有部門經理,而做自己產品的公司可能會分得比較詳細一些。
我大致說一下這三個職位的區別,讓 正在徘徊的程序員有一個大致的了解。 項目經理 是項目的直接負責人,這個角色相當于一個中間接口,不管是團隊成員還是需求方(客戶),或者是上級領導,有事都直接找他,所以這個職位著重于管理與 溝通。
一般來說,項目經理的工作重點在同客戶溝通需求、項目進度的把控、團隊的溝通方面,有些公司也會需要項目經理承擔團隊建設的工作,不過貌似很多國內 公司都忽略了團隊建設這個工作了。對于項目經理來說,重點會要求溝通能力、協調能力、危機把控能力、執行力、團隊管理能力,著重于溝通、管理與計劃。
當然 也有些公司還要求項目經歷要參與招標談判,這就要求項目經理有一定的商務談判能力。 技術經理 有時候也可能叫系統分析員,一些小公司可能會整個公司或者部門有一個技術經理。
技術經理承擔的角色主要是系統分析、架構搭建、系統構建、代碼走查等 工作,當然不是所有公司都是這樣的,有些公司項目經理是不管技術團隊的,只做需求、進度和同客戶溝通,那么這個時候的項目經理就好像工廠里的跟單人員了, 這種情況在外包公司比較多。對于技術經理來說,著重于技術方面,你需要知道某種功能用哪些技術合適,需要知道某項功能需要多長的開發時間等。
同時,技術經 理也應該承擔提高團隊整體技術水平的工作。 產品經理 這個職位一般在有自己產品(不管是軟件還是網站產品)的公司比較常見,產品經理主要會負責產品的設計、產品的改良等工作。
需要注意的是,產品設計與 設計師是兩個不一樣的工作,產品設計主要會從用戶體驗、業務需要等層面去設計產品,而設計師更多是從用戶的視覺上去做。產品經理應該是最懂業務的人,比如 說你在設計一個微博的產品,就要求你對微博這個東西非常熟悉,從用戶習慣、用戶體驗、公司的發展戰略上去設計這個產品,還要對比同類產品會有什么優勢等 等。
2.編程今后發展趨勢和發展方向
建議多去上去看看 先小說一下 我覺得語言應該向簡單發展,我的簡單是指跟計算機越來越沒有關系,更多的是自然語言的考慮,而且功能也越簡單越好。
因為惟有這樣,寫代碼才越容易,軟件才能大規模制造,如果大批的下崗工人都能夠通過簡單的培訓變成程序員,那么那個語言就是非常好了。到時候中國的外包業就會像制造業一樣強大。
呵呵 再繼續長篇大論 在C語言入門了之后,我體會到了編程的樂趣,那是人生最快樂的一件事情。當用創造世界的工具(編程語言和IDE),設計出虛擬世界的運行規則(程序),然后虛擬的世界就按照自己設計的法則運轉時(程序將嚴格按照程序員的意愿去運行),那種樂趣是常人難以想象的! 程序員、用戶、程序: 程序就是一個系統,類似于《信號與系統》中的系統,用戶的輸入類似于激勵源,用戶需要的就是系統的輸出。
這個系統的設計就是程序員的事情了,這個系統是否合理、平衡也是程序員的事情。還有一個原則,同樣的輸入只能得到的輸出,不可能也不應該讓程序幫助用戶完成所有的功能。
比如:搜索一個文件等,用戶一定要告訴程序到底想要搜索什么樣的東西,而不應該全部交由程序去分析用戶的意圖,那樣的結果只會是徒勞。 一想到C#、VS、Windows就怒,在用戶、程序 、程序員、編程語言、集成開發環境、操作系統之間,每個角色的職責和功能和權利,全部被Microsoft給顛覆了。
用戶的需求是獲得最安全的產品、最可靠的產品(無內存泄漏、內存寫越界等問題)、運行速度高的產品(也就是程序)。但MS不這樣做,MS覺得自己有必要綁定在一起銷售的東西,就全部強加給用戶,不管用戶需不需要。
比如Windows里的那么多后臺服務、那么多的系統自帶程序,用戶想不要都不行,即使想刪除也不行,因為刪除起來不那么方便。可憐的用戶,花了那么錢買一個商品,但最后即使是自己不想要的東西、可能給自己帶來禍害的東西(比如沒有必要的后臺程序和服務),也沒辦法拒絕。
"顧客就是上帝", 在IT行業,變成了"Microsoft就是上帝"。 同樣,編程語言本來就是一個工具,為程序員更快速地設計規則(程序的運行規則)服務的。
編程語言和IDE本來是給程序員服務的,程序員希望編程語言和IDE應該提供什么方便快捷的功能,那就是語言和IDE的發展趨勢。題外話:但程序員自己應該完成的職責,不應該由編程語言去完成。
比如,整個程序有沒有內存泄漏問題,整個程序的效率高低問題,程序設計合不合理,這些應該由程序員去完成,而語言和IDE只應該提供一些輔助的分析工具和預防措施,而不能替代程序員的職責。 自然世界遵循的是對稱的原則,程序也是如此,編程語言語言也是如此。
有constructor,就有destructor;有malloc,就有free;有new就應該有delete;函數的設計也是如此,有QueryPlugin,就有ReleasePlugin;if else 分支里面的內容應該完全對稱;break,continue,return破壞了程序的順序執行,破壞了函數的前后對稱,所以很大一部分內存泄漏問題都是發生在這些地方。程序設計美觀、對稱,不太可能發生內存泄漏問題。
但Java把delete關鍵字去掉之后,世界全部變味了。對稱破壞掉了,在Java里,當代碼寫的不是很好時,某塊內存同樣可能成為死內存。
即使這塊內存沒人用,但Java的垃圾回收機制根本無法收集。誰申請的資源,誰負責釋放。
擔心內存泄漏、因為內存管理太復雜,所以把內存操作全部去掉,交由語言和IDE和內存回收工具去做,有點像中國古代的因噎廢食。程序員的水平不夠,應該靠培訓、靠學習來解決,而不應該靠語言和工具來解決。
C#不往給程序員提供方便的自然規則描述語言入手,而把Java的破壞對稱的招數直接照搬過來,看來也不見得很高明。 編程語言的本質就是描述自然,描述自然界運行的規律。
面向對象語言的成功,就是因為她能更自然、直觀、方便、快捷地描述自然界以及規律。比如,一個物體或生命本身的屬性就是一個對象的數據,一個物體或生命的動作,就可以看成是一個對象的成員函數。
自然界的生命體有生、有死,對應編程語言中的構造和析構函數。 如果僅僅是一個很簡單的屬性,對應語言中的基本數據類型;一個物體很多的數據類型,對應struct;如果此物體僅僅只有數據特性,那么struct完全足夠(struct對應設計模式中的Compsite設計模式)。
我們可以復制它。如果還有相關的操作,那么就是一個類,類應該是一個比struct更高級的東西。
虛函數(也就是多態)的特性,表示自然界是可以進化的。由后來者(派生類)取代前人(祖先類)。
正因為有了多態的特性,程序才可以更好的描述自然世界,更完美、更自然地模擬自然規則。程序里各個模塊、各個類的功能對應自然界的各個物體和生命的功能和職責。
互相之間和諧地工作,就組成一個平衡的世界。 所有的面向對象語言都可以用C語言改寫。
用C語言和匯編語言的年代,就像刀耕火種的年代,一人種1分地(程序的性能當然好啦),但耕種的速度慢。用面向對象語言的本質就是,用更符合事物本質的語言來描述事物,會犧牲一點點性能,但提高了耕種的速度(用面向。
3.程序員工作前景怎么樣
首先帶你來看兩種不同的程序員吧:
1.某外包公司的程序員,每天的工作是這樣的:合作的企業會把需要制作的軟件功能、設計等等各方面都設計好,然后給程序員一串偽代碼,程序員的工作很簡單,就是看著偽代碼敲敲鍵盤,算法或者是數據結構什么的都不用自己考慮,每天最累的就是手指和腰,而工作效果的檢查也就是字有沒有敲對。
2.某互聯網公司程序員,每天的交流對象是產品經理,產品經理只會把產品prd發給程序員,里面的設計只有功能要求,具體的算法實現都需要你來考慮,而且必須保證工作的結果能夠在健壯性、美觀、運行速度上滿足條件,一天下來工作時間很多都花費在學新的東西和設計算法上,最累的可能是腦。
這是兩種完全不同的工作,但是都可以叫程序員,當然我并沒有看低外包公司的意思,不過現在有很多外企在把任務發給中國的外包公司的時候都是這樣的,就好像使用非洲廉價勞動力一樣,你只需要知道干什么,怎么做不需要你考慮,基本就是體力活。
那么程序員有沒有發轉前景呢?首先要明白,第二種才應該真的算得上是程序員,那么我個人認為,程序員絕對是有前景的,未來發展的趨勢必然是越來越多的計算機替代人來進行工作,所以掌握計算機編程可以說很快就會成為一項基本技能,但是怎么也需要幾代人才能實現,現在已經有太多的東西離不開計算機了,程序員幾乎可以出現在任何一個領域,那前景好不好呢?也就不用我說了吧.
望采納,謝謝!!
4.程序員職業規劃
個人理解:1.學好外語,盡量3年內學會說一口比較流利的外語 2.多讀一些技術原理的書,學會分析業務,學會設計。
但infosys不能提供分析業務和設計的鍛煉,這時需要自己尋找機會啦。 3.也是最重要的,一定要樹立起終身學習的觀念,學到老活到老。
在生活中要有意識地補充各種知識。比如待人接物,衣著打扮,理財。
4.在3年中一定要想找到自己擅長的方向:譬如做管理,做業務咨詢,技術專家,數據庫專家,總之一定要讓自己的核心競爭力高人一籌。 5.一定要樹立風險意識:在這個社會中,每個職位都不是絕對安全的,我們隨時都可能被后來人替代,但同時隨著年齡的增大,我們的經濟壓力會越來越大。
因此這個時候你才會覺得:錢太重要了,但有錢的前提是你必須要有‘才’。這一點你要多向Freedy學習和請教,Freedy就是一個我認為危機意識和學習意識很強的人。
呵呵。
5.未來編程語言發展的趨勢,以及程序員未來的職業規劃
大的發展趨勢是: 體力勞動和重復勞動越來越少, 需要程序員編寫的代碼越來越少, (大部分由IDE或工具自動生成,或根本不需要那些代碼) 程序員只編寫核心邏輯.
至少最近20年是這樣的,未來20年應該也是
職業規劃這個每個人都不同, 如果要走得好, 你就要會做大多數人不會的東西,或者大多數人會的東西你能保證比他們做得好. 語言和技術都在發展, 所以核心邏輯才是根本. 如果一直只做增刪改,那么肯定是沒前途了,因為很快這些事就有程序自動生成的代碼來做了.
6.職業程序員的發展
不要懷疑做程序員的。因為目前電子信息業發展太迅速了。對程序員這樣的人才的渴望度即有可能會缺少這樣的人才。所以做程序員這一行業是不會下崗的。
再說程序員不是人人都可以當的。需要有這方面的頭腦才可以寫出一定的程序。
程序員有很多方向可以發展,并不一定就是要當代碼工。我給你提供一個程序員未來發展方向的線路圖給你參考把。
程序員->;高級程序員->;開發工程師->;項目經理->;高級項目經理->;在這個地方有個分端:1、往上層發展,就是當系統架構師,系統架構師難度比較大,但是工資很高,不過系統架構師只是在大型公司才會有。目前的行情是:系統架構師按小時算錢,一個小時幾萬。(還是少的);2、往底層發展,就是當底層開發人員,底層開發人員的工資也是很高的。不過相對于系統架構師來說,難度小一點,工資也低一點。如果從高級項目經理這里不分端的話,就直接->;市場總監/技術總監/。、->CEO/。
轉載請注明出處華閱文章網 » 程序員工作展望簡短(程序員未來有哪些發展方向)