1. 程式人生 > >一個軟體工程師的7年工作經驗總結

一個軟體工程師的7年工作經驗總結

這是在網上看到的一篇文章,寫的是一個從事軟體工程開發的大牛對從業七年的一些經驗總結。感覺挺不錯,轉來與大家分享了,下面是正文。

1、分享第一條經驗:“學歷代表過去,能力代表現在,學習力代表未來。”

其實這是一個來自國外教育領域的一個研究結果。相信工作過幾年、十幾年的朋友對這個道理有些體會吧。但我相信這一點也很重要:“重要的道理明白太晚將抱憾終生!”所以放在每一條,讓剛剛畢業的朋友們早點看到哈!

2、一定要確定自己的發展方向,併為此目的制定可行的計劃。

不要說什麼,“我剛畢業,還不知道將來可能做什麼?”,“跟著感覺走,先做做看”。因為,這樣的觀點會通過 你的潛意識去暗示你的行為無所事事、碌碌無為。一直做技術,將來成為專家級人物?向管理方向走,成為職業經理人?先熟悉行業和領域,將來自立門戶?還是先 在行業裡面混混,過幾年轉行做點別的?這很重要,它將決定你近幾年、十年內“做什麼事情才是在做正確的事情!”。

3、軟體開發團隊中,技術不是萬能的,但沒有技術是萬萬不能的!

在技術型團隊中,技術與人品同等重要,當然長相也比較重要哈,尤其在MM比較多的團隊中。在軟體專案團隊中,技術水平是受人重視和尊重的重要砝碼。無論你是做管理、系統分析、設計、編碼,還是產品管理、測試、文件、實施、維護,多少你都要有技術基礎。算我孤陋寡聞,我還真沒有親眼看到過一個外行帶領一個軟體開發團隊成功地完成過軟體開發專案,哪怕就一個,也沒有看到。倒是曾經看到過一個“高學歷的牛人”(非技術型)帶一堆人做完過一個專案,專案交付的第二天,專案組成員扔下一句“再也受不了啦!”四分五裂、各奔東西。那個專案的“成功度”大家可想而知了。

4、詳細制定自己軟體開發專業知識學習計劃,並注意及時修正和調整(軟體開發技術變化實在太快)。

請牢記:“如果一個軟體開發人員在1、2年內都沒有更新過自己的知識,那麼,其實他已經不再屬於這個行業了。”不要告訴自己沒有時間。來自時間管理領域的著名的“三八原則”告誡我們:另外的那8小時如何使用 將決定你的人生成敗!本人自畢業以來,平均每天實際學習時間超過2小時。

5、書籍是人類進步的階梯,對軟體開發人員尤其如此。

書籍是學習知識的最有效途徑,不要過多地指望在工作中能遇到“世外高人”,並不厭其煩地教你。對於花錢買書,我個人經驗是:千萬別買國內那幫人出的書!我買的那些傢伙出的書,100%全部後悔了,無一本例外。更氣憤的是,這些書在二手市場的地攤上都很難賣掉。“擁有書籍並不表示擁有知識;擁有知識並不表示擁有技能;擁有技能並不表示擁有文化;擁有文化並不表示擁有智慧。”只有將書本變成的自己智慧,才算是真正擁有了它。

6、不要僅侷限於對某項 技術的表面使用上,哪怕你只是偶爾用一、二次。

“對任何事物不究就裡”是任何行業的工程師所不應該具備的素質。開發Windows應用程式,看看Windows程式的設計、載入、執行原理,分析一下PE檔案格式,試試用SDK開發從頭開發一個Windows應用程式;用VC++、Delphi、Java、.Net開發應用程式,花時間去研究一下MFC、VCL、J2EE、.Net它們框架設計或者原始碼;除了會用J2EE、JBoss、Spring、Hibernate等等優秀的開源產品或者框架,抽空看看大師們是如何抽象、分析、設計和實現那些類似問題的通用解決方案的。試著這樣做做,你以後的工作將會少遇到一些讓你不明就裡、一頭霧水的問題,因為,很多東西你“知其然且知其所以然”!

7、在一種語言上程式設計,但別為其束縛了思想。

“程式碼大全”中說:“深入一門語言程式設計,不要浮於表面”。深入一門語言開發還遠遠不足,任何程式語言的存在都有其自身的理由,所以也沒有哪門語言是“包治百病”的“靈丹妙藥”。程式語言對開發人員解決具體問題的思路和方式的影響與束縛的例子俯拾皆是。

