從事軟件開發工做10年後的總結

我曾經寫過一篇博客,從事軟件開發工做5年後的總結,當時寫這篇博客的目的就是整理一下本身從事軟件開發工做5年以來所接觸過的一些技術、工具,將這些內容造成條理化,便於回顧和查漏補缺。時間過的飛快,一會兒又過了5年,正好到了10年左右的時間。也仍是有必要寫一篇這樣的文章,對以前所經歷的和本身的感想做個簡要的總結。html

1、職業發展的階段程序員

從職業發展的角度來看,一我的到了10年這個階段,以前會經歷這麼幾個階段:編程

a) 1-2年(23歲) 安全

職業發展初級階段,這個階段的技術小白會對IT技術充滿好奇,但技術能力偏弱,對IT技術大牛很是崇拜,夢想着有朝一日也能成爲技術大牛,是整個職業生涯的起步階段,成長很是快。網絡

b) 3年(26歲)架構

爲何單獨把3年拿出來,緣由是不少招聘信息要求都是3年左右的經驗,爲何恰恰是3年呢?由於3年是一個坎,相對於從事1-2年的開發工做的,3年的從業者有了一些項目開發經驗(通常已經作過兩個以上的項目),可以獨立完成一些難度不大的模塊開發。他們是不少公司最須要的人,由於能幹活,工資要求不是很是高(正所謂性價比較高),也正由於如此,因此這部分人羣很是容易找到工做。框架

c) 4-5年(28歲)編程語言

這個時候的程序員,若是堅持下來的話,基本上都能成長爲高級開發工程師。他們可以獨立開發、設計一些有難度的系統並有必定的理論知識水平,是企業的技術中堅。工具

d) 5-8年(31歲)性能

不少程序員都有一個架構師的夢,這個階段的程序員廣泛會追求這個目標。他們除了更快更好的完成本身的系統開發工做,更多的會去關注性能、安全、系統架構等更高階的技術問題。不少人在這個階段,都能成長爲架構師、技術專家。

e) 8-10年(33歲)

通過上述階段的磨鍊,不管是技術能力、工做(職場)經驗仍是本身的身體狀態,都到了一我的的巔峯狀態。不少人會在這個階段本身創業、開公司,作培訓,從而達到本身事業的巔峯。

 

2、如何學習新技術

聽到很多人說IT技術更新太快了,學不動了。關於這個問題,我以爲並非真的學不動了,而是有兩個緣由:一是由於懶,不想再花時間精力去研究,總想着,一招鮮吃遍天,這在突飛猛進的IT技術領域確定不適用。不誇張的說,3個月不學習新技術新框架新思想,就落後了,若是1年不學,你就找不到工做了。二是能力不夠,其實技術是有關聯性的,不少知識也是相通的,以前學的技術只是掌握了招式,並無掌握精髓,因此在遇到新技術的時候,又從新開始學習,當學新技術遇到困難時,天然就想打退堂鼓。但最本質的緣由只有一個,那就是對IT技術的熱愛程度不夠,若是你真的把IT技術當作本身一輩子的事業,你不會不去學習這些所謂新技術的,再難學也會慢慢消化掉。

若是有紮實的基本功(計算機專業課程、各類編程技巧)和解決問題的能力(分析問題、找到對策、經驗),學習新技術應該是一個很天然而然的過程。這裏提出兩種學習方法:

一、學以至用

學習是爲了解決問題,並非爲了學習而學習。要將本身所學的知識和技術運用於實踐,在實踐中昇華認識,從而得到知足感。

二、帶着問題學

學習是有很高的時間成本的,學習要有目的性,不能盲目的學。即我想經過1個小時的學習解決什麼問題,從而提升學習的效率。

 

3、10年後應該達到的能力

a) 看過不止200本技術書籍(實體書),電子書更是不可勝數。網絡上列出的經典書籍基本都翻閱過,並能結合工做實際提出本身獨到的看法。

b) 作過N多的各類規模、不一樣類型的項目(不限於語言、軟件)。不只僅是工做上的,也有本身接的私活。人生有幾個10年?因此必定要有本身的表明做、成名做。

c) 不限於本身的定位,即再也不單純的把本身定位於xxx軟件工程師(接觸過的語言不下20種,熟練使用的有10種,精通的至少有3種)。再也不有編程語言的偏好,而是從編程模式、編譯器原理等方面看待編程語言。

d) 對任何IT技術領域出現的新技術新思想保持敏感,新技術的學習在很短的時間內(好比一週學會iOS開發,10天入門單片機)就能上手運用。

e) 將IT技術分門別類,創建技術體系。縱向上從硬件、軟件、網絡、操做系統等方面深刻,橫向上從各類不一樣技術領域的應用入手。可以透過現象,深刻分析其本質,即遇到問題時可以精肯定位,快速解決問題。

相關文章
相關標籤/搜索