淺談公司的技術方向 Java 與 .Net 的分工合作,一個公司的整體技術定位

weixin_34391854發表於2009-11-12

   最近感想頗多,有時候客戶、業務的關係,非要強迫我走Java的路線一樣,我始終放棄了換技術方向的念頭,堅持.NET方向。

 

從公司的角度出發

   1. 公司往往競標參與專案時,客戶會指定用Java或者.NET做,難免會碰上經濟效益還可以的Java的專案,你不做吧,也不太可能。

   2. 招聘人才時,也往往碰上有些不錯的人才,你無法要求他們必須是.NET方向的人才或者Java方向的人才,這樣招聘人員的範圍被限制了,而且有些優秀的人才由於方向不一致不能招聘。

   3. 由於歷史原因公司裡很可能又有Java的專案,又有.Net的專案,你不能說哪些需要維護,那些不維護了,放棄了,那是不太可能的。

 

從個人的角度出發

   1. 高薪招聘的職位,一般是Java開發的方向,我畢竟是打工的,有時候工作不順心也會有跳槽的想法產生,看看那些待遇比較好的開發類工作,往往都是Java方向的,杭州很少會碰到.NET方向的好工作。

   2. 客戶經常想讓我做Java方向的大專案,當然很多都是洽談,就是有希望能拿到幾十萬或者上百萬的大型軟體系統,由於客戶用的是小型機,必須要用Java開發,.Net 是免談的。

   3. 有些客戶現在採用的技術方向就是Java的,他們原有的系統需要維護,將來也會陸續會有一些新的Java方向的專案會發包出來,他們也是不會採用.NET技術路線。

   4. 在公開競標與競爭對手競爭時,往往.NET開不出高價位,往往在技術上、安全性上低人一等一樣的感覺,社會上也普遍這麼認可一樣。

 

    理想狀態是,公司採用一個主打技術路線,做某一個產品或者固定方向的軟體,這個公司才會有競爭力,平時工作也不累,也容易得到穩定的積累,什麼都做,什麼也做不好,什麼也積累不下來,打工的開發人員累得也要死,公司也沒什麼經濟效益。

 

    我見過很多比較亂的公司,也見過的確做得很棒的公司,簡單對比一下:

    技術定位很亂的公司: 來一個專案,搞一波人,從零開始瞎折騰,由於公司沒有積累,開發人員平時累得要死,加班加點,專案結束了,時間也拖得很長,公司也沒什麼經濟效益,客戶也很累,薪資也加不上來人也散了,很可能專案也成了爛尾專案,能順利竣工就很不錯了。

    定位比較準確的公司: 例如我們公司也有幾百號開發人員,方向總體上定義得很明確,我們OA系統的前臺是用Java語言開發的,這樣競標上有優勢,很容易戰勝競爭對手,其次我們後臺配置是用.Net做的,開發效率高,公司還可以儲備.Net方向的人才,用.Net做 後臺配置工具,比Java開發應該快上3倍總是會有的吧,萬一哪一天Java不行了,.NET流行了,公司也不怕,遇到一些需要用.NET做的專案,做介面之類的,這批技術人員也都能派上用處。

    定位比較狠的公司:公司只做.NET的專案,而且只做B\S的專案,資料庫只用Oracle,其他都免談,要跟我做生意,就必須符合我們公司的要求,不做生意拉到,誰怕誰啊,其次是公司只用一個整體的開發架構,不管是大專案小專案,都一個模樣,風格差不多,甚至操作也一樣,整個公司就一套東西,頂多有稍微細小的變化,10個8個業務系統都是集中管理的,而且開發也只做一個行業的軟體,例如電力行業,其他行業不涉足,因為瞎搞沒用,競爭不過行業內的專家,無法大規模開拓客戶銷售產品不容易有大的經濟效益,自己採購的小型軟體系統,也必須符合公司的統一要求,實在是大型的通用的軟體產品,那是沒辦法控制了,否則必須要滿足公司的要求,在這樣的公司幹活,相對會輕鬆一些,公司也很容易積累成果,幹活也不累,經濟效益也可以,雖然說不上最好。

    我也見過一些只做教育行業的,只用Java開發的公司,發展得也不錯的。

 

   雖然有一通百通的大道理,但是有些時候未必行得通,例如你懂了英語,就很容易學會法語嗎?雖然話不是這麼講的,我精通漢語、蒙語,但是英語就是死活學不好。按道理我應該比別人更容易學會才對,因為我從小講2門語言長大。

   哪個都懂一些,就不容易成為專才,很容易是跟在別人屁股後面,別人說怎麼搞,就跟著大夥而瞎折騰的那種,很容易變成最底層的開發人員,什麼都會,什麼都不精。

   所以,我沒有被各種誘惑誤導,放棄.NET奔向Java,只做.NET就可以了,Java的不管我的事,我精力也有限,也沒必要接那麼多專案,我也消化不了,我需要休息,我需要工作、學習、開發以外的生活空間,我跟其他人比較,我的優點就是.NET強,我把這個優點拋棄了,我有什麼競爭力了?就像別人開玩笑話我“吉日啊,你只懂寫程式,其他啥也不懂啥也不會”,雖然當場聽的時候是很不高興,但是事後想想,我不就是靠這個嘛?我還靠管理啊?公司的老闆負責管理,我管理了他們要下崗啊?我就是開發人員嘛,只懂開發也不錯了,最起碼及格了。

 

   這幾年,出來的新技術也非常多,每個都學吧,經歷也不夠,WCF、WF、WPF、Silverlight、LinQ等等,我也每個都學了一些,但是感覺學精都不容易,現在我想想,還是先把Silverlight仔細學學,這個是展示用的,最終客戶最關心的是展示效果,客戶是看不到後臺有多麼嚴謹,我想先把Silverlight學好容易見經濟效益,而且也比較明顯一些,其他的,慢慢消化,若真能做出來又漂亮又大氣美觀的網頁功能,應該是符合時代發展潮流的。

 

 歡迎大家提補充意見,一同整理心得體會。

 

 

相關文章