我的經驗是:用面對物件工具開發某些關鍵模組時,為什麼不可以借鑑C、C51、彙編的模組化封裝方式?用傳統的桌面開發工具(目前主要有VC++、Delphi)進行系統體統結構設計時,為什麼不可以參考來自Java社群的IoC、AOP設計思想,甚至借鑑像Spring、Hibernate、JBoss等等優秀的開源框架?在進行類似於實時通訊、資料採集等功能的設計、實現時,為什麼不可以引用來自實時系統、嵌入式系統的優秀的體系框架與模式?為什麼一切都必須以個人、團隊在當然開發語言上的傳統或者經驗來解決問題?“他山之石、可以攻玉”。

8、養成總結與反思的習慣,並有意識地提煉日常工作成果,形成自己的個人原始碼庫、解決某類問題的通用系統體系結構、甚至進化為框架。

眾所周知,對軟體開發人員而言,有、無經驗的一個顯著區別是:無經驗者完成任何任務時都從頭開始,而有經驗者往往通過重組自己的可複用模組、類庫來解決問題(其實這個結論不應該被侷限在軟體開發領域、可以延伸到很多方面)。這並不是說,所有可複用的東西都必須自己實現,別人成熟的通過測試的成果也可以收集、整理、整合到自己的知識庫中。但是,最好還是自己實現,這樣沒 有智慧財產權、版權等問題,關鍵是自己實現後能真正掌握這個知識點,擁有這個技能。

9、理論與實踐並重,內外雙修。

工程師的內涵是:以工程師的眼光觀察、分析事物和世界。一個合格的軟體工程師,是真正理解了軟體產品的本質及軟體產品研發的思想精髓的人(個人觀點、歡迎探討)。掌握軟體開發語言、應用語言工具解決工作中的具體問題、完成目標任務是軟體工程師的主要工作,但從軟體工程師這個角度來看,這只是外在的東西,並非重要的、本質的工作。學習、掌握軟體產品開發理論知識、軟體開發方法論,並在實踐中理解、應用軟體產品的分析、設計、實現思想來解決具體的軟體產品研發問題,才是真正的軟體工程師的工作。站在成熟理論與可靠方法論的高度思考、分析、解決問題,並在具體實踐中驗證和修正這些思想與方式,最終形成自己的理論體系和實用方法論。

10、心態有多開放,視野就有多開闊。

不要抱著自己的技術和成果,等到它們都已經過時變成垃圾了,才拿出來丟人現眼。請及時釋出自己的研究成果:開發的產品、有創意的設計或程式碼,公佈出來讓大家交流或者使用,你的成果才有進化和昇華的機會。想想自己2000年間開發的那些Windows系統工具,5、6年之後的今天,還是那個樣子,今天流行的好多Windows系統工具都比自己的晚,但進化得很好,且有那麼多使用者在使用。並且,不要保守自己的技術和思想,儘可能地與人交流與分享,或者傳授給開發團隊的成員。“與人交換蘋果之後,每個人還是隻有一個蘋果;但交換思想之後,每個人都擁有兩種思想”,道理大家都懂,但有多少人真正能做到呢?

11、儘量參加開源專案的開發、或者與朋友共同研製一些自己的產品,千萬不要因為沒有錢賺而不做。

網路早已不再只是“虛擬世界”,網上有很多的開源專案、合作開發專案、外包專案,這都是涉獵工作以外的知識的絕好機會,並且能夠結識更廣的人緣。不要因為工作是做ERP,就不去學習和了解嵌入式、實時、通訊、網路等方面的技術,反過來也是一樣。如果當別人拿著合同找你合作,你卻這也不會,那也不熟時,你將後 悔莫及。

12、書到用時方恨少,不要將自己的知識面僅僅侷限於技術方面。

諾貝爾經濟學獎得主西蒙教授的研究結果表明:“對於一個有一定基礎的人來說,他只要真正肯下功夫,在6個月內就可以掌握任何一門學問。”教育心理學界為感謝西蒙教授的研究成果,故命名為西蒙學習法。

可見,掌握一門陌生的學問遠遠沒有想象的那麼高難、深奧。多方吸取、廣泛涉獵。極力夯實自己的影響圈、儘量擴大自己的關注圈。財務、經濟、稅務、管理等等知識,有空花時間看看,韜光養晦、未雨綢繆。

總結與反思:

1:不要去做技術上的高手,除非你的目標如此。雖然本文是關於提高軟體開發知識的建議,做技術的高手是我一向都不贊同的。你可以提高自己的專業知識,但能勝任工作即止。

