我叫Siva,是印度海得拉巴的一名軟件開發(fā)人員。軟件開發(fā)是一份令人興奮的工作,因?yàn)槟忝刻於伎梢钥吹叫率挛?。如果沒(méi)有新的事物,我們還可以賦予一些舊概念新的有趣的名字,然后自?shī)首詷?lè)。但是,從我的角度來(lái)說(shuō),在印度做一個(gè)軟件開發(fā)人員略有不同,也有點(diǎn)難??傊谎噪y盡。
來(lái)自于其他國(guó)家的軟件開發(fā)人員對(duì)印度軟件開發(fā)人員的看法,讓我大吃一驚。
所以今天,我想和大家分享我作為印度IT行業(yè)中的一名軟件開發(fā)人員的感受。
ps:這些純粹是個(gè)人觀點(diǎn),不喜勿噴。
我的第一份工作
我的第一份工作是在一家小公司里,職位是Java開發(fā)人員。并且我的幾個(gè)非常親密的朋友也加入了這家公司。我很慶幸能在我職業(yè)生涯的初期就和一些非常有才華的人一起工作。
我的第一個(gè)經(jīng)理習(xí)慣于強(qiáng)迫我們?cè)诠ぷ鞯牡?到3個(gè)月時(shí)間內(nèi)只使用 Notepad+ + / EditPlus編碼,目的是為了讓我們熟悉如何編譯和運(yùn)行程序,并知道編譯時(shí)和運(yùn)行時(shí)的類路徑等。但是,架構(gòu)師對(duì)此頗不認(rèn)同。有一天,他看見我在用EditPlus編碼,就走到我身邊,說(shuō):“難道你去打仗都不用武器的嗎?”。他從我一片茫然的表情中知道了我并不知道他在說(shuō)什么。他將鍵盤拖到他面前,下載了Lomboz Eclipse(一種Eclipse的變體,不過(guò)現(xiàn)在已經(jīng)沒(méi)落了),然后給我解說(shuō)如何使用它。此外,時(shí)不時(shí)地,他還教了我一些很有趣的鍵盤快捷鍵,用IDE代替Notepad/ EditPlus寫代碼的速度明顯快多了。
我從他們身上學(xué)到了了解事物的工作原理以及如何有效使用工具來(lái)加快工作的重要性。
對(duì)了,我的團(tuán)隊(duì)領(lǐng)導(dǎo)是實(shí)戰(zhàn)經(jīng)驗(yàn)非常豐富的開發(fā)人員。他記得大多數(shù)核心的Java API方法,并對(duì)設(shè)計(jì)模式有一個(gè)很好的理解。他是一個(gè)完美主義者。即使只是代碼縮進(jìn)不正確,他也不同意我們提交代碼。有一天,我們正在加班,時(shí)間甚至已經(jīng)是第二天凌晨了,因?yàn)槲覀兊锰峁┮恍┚o急交付。然而即使這樣,他也堅(jiān)持要糾正縮進(jìn),清理導(dǎo)入的包和未使用的變量,嚴(yán)格按照TABs和空格一致等原則。我們抱怨不休。
但是后來(lái)在融合來(lái)自于不同開發(fā)人員的所有代碼更改的時(shí)候,我們才意識(shí)到這么做的重要性。他總是說(shuō):“既然要做,就要把事情做好。否則就不要做?!?/p>
至于團(tuán)隊(duì)中的其他成員,由于我們也是好朋友,所以彼此之間沒(méi)有任何沖突,也沒(méi)有政治矛盾。我們常常周五晚上開party直至凌晨2點(diǎn),在辦公室講笑話樂(lè)得哈哈大笑。一切都是那么美好。
開啟我真正的旅程
3年后,我離開了這家公司,跳槽到一家大公司里,大公司意味著更好的工作,更高的工資和更佳的工作文化。然而我很快發(fā)現(xiàn),并不是所有的東西,大公司都比小公司好!在那里,我遇到了一個(gè)有著可怕代碼庫(kù)的遺留應(yīng)用程序,看得我真是頭大無(wú)比。
此外,和我一起工作的開發(fā)人員,都是這家公司的老員工,他們不愿意接受任何新的東西,沒(méi)有興趣使應(yīng)用程序變得更好,只想墨守陳規(guī),即使原來(lái)用慣的方法是令人痛苦不堪。
由于印度IT產(chǎn)業(yè)主要是基于離岸開發(fā)模式,大部分的時(shí)間我們都在維護(hù)遺留的代碼庫(kù)。我們很少有機(jī)會(huì)去搞新建的項(xiàng)目。即使是那些關(guān)鍵架構(gòu)/設(shè)計(jì)部分是由現(xiàn)場(chǎng)團(tuán)隊(duì)完成的新建項(xiàng)目。
幸運(yùn)的是我有機(jī)會(huì)去參與一些新建項(xiàng)目,也涉及了從頭開始設(shè)計(jì)應(yīng)用程序的過(guò)程。
許多公司里對(duì)那些想要繼續(xù)走技術(shù)路線不想轉(zhuǎn)去管理部門的程序員,都沒(méi)有明確的職業(yè)發(fā)展規(guī)劃。更糟糕的是有些公司迫使開發(fā)人員在具備了一定年限的工作經(jīng)驗(yàn)之后,步入人事管理的行列。
青菜蘿卜各有所愛,不是所有的開發(fā)人員都熱衷于技術(shù),這無(wú)可厚非。有的人是做一天和尚撞一天鐘,有的人只想著不擇手段完成就好,不管代碼質(zhì)量和可維護(hù)性如何。在印度,你很難找到那種充滿激情的開發(fā)人員,因?yàn)榇蟛糠秩酥皇菍?a target="_blank">編程當(dāng)作工作而已,而是不是因?yàn)闃?lè)趣和愛好。
有時(shí),我學(xué)會(huì)了新的東西,或做了一些很酷的玩意兒,環(huán)顧四周想分享我的激動(dòng)心情之時(shí),卻發(fā)覺(jué)沒(méi)有人能夠理解我的這種興奮之情。
寫博客
當(dāng)我在一個(gè)項(xiàng)目中使用Struts 1.x框架的時(shí)候,我碰到了一些棘手的問(wèn)題。并且在努力搗鼓了3天之后依然找不到任何解決方案。我不停地調(diào)試,搜索了所有的書籍和論壇。終于發(fā)現(xiàn)有人針對(duì)這個(gè)問(wèn)題剛好寫了一篇文章,并提供了解決方案。果然他的解決方案是有效的。我向那位博客作者表達(dá)了萬(wàn)分感謝。但想到還有很多不知道作者的博客也幫助了我很多,于是也想開一個(gè)博客回饋社區(qū)。于是,我有了我自己的博客,上面我陸陸續(xù)續(xù)寫了一些我學(xué)到的東西。
不久,我的文章發(fā)表在了DZone和JavaCodeGeeks社區(qū)網(wǎng)站上。雖然我的英語(yǔ)寫作能力不夠好,但我一直在寫文章,希望通過(guò)練習(xí)能夠熟能生巧。
當(dāng)看到有人對(duì)我的文章評(píng)論“在你的文章中我學(xué)到了一些東西”的時(shí)候,我真的非常開心。我從StackOverflow,博客,論壇等社區(qū)中獲得了很多幫助,如果可能的話我也想盡我的微薄之力回饋給社區(qū): -)
寫書
之后,我寫的文章陸陸續(xù)續(xù)發(fā)表在了DZone和JavaCodeGeeks上,我的博客擁有了越來(lái)越多的訪問(wèn)者。終于有一天,我收到了來(lái)自Packt出版社的一封電子郵件,上面問(wèn)我是否有興趣寫一本關(guān)于MyBatis的書,我當(dāng)時(shí)真的是激動(dòng)萬(wàn)分。
在我答應(yīng)寫這本書之后,他們開始向我解釋寫作流程和支付的詳細(xì)信息。他們可能不知道,即使沒(méi)有任何報(bào)酬,我也愿意寫這本書。我同意寫這本書是因?yàn)槲覍?duì)技術(shù)的熱情,而不是為了賺錢。
當(dāng)我差不多完成我的第一本書的時(shí)候,他們要求我寫另一本關(guān)于PrimeFaces的書,我同意了。我大概花了18個(gè)月的時(shí)間來(lái)寫這兩本書。在這一年半的時(shí)間里,我沒(méi)有任何休息,沒(méi)有周末,也沒(méi)有外出游玩,什么都沒(méi)有。一有時(shí)間我就去寫書,或閱讀我已經(jīng)寫好的內(nèi)容看看能不能改動(dòng)什么使表達(dá)描述更精準(zhǔn)。
也正是這段時(shí)間,讓我意識(shí)到有一些自己的空余時(shí)間是多么的重要。寫書是非常耗費(fèi)時(shí)間的。如果你寫書的目的是為了賺錢,那么我建議你換一種方法!
然后有一天,我收到了一個(gè)快遞,里面是《MyBatis》這本書的印刷本??粗约旱膭趧?dòng)成果變?yōu)楝F(xiàn)實(shí),感覺(jué)真心太棒了。我激動(dòng)不已。
充滿激情的開發(fā)人員面臨的挑戰(zhàn)
印度的軟件開發(fā)人員需要面對(duì)很多問(wèn)題。
優(yōu)秀的開發(fā)人員就像戰(zhàn)爭(zhēng)英雄
由于我們要做的大多數(shù)是遺留項(xiàng)目,或是在維護(hù)模式下的項(xiàng)目,因此管理層更喜歡那些忠誠(chéng)的,堅(jiān)守在公司的老員工(盡管很多老員工拿的工資并不高或者公司并沒(méi)有將他們當(dāng)作一種資源對(duì)待),而不是技術(shù)力量雄厚的人才。
優(yōu)秀的開發(fā)人員就像戰(zhàn)爭(zhēng)英雄,雖然在我們開啟新項(xiàng)目或創(chuàng)建一些核心設(shè)計(jì)的時(shí)候需要這樣的人才,但是一旦核心設(shè)計(jì)已經(jīng)搞定了,其他的開發(fā)人員按照設(shè)計(jì)走也可以添加方法到流的時(shí)候,就像一旦戰(zhàn)爭(zhēng)結(jié)束了,那些英雄就會(huì)變得無(wú)人問(wèn)津一樣,很多公司就不會(huì)再去關(guān)注那些優(yōu)秀的開發(fā)人員。
許多非印度技術(shù)人員討厭印度的開發(fā)人員
我經(jīng)??吹揭恍┡険粲《溶浖_發(fā)人員的文章。當(dāng)然,這只是一些個(gè)人的意見。
印度IT企業(yè)的主要問(wèn)題是,為了獲得項(xiàng)目,他們讓客戶相信他們能在幾乎不可能的時(shí)間內(nèi)交付項(xiàng)目。而為了達(dá)成這些瘋狂的時(shí)間線,他們將責(zé)任下放到管理人員身上,然后管理人員強(qiáng)迫團(tuán)隊(duì)領(lǐng)導(dǎo)接受任務(wù),而團(tuán)隊(duì)領(lǐng)導(dǎo)再將截止時(shí)間扔給開發(fā)人員。這就是印度的開發(fā)人員面臨的最大問(wèn)題。許多印度的開發(fā)人員不知道怎么說(shuō)“NO”。他們只會(huì)默默地接受這種瘋狂的時(shí)間計(jì)劃,竭盡全力地完成。而這整個(gè)過(guò)程的結(jié)果是“不可維護(hù)的蹩腳的代碼”。
但是,我還有幾個(gè)問(wèn)題。現(xiàn)場(chǎng)的非印度客戶怎么會(huì)相信“印度離岸團(tuán)隊(duì)可以用6個(gè)月的時(shí)間建造現(xiàn)場(chǎng)團(tuán)隊(duì)預(yù)估要18個(gè)月的同一個(gè)項(xiàng)目”?他們?yōu)槭裁床灰蠼K端到終端的測(cè)試套件?他們?yōu)槭裁床灰蟠a質(zhì)量報(bào)告?
一分價(jià)錢一分貨!你支付多少,你才會(huì)得到多少!
那些大放厥詞說(shuō)“所有印度程序員都很差勁”的人,應(yīng)該先想清楚再說(shuō)。這樣一棍子打死一船人,是要不得的。每個(gè)地方每個(gè)國(guó)家都既有優(yōu)秀的開發(fā)人員,也有差勁的開發(fā)人員。我曾經(jīng)和一些非常囂張傲慢的現(xiàn)場(chǎng)開發(fā)人員合作過(guò)。那么難道說(shuō)所有的現(xiàn)場(chǎng)開發(fā)人員都是囂張的嗎?這當(dāng)然是大錯(cuò)特錯(cuò)的。
我堅(jiān)信,在印度也有很多偉大的開發(fā)人員和架構(gòu)師,而且我和他們共事過(guò)。
也有很多像我這樣希望每天都能學(xué)到什么,想要成為比昨天更優(yōu)秀的開發(fā)人員。這么多年時(shí)間中,我學(xué)會(huì)了“如何快速學(xué)習(xí)新事物”。所以,我竭盡全力學(xué)習(xí),為明天做好準(zhǔn)備。無(wú)論你要我使用的是Spring還是JavaEE,Python還是RoR,Eclipse還是NetBeans,我都能手到擒來(lái),游刃有余。
繼社區(qū)之后
正如我說(shuō),在印度很難找到充滿激情的開發(fā)人員,因此我希望能夠多多接觸世界各地使用社交網(wǎng)絡(luò)如Twitter的充滿激情的開發(fā)人員。
我喜歡參加技術(shù)會(huì)議,喜歡接觸偉大的開發(fā)人員。但不幸的是,相比美國(guó),印度這樣的會(huì)議很少很少。所以,我會(huì)在InfoQ,Parleys和Youtube上觀看那些會(huì)議會(huì)談,這是我的盛宴,令我心曠神怡。
展望美好未來(lái)
近年來(lái),很多事情正在慢慢改變。如今的印度IT產(chǎn)業(yè)已經(jīng)不再完全依賴基于美國(guó)的項(xiàng)目。印度企業(yè)中技術(shù)應(yīng)用增長(zhǎng)了很多。但是,除非思維過(guò)程得到改變,否則一切就都還是在原地踏步走。企業(yè)不應(yīng)該再異想天開讓“9個(gè)開發(fā)者1個(gè)月時(shí)間發(fā)布一個(gè)新項(xiàng)目”。
開發(fā)人員應(yīng)該更專業(yè),并且當(dāng)要求他們?nèi)プ鲆恍┎荒芨哔|(zhì)量完成代碼的實(shí)現(xiàn)任務(wù)的時(shí)候,能夠鼓起勇氣說(shuō)“NO”。
總之,通過(guò)這些年的學(xué)習(xí),我明白了軟件開發(fā)并不都意味著技術(shù)。關(guān)鍵是要理解業(yè)務(wù)領(lǐng)域,重視其他人的溝通交流。
-
軟件工程師
+關(guān)注
關(guān)注
8文章
243瀏覽量
21398
發(fā)布評(píng)論請(qǐng)先 登錄
基于瑞薩64位MPU RZ/G2L進(jìn)行32位應(yīng)用軟件開發(fā)


硬件工程師看了只會(huì)找個(gè)角落默默哭泣#硬件工程師 #MDD #MDD辰達(dá)半導(dǎo)體 #產(chǎn)品經(jīng)理 #軟件工程師
【華秋DFM】V4.6正式上線:工程師的PCB設(shè)計(jì)“好搭子”來(lái)了!

如何成為一名合格的KaihongOS北向應(yīng)用開發(fā)工程師
硬件工程師手冊(cè)(全套)
如何成為一名嵌入式軟件工程師?

嵌入式軟件工程師就業(yè)好不好?
如何成為一名合格的北向應(yīng)用開發(fā)工程師

不同時(shí)期的硬件工程師,最怕發(fā)生的事 #電子工程師 #硬件工程師 #內(nèi)容過(guò)于真實(shí) #YXC晶振 #揚(yáng)興科技
我國(guó)軟件開發(fā)者數(shù)量突破940萬(wàn)
嵌入式工程師常用的開發(fā)工具有哪些?

評(píng)論