印度軟體水平和中國的程式設計師

2022-02-12 08:10:01 字數 3489 閱讀 8311

印度軟體開發

我在工作中,接觸到印度軟體公司開發出來的軟體:整個體系架構非常清晰,按照我們的要求實現了全部功能,而且相當穩定。

但是開啟具體的**一看,拖沓冗長,水平不咋樣。我們自己的一些程式設計師就有怪話了,說他們水平真低。但是!印度人能夠把軟體整體把握得很好,能夠完成軟體,並得到相當好的設計文件。而中國人在那裡琢磨資料結構、演算法,介面人員就還沒編碼就想著是outlook式的還是visual studio式的介面。到最後就成為code高手,對某些特定的開發工具精通,但是就是不能保證能夠把乙個軟體穩當、完整的開發出來。

舉個簡單的例子:

軟體中需要乙個列表,用來表示我們處理的事務。該類表在業務繁忙的時候將變得很大。中國人就用雙向鍊錶,抱著《資料結構》書在那裡寫鍊錶的類。

印度人開了乙個大陣列,然後就開始幹。為什麼印度人不用鍊錶,他們說:

1、你們給出的裝置(小型機),最少具備512m記憶體,浪費一些沒有什麼。

2、陣列方式訪問方便、效率高。看出了一拿到東西就吭哧吭哧作code,和好好進行軟體分析的不同了嗎?

正好前幾天我有幾個同事從印度回來和我們交流,那家公司是cmm4級公司. 我感受的幾點:

1,流程重於專案

2,qc(就是qa)獨立於研發部門,專門檢查研發部門的開發流程是不是按照既定流程

走.如果qc覺得流程不對,他會直接上報高層,專案肯定就此停止.

3,所謂的專案經理(pc)一般也是從編碼人員公升上來的,並不是所謂的不懂技術,一般都至少有四年以上的經驗

4,pc主要就是制定開發計畫,負責協調,填寫各種**.

5,所有的東西(包括草稿)都有文件.

6,詳細文件要求達到只有這個文件就可以編碼的程度,一般寫文件時間佔60%,編碼時間極少

7,有各種詳細的review(同行評審),專案組內的,專案組之間的,客戶的...

8,計畫很詳細,的確能達到小時級,但是實際情況還是誤差比較大,所以他們也有加班.

先學習uml和rose以及rup,不要總是要找著證據。

在中國的軟體開發水平下,很難給你乙個好的例子,ok?

中國人總是要看到乙個東西有了試驗田,而且稻子長得好,才換稻。要知道在國

外上述的軟體開發模式的應用,大可以看看rational網頁上的story。 just do it! 一句話,中國的軟體開發水平低得很。

趕不上印度人,印度的軟體公司可以讓高中生編**,它的軟體工程水平可想而知。

當然,你如果是個很牛的程式設計師。估計夠嗆,因為中國的氣氛中,很牛的程式設計師都很難接受軟體工程的。你可以測試一下自己,看看自己適不適合現在學習軟體工程:

1、你是不是不能忍受乙個程式設計序不如你的人做你的專案經理?

2、你是不是覺得你的老闆對客戶吹牛皮、誇大自己而感到不舒服?

3、你是不是乙個拿到乙個需求腦袋裡第一念頭就是如何實現的人?

4、你是不是很崇拜stallman,linus,很討厭microsoft?

5、你是不是曾經在深夜編碼的時候,突然感覺到一種乏味,對code的生涯感到一

種無趣?

以管窺豹──印度神話

1、他們的軟體教育水平:

我們招聘印度人,給應聘者出了乙份與國內差不多的試卷,有基礎概念和程式設計題目。

等到他們完成後,我們這些中國的自認高手驚呆了!他們的程式設計題目簡直象是抄襲的。

程式結構,注釋,變數命名就不說了吧,全部都是極其類似!

反觀中國的牛人、高手,每個人有自己的一套。到了新的崗位,先把前任的程式貶損一

通,然後自己再開發更多的問題的**來代替。我的公司統計,乙個軟體中有4個以上 csocket版本,每個人都覺得別人做得差,自己再搞一套。中國人,就是這個樣子,還

會辯解說「我們這樣有創造性」。

其實軟體發展,早就走過了求伯君那個編碼英雄的年代,程式設計師已經是個坐辦公室的藍領了。你具備擰好乙個螺絲釘的能力就可以了。code是最低階的事情了。