2:提高軟體知識和技術只是問題的表面,本質是要提高自己認識問題、分析問題、解決問題的思想高度。軟體專業知識的很多方法和原理,可以很容易地延伸、應用到生活的其它方面。

3:在能勝任工作的基礎上,立即去涉獵其它領域的專業知識,豐富自己的知識體系、提高自己的綜合素質,尤其是那些目標不在技術方面的朋友。

相關推薦

一個軟體工程師7工作經驗總結

這是在網上看到的一篇文章,寫的是一個從事軟體工程開發的大牛對從業七年的一些經驗總結。感覺挺不錯,轉來與大家分享了,下面是正文。 1、分享第一條經驗:“學歷代表過去,能力代表現在,學習力代表未來。” 其實這是一個來自國外教育領域的一個研究結果。相信工作過幾年、十幾年的朋

一位大資料開發工程師的兩工作經驗總結

一位大資料開發工程師的兩年工作經驗總結 工程師人生 • 2018-07-02 16:41 • 9207次閱讀 今年廣州的六月,在經歷了大雨的洗禮之後,一切都變得更加明朗起來,新的工作,新的人和事。懶惰讓我變得更焦慮,焦慮促使我進步,程式設計師的焦慮大家應該都有共同的感覺,時代的步伐太快了

淺談大數據開發工程師的兩工作經驗總結

引擎 建模 nod 兩種 進行 希望 時代 nodejs ××× 今年廣州的4月,在經歷了大雨的洗禮之後,一切都變得更加明朗起來,新的工作,新的人和事。懶惰讓我變得更焦慮,焦慮促使我進步,程序員的焦慮大家應該都有共同的感覺,時代的步伐太快了,在這個環境下的軟件開發一定會淘汰

Java後端程序員1工作經驗總結

互聯 常用語 耦合 請求 fab 單例 intercept spool accept java後端1年經驗和技術總結(1) 1.引言   畢業已經一年有余,這一年裏特別感謝技術管理人員的器重,以及同事的幫忙,學到了不少東西。這一年裏走過一些彎路,也碰到一些難題,也受到過做為

如何做軟體需求分析(個人工作經驗總結)

前言: 需求對於我們IT人來講是一個再熟悉不過的名詞了,如何在專案開發週期做需求,那就是各有各的道了,下面是我對軟體開發過程中對做需求的理解和總結。希望能給大家帶來一點不同的感官。 1什麼是需求,需求分析在整個開發週期的作用。           對於需求概念來講

java後端程式設計師1工作經驗總結

java後端1年經驗和技術總結(1) 1.引言   畢業已經一年有餘,這一年裡特別感謝技術管理人員的器重,以及同事的幫忙,學到了不少東西。這一年裡走過一些彎路,也碰到一些難題,也受到過做為一名開發卻經常為系統維護和釋出當救火隊員的苦惱。遂決定梳理一下自己所學的東西,為大家分享一下。   經過一年意識到以

一個IT牛人的工作經驗總結

在這將近兩年的工作裡,發生了太多的事情,有了太多的收穫和驚喜。一直想將他們付諸筆下卻沒有這個動力或者時間來實現,今天選擇在2010年的最後一個夜晚。北京的冬天外面掛著凜冽的寒風,而屋內,一瓶啤酒,坐在電腦旁,我決定靜下心來好好的記錄和分享我在這兩年中的收穫和喜悅。Ok,廢話少

一個工作經驗軟體工程師的經驗之談

關注「實驗樓」,每天分享一個專案教程   三年時間過得很快,這些是我感覺比較重要的經驗,希望對初

我做淘寶7工作經驗總結

導讀:這是一個老電商人,做淘寶7年,混到運營總監的位置,今年本命年運氣不太好,出了車禍把腿摔骨折,此文便是在住院期間寫下,乾貨挺多,不是軟文。導讀:這是一個老電商人,做淘寶7年,混到運營總監的位置,今年本命年運氣不太好,出了車禍把腿摔骨折,此文便是在住院期間寫下,乾貨挺多

一名3年工作經驗的程式設計師應該具備的技能(寫得很好,果斷轉) 因為和同事有約定再加上LZ自己也喜歡做完一件事之後進行總結,因此有了這篇文章。這篇文章大部分內容都是面向整個程式設計師群體的,當然因為LZ本身是做Java開發的,因此有一部分內容也是專門面向咱們Java程式設計師的。

