一个苏州IT人的5年挨踢经历-------经历篇(之三)
3.關于換專業轉投IT
???????因為前面正好看到有人回帖問到這個問題,我就簡單說說自己的看法。首先,除非你考了很多證書能證明你的IT能力,要不這真的不是一個很好的選擇。作為企業,憑什么選這樣半路出家沒有優勢的?即使有公司要你了,那很可能也是一些招人才有困難的不正規小公司。到時,你本專業沒心思搞,IT這又沒有好出路,這是很可能走進困境的。其次,如果真鐵了心要進來,那就試著找個相對正規的公司吧,就像我前面說過的,沒有學校專業背景,那就爭取慢慢一步一步把自己的職業背景,工作背景走出來。但這通常需要一個過程,還需要我們自己不斷的努力和付出,當然還少不了機遇。我可能就是運氣比較好,第一家公司就算是個相對不錯的公司,給了我不錯的機會,而且當年的面試也沒有多苛刻,但相應的起始薪資也當然不高了。
???????所以,對轉專業又沒有什么背景的,那么初期的選擇還是首重公司,然后再考慮薪資和技術方向吧。
?4.不要抱怨學不到東西,擅于挖掘和擅于尋找是關鍵
???????有人經常會說,公司的項目中自己得不到什么提高,學不到東西,感覺是在蹉跎歲月。記得我也有過類似的牢騷。確實,不同的公司,不同的業務形式,不同的項目,不同的團隊確實會導致不同的發展空間和成長效率,這是客觀存在的事實。就象前面說過的,如果你沒有過硬的學校背景,那你的先期土壤可能養分確實會比不上那些背景更好的。這其實沒有什么不公平,因為那些背景好的人在之前確實付出了更多的努力,或者具備更出色的條件,所以才獲得了目前不錯的土壤。既然前期落后了,那我們該怎么辦?其實先期土壤質量高低,只是代表環境的好壞,而決定我們成長的首要因素卻是我們的吸收能力。如果你不擅于吸收,那土壤再肥沃,你的成長速度也未必快,而如果你擅于吸收,汲取養分,那即是在貧瘠的土地里,你也可以長成參天大樹,到時你枝干茂盛了,再移植到富饒之地去,那應該是不難之事。所以,這里我關鍵想說的就是所謂的吸收能力。
???????確實有很多或者說國內絕大部分項目,都是修修改改,復制黏貼,沒有太多技術含量,慢慢的都會變成熟練工似的操作。所以很多人想的都是換一份技術含量更高,更能學到東西的工作。但是殊不知,換來換去,似乎都是半斤八兩,五十步笑百步的境地(個別牛人,或者個別機遇好的人不在討論范圍)。說句心里話,目前國內的IT圈子就是這樣,真正所謂技術高端的工作,還真不多,至少作為草根的我的體會是這樣。那么,怎么在這樣的氛圍環境里提高自己找出路呢?我的建議是,要善于挖掘,善于尋找。挖掘什么,挖掘現有工作中存在但自己未涉及的技術,尋找什么,尋找跟自己目前關聯,或也許將來會跟自己關聯的新技術,然后呢,學吧!什么意思呢,還是說說我的經歷吧。(申明下,每次都以自己的經歷來進行說明,并不是說自己做的就是對的,其實里面也走過很多彎路,甚至以后走向某個死胡同也未可知,大家可以參考下,而我也僅是分享下而已)
???????其實說真的,自己做過的項目還真不算多,待過的公司也不多,5年多的工作經歷,前后所有經歷過的項目加起來,也就5個左右,而且這5個里有幾個并不是主力參加開發的,有幾個還都是主做項目管理和評審等。我的第一個項目,也是時間最長的一個項目,我們做的都是沒有太多難度的UI層工作,很多跟我一個項目組待過的人,都感嘆過做這樣的事情學不到東西,所以有的人很快跳槽了,有的人還在繼續熟練地干著。但是我卻想說,這個項目是我成長的關鍵,它讓我學到了太多東西,這份財富是不可想象的。這是為什么呢?首先,這是一個規模非常大的項目,代碼規模估計在300萬~400萬行左右,涉及操作系統API封裝,驅動封裝,網絡通信應用,嵌入式控制,復雜的數據層框架,UI庫,UI頁面等太多技術,我們國內部門負責的只是UI層的開發,雖然開發量也很大,但是做到中后期,也確實沒有太多技術含量了。但是這么大一個項目,這么多技術,而且源碼都是開放的,隨便抽一樣都夠學段時間的,所以當別人在討論這里該嵌套幾個if-else,那個該來幾個for循環的時候,我早就不局限在這些東西了。記得我首先學通UI庫的框架,接著是操作系統API的封裝框架,再然后是數據層框架,網絡通信,后面還有嵌入式控制的處理,當然沒有人會跟你說這里涉及到這么哪些技術,你可以這樣那樣或怎樣的方式學習,所以就需要我前面所謂的擅于挖掘,你必須自己去挖掘出技術財富。而在挖掘出這些內容學習這些技術的同時,我又延伸出去,看框架我就結合設計模式來學,看操作系統API封裝我就結合多種常用的OS的API來學,看網絡通信應用我就結合網絡通信原理并開發實例來探索,看到用到STL,我就又找了boost來學,這又是前面提到的所謂擅于尋找,因為你需要尋找相關或可能相關的內容來豐富自己。而能否挖掘出來,能否尋找到,這不取決于能力,而取決于是否用心。當然,到最后如果真的挖無可挖,尋不可尋的時候,你就可以考慮換個土壤試試了。
???????總之,我相信,擅于挖掘與尋找,一定可以闖出屬于自己的一片天空。
?
5.推薦一些自己看過,覺得不錯的書
???????這么多年來,技術相關,正版盜版的書也看過不少,在這里就把一些個人覺得不錯的書推薦給大家,當然每個人的看書習慣,品味都不同,僅供參考。
C++方向:《C++Primer》,《C++編程思想》, 《EffectiveC++》,《MoreEffective C++》,《深度探索C++對象模型》
???????這幾本書就不需要我多說了,前面兩本如果作為入門書學習有困難的話,也可以先找本其他薄點的入門書先看下,然后再看這兩本(其實兩本里選一本就OK了)。并不建議在讀完前兩本后就馬上開始第三本,第三本可以再有了一定基礎以后再學。至于第四本,雖然也是經典中的經典,但是難度挺高的,具有一定挑戰性。最后那本如果對C++的構建思想有興趣,或者想往Com方向發展的話可以看下。
嵌入式C和實時操作系統方向:
???????記得在大學時看過幾本書,現在記得的不多了,只有一本想推薦一下,《嵌入式實時操作系統μCOS-II》,邵貝貝翻譯的。可以結合μCOS源碼來學,我上學時奉為經典。看完后至少對操作系統的基本概念,基本框架,功能能有個大概了解,而且對嵌入式C方向很有幫助。
?
Linux系統管理服務器配置方向:《鳥哥的linux私房菜》兩卷
???????這方面書我只看過這個系列,分上下兩卷。上卷是Linux基本功能和命令,下卷是網絡基礎,服務器架設相關,覺得寫得非常通俗易懂,是這個方向入門不可多得的好書。
Linux編程方向:《UNIX環境高級編程》
???????絕對經典中的經典,如果做Linux程序方面應該都知道,我就不多說了。最好看第二版,因為線程部分在老版里是沒有的。
Windows編程基礎方向:《windows程序設計》,《Windows核心編程》
???????這個不多說了。Windows方向必看。
Com,ATL方向:《COM原理與應用》,《COM技術內幕》,《ATL開發指南》
???????想學Com而又自認為基礎不太好的話,可以先大概瀏覽一下《深度探索C++對象模型》,應該能幫助你理解。然后我很推薦潘愛民的《COM原理與應用》,國內難的一見的好書。名字和原書封面都很不起眼,但是內容真的不錯。《COM技術內幕》這個可以在看上一本的情況下結合來看。最后那本作為ATL入門書還是不錯的,至少比較通俗易懂。
網絡編程方向:《TCP-IP詳解》前兩卷,《Unix網絡編程》兩卷,《effectiveTCP/IP》(中文名《高級TCP/IP編程》),《C++網絡編程》(專門介紹ACE的兩卷)
???????在開始我不太建議去看上面任何一本書,可以先找些簡單了資料和代碼,弄清楚網絡編程基本概念,Sokcet的一些基本API后再看。首先《TCP-IP詳解》第一卷,太經典了,翻過n次,還是覺得每次看都有收獲,從概念上完全剖析了TCP/IP的各個環節。關于第二卷,看的門檻比較高,我只是隨便翻過,掌握了點皮毛,如果只是做網絡應用開發的話就略過好了,可以看《Unix網絡編程》的第一卷,而這個系列第二卷主要是針對Unix進程間通信的,如果你不是做Linux,Unix方向的可以不看。《effectiveTCP/IP》這個絕對是必看的,可以讓你對網絡編程的理解再上一個層次。最后關于ACE的,也是比較推薦看的,ACE整個框架里對設計模式的應用是淋漓盡致,有很高的參考價值。這里再補一句,作為網路基礎入門,前面鳥哥那套書第二卷里的第二章看看也不錯,不長,但是寫得風格很不錯。下面是網上的鏈接。
http://linux-vbird.bluedata.org/linux_server/0110network_basic.htm
(以上的說明對windows方向同樣適用)
設計模式方向:《設計模式》(四人幫的那本),《敏捷軟件開發(原則模式與實踐)》,《面向模式的軟件架構》(共四卷)
???????第一本就不說了,這個方向的經典,第二本名字是敏捷開發的,其實絕大部分都是講的面向對象設計思想和設計模式,內容也是絕對經典。面向模式系列基本涵蓋了所有設計模式,第一卷是系統架構的整體介紹,第二卷是分布式網絡架構方向的設計模式介紹,第三卷沒看過,第四卷是2,3兩卷涉及到的設計模式的總匯。好像現在又出第五卷了。
SQL方向:《SQL入門經典》
???????如果想學SQL文設計的話,這本不錯。
?
java,J2SE方向,《thinkingin java》,《java核心技術》兩卷
???????雖然對java語言本身的理解好可以,但不是我的主攻方向,所以下面說的僅供參考。我也只推薦J2SE方面的書。一本是《thinkingin java》,我應該有讀過2,3遍吧,只能說Thinkingin系列的書都是經典。如果你看不進去,其實還是對面向思想方面的理解還有欠缺吧,可以先找本更簡單入門點的書導讀一下再回過來讀,如果是第一次開始精讀的時候,一定要結合源碼例子,邊寫邊讀。另外也推薦后面的那個系列的兩卷也是很經典的。這些讀完java的基礎應該就可以了,不管走WEB方向還是移動方向發展都應該可以得心應手。
數據庫方向,《SQL-Server2000編程員指南》,《SQL入門經典》
???????我只搗鼓過SQL-Server和MySQL,數據庫方面的書看的不多,上面兩本是看過覺得算不錯的。
轉載于:https://www.cnblogs.com/secbook/archive/2012/04/07/2655127.html
總結
以上是生活随笔為你收集整理的一个苏州IT人的5年挨踢经历-------经历篇(之三)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Rexsee API介绍:Android
- 下一篇: 逢高减仓t +1什么意思?