2、他們許多公司的專案經理根本就不懂技術。

中國的專案經理如果不能在技術上壓服下屬,那麼下屬將與他搞鬼,越是高手越喜歡搞

鬼,根本不知道作軟體的終極目的是從別人兜裡錢,而在內部搞不團結。技術高手都

會糾集一些對他技術上崇拜的菜鳥,與管理層作對。

而印度的軟體經理根本就不懂正在做的東西,許多甚至直接就是mba,或者是領域家工業設計、地理專家等),而不是編碼的專家。但是卻能夠領導大群素質良好的程式

員把工作做好,沒有內部不團結的情況。

許多印度的程式設計師加入乙個公司很長時,都不知道自己整天編的**是幹什麼用的。

給他們的任務可能就是乙個函式的宣告及該函式要實現的功能。我們呢?

3、他們的程式設計人員的流動率達到30%! 他們的程式設計員流動率(包括內部專案之間的流動)高達30%,可以想見他們的文件水

平如何。他們的產品不依賴任何乙個人,誰都可以立即辭職,產品的開發還是會正常進

行。而中

國,是老闆怕總工。技術骨幹擁兵自重,抗拒管理。任何制定好的計畫,都有可能

被技術人員推翻或者跟你消極怠工。

4、他們的開發計畫能夠做到小時級別。

如果乙個印度司的專案經理沒有上班,那麼他的下屬將可能不知道作什麼。他們的計

劃一般都定到天,每個基層開發人員每天的工作量就是8小時。

而我們能夠給出月度計畫的公司就很

少,而給出的月度計畫要麼不可能實現,要麼就可

能被取消。開發人員被初略的給個任務,他在月初,可以慢慢琢磨是做成什麼樣子,然

後上上網,聊聊天。到了月中和月末

,就開始熬夜編碼。

看到每年,從各大高校不盡牛人滾滾來,我們是不得不要召人,同時又是不抱希望。我

公司現在有意以後將核心軟體開發外包給印度公司,中國人?做做

介面吧,中國人做界

面會極盡奇技淫巧,搞得花裡胡哨的。 btw,我公司非外企,大家不要誤會我們有什麼種族歧視。但是我們現在就是對自己歧

視,自卑得很。中科院那麼

多研究院,連個能用的作業系統都搞不定。北大開發一些東

西,比如什麼青鳥case,就

是給一幫人評職稱的。楊芙清院士整天搞來搞去,搞出了什

麼東西?b大,t大的人最難

管理,牛得看不見人。

中國的程式設計師罵微軟,追linux是全世界最恨得,可是我們除了

漢化linux,做了什麼東

西出來。cde是瑞典人寫的,linus是芬蘭的,gnome是墨西哥人寫的。哎,我們曾經是

多麼的瞧不起印度人。

印度和中國程式設計師的區別

乙個在美國 ibm 工作過 2 年,在印度公司工作了 4 年的專案 經理與我公司資深 軟體開發經理有 這樣一段對話。印方經理問 你們 每月生產 多少行 我方 經理掂量了很久,謙虛地 說 人均 1 萬多行吧,不到 2 萬行 印方經理聽後,眼睛瞪得 圓圓的 喔!你們已 經遠遠超過國 際最高水平了。我方 ...

無知者無畏 中國程式設計師和印度程式設計師的對話

乙個在美國ibm工作過2年,在印度公司工作了4年的專案經理與我司資深軟體開發經理有這樣一段對話。印方經理問 你們每月生產多少行 我方經理掂量了很久,謙虛地說 人均 1萬多行吧,不到2萬行 印方經理聽後,眼睛瞪得圓圓的 喔!你們已經遠遠超過國際最高水平了。我方經理惴惴不安地反問 你們的呢?印方經理很認...

無知者無畏 中國程式設計師和印度程式設計師的對話

乙個在美國ibm工作過2年,在印度公司工作了4年的專案經理與我司資深軟體開發經理有這樣一段對話。印方經理問 你們每月生產多少行 我方經理掂量了很久,謙虛地說 人均 1萬多行吧,不到2萬行 印方經理聽後,眼睛瞪得圓圓的 喔!你們已經遠遠超過國際最高水平了。我方經理惴惴不安地反問 你們的呢?印方經理很認...