因為和同事有約定再加上LZ自己也喜歡做完一件事之後進行總結,因此有了這篇文章。這篇文章大部分內容都是面向整個程式設計師群體的,當然因為LZ本身是做Java開發的,因此有一部分內容也是專門面向咱們Java程式設計師的。 簡單先說一下,LZ座標杭州,13屆本科畢業,算上年前在阿

一位測試大神的軟體測試工作經驗總結

最近,部門剛畢業入職的×××跟大家提議,讓大家把自己的軟體測試工作經驗分享一下,我整理了一下,可能不全。  測試工作經驗分享  一、測試階段劃分 1、 單個模組功能測試時間相對較長,但每一個專案都應該有專門的整合測試階段,並且應該不止進行一輪。 每一輪整合測試,應該都有自己的目的,比如第一輪整合測

2019將到,我的年終總結7開發經驗),獻給迷茫中的你

8   我越來越擔心我作為一個Java程式設計師的未來。 恍然間,發現自己在這個行業裡已經摸爬滾打了7年了,原以為自己就憑已有的專案經驗和工作經歷怎麼著也應該算得上是一個業內比較資歷的人士了,但是今年在換工作的過程中卻遭到了重大的挫折。詳細過程我就不再敘述,在此,只想給大

(轉)阿里Java工程師分享3工作經驗的程式設計師應該具備的技能

點選上方“程式人生”,選擇“置頂公眾號” 第一時間關注程式猿(媛)身邊的故事 每個程式設計師、或者說每個工作者都應該有自己的職業規劃,如果你不是富二代,不是官二代,也沒有職業規劃,希望你可以思考一下自己的將來。今天小編給大家分享的是一篇來自阿里Java工程師對3年工作經驗程式設計師的職業建議,希望對

阿里Java工程師分享3工作經驗的程式設計師應該具備的技能

每個程式設計師、或者說每個工作者都應該有自己的職業規劃,如果你不是富二代,不是官二代,也沒有職業規劃,希望你可以思考一下自己的將來。今天小編給大家分享的是一篇來自阿里Java工程師對3年工作經驗程式設計師的職業建議,希望對你有啟發。   程式設計師的三個階段

1工作經驗一個初中學歷程式設計師的感悟

自我介紹   大家好,我是欣欣欣白白白。一個接近00後的(99年)commonplace coder 我是多久接觸的程式設計呢?   我從小學到初中,一直處於是尖子生的狀態,高中也考進了我們市區的重點高中的尖子班,然而高一開始卻沉迷於英雄聯盟,學習

我的軟體開發生涯 (10開發經驗總結和爆棧人生)

簡介 網名靈感之源,智慧實驗室創始人,從事軟體開發超過10年,寫過千萬下載量軟體,熱衷開源,寫過多個爆棧專案(系統開發技術棧、.Net技術棧、資料庫技術棧、前端開發技術棧)。現定居於澳大利亞悉尼,研發經理,從事系統架構開發。 爆棧人生 現在流行說全棧。每種開發都有其相關的技術。您是否覺得難以羅列

對三工作經驗總結

  不知不覺,我也工作了三年有餘,成為一個有三年工作經驗的程式設計師。在這期間,由於沒有前人指引,也走了很多的彎路,在此,我將我的工作經歷簡單敘述,供即將走上這條不歸路的同學們參考。   由於機緣巧合罷,我進的大學是一所封閉式的大學。我一直以為大學是開放的,有各

作為一個軟體工程師經驗

我覺得,與現階段學習緊密相關的是個人規劃問題,規劃不同,自然需要學習的內容也不同。心無旁騖的時候不妨問自己這樣一個問題:我希望十年後二十年後的自己是什麼樣子的?如果能迅速明確的回答這個問題,那麼你的心中肯定也有了一份對未

3工作經驗以上的java程式猿應該掌握的技術總結

下面給大家貼幾張前段時間從微信公眾號上看到的幾張圖片,上面總結了java程式猿進階的必備知識和技能,個人覺得總結的比較好,所以貼下來,原作者是哪位大牛我不記得了,如果有侵權請聯絡我刪除。 下面是另外一個大牛的總結,跟上面類似,說明高人所見略同

一個自認兩三工作經驗的應屆畢業生_技術經驗貼(開篇)

首先,介紹一下博主,來自專科的一名應屆畢業生.雖然學歷上是博主的一大弱項,但在學校不僅學習日常老師介紹的知識,附帶學習了許多新技術.學習過程中,不僅知其然,而且知其所以然.掌握知識程度上具有一定的廣度,在一定的領域參考借鑑了許多優秀語言,框架的設計思想,如JAVASE,SPR