我叫Siva,是印度海得拉巴的一名软件开发人员。软件开发是一项令人兴奋的工作,因为您每天都会看到新事物。如果没有什么新意,我们也可以给一些老概念起个有趣的新名字,自娱自乐。但是,从我的角度来看,在印度成为软件开发人员略有不同,而且更难一些。总之,不好说。其他国家的软件开发人员对印度软件开发人员的看法令我震惊。所以今天,我想和大家分享一下我在印度IT行业作为软件开发人员的经历。ps:以上纯属个人观点,不喜勿喷。我的第一份工作我的第一份工作是在一家小公司担任Java开发人员。我的几个非常亲密的朋友也加入了公司。在我职业生涯的早期,我很幸运能与一些非常有才华的人一起工作。我的第一个经理曾经强制我们在工作的前2-3个月内只能使用Notepad++/EditPlus编码,目的是让我们熟悉如何编译和运行程序,了解编译时间和运行时类路径等。然而,建筑师不同意这一点。有一天,他看到我用EditPlus编码,他走过来对我说,“你不带武器去打仗吗?”。他从我茫然的表情中知道我不知道他在说什么。他把键盘拖到面前,下载了LombozEclipse(Eclipse的一个变体,现在已经不存在了),并向我展示了如何使用它。此外,他还时不时地教我一些非常有趣的键盘快捷键,使用IDE而不是Notepad/EditPlus来编写代码要快得多。我从他们那里了解到了解事物如何运作以及如何有效地使用工具来加快速度的重要性。顺便说一句,我的团队负责人是一位非常有经验的开发人员。他记住了大部分核心JavaAPI方法,并且对设计模式有很好的理解。他是共产主义者。哪怕只是代码缩进错了,他也不同意我们提交代码。有一天我们加班加点,第二天还要一大早,因为我们要送一些急件。不过,即便如此,他还是坚持纠正缩进,清理导入的包和未使用的变量,严格遵循制表符和空格一致的原则。我们抱怨。但是我们后来在合并来自不同开发人员的所有代码更改时意识到这样做的重要性。他总是说:“要做就得做好,否则不做。”“至于团队的其他人,因为我们是好朋友,我们之间没有任何冲突或政治。我们过去常常在周五晚上聚会到凌晨2点,在办公室里说笑说笑。一切都是sobeautiful.3年后开始了我真正的旅程,我离开了这家公司,搬到了一家大公司。大公司意味着更好的工作,更高的工资和更好的工作文化。但是,我很快发现,不是一切,大公司比小公司好!在那里,我遇到了一个代码库可怕的遗留应用程序,看到它让我头晕目眩。而且,与我合作的开发人员都是这家公司的老员工,他们不愿意接受任何东西新的,没有兴趣让应用程序变得更好,只想坚持旧的方式,即使旧的方法很痛苦。感谢印度IT行业主要基于离岸开发模式,大部分时间我们都在维护遗留代码库。我们很少有机会工作在绿地项目上。即使是那些关键架构/设计部分由现场团队完成的新建项目。幸运的是,最好的是我有机会参与一些新的项目,这也涉及到从头开始设计应用程序的过程。对于想继续走技术路线,不想转管理部门的程序员,很多公司并没有明确的职业发展规划。更糟糕的是,一些公司在开发人员具有一定年限的工作经验后,强制要求他们进入人事管理的行列。青菜萝卜各有喜好,并非所有的开发者都对技术充满热情也是可以理解的。有的人是赶时间出家一天,有的人就是想不惜一切代价完成它,而不管代码质量和可维护性。在印度,你很难找到那种充满激情的开发者,因为大多数人只是把编程当成一种工作而已,而不是为了好玩或作为一种爱好。有时,当我学习新东西或构建一些很酷的东西时,我环顾四周分享我的兴奋,但没有人理解。如此兴奋。写博客当我在项目中使用Struts1.x框架时遇到了一些棘手的问题。苦苦挣扎了3天也找不到任何解决办法。我无法停止我一直在调试和搜索所有书籍和论坛。终于找到了一个恰好写了一篇关于这个问题的文章并提供了解决方案的人。果然,他的解决方案奏效了。我想对博主表示由衷的感谢。但是想到还有很多不认识作者的博客对我帮助很大,所以也想开个博客回馈社会。所以,我有自己的博客www.sivalabs.in,上面写了一些我学到的东西。很快,我的文章发表在DZone和JavaCodeGeeks社区站点上。虽然我的英文写作能力不够好,但我一直在写文章,希望熟能生巧。当有人评论我的文章“我在你的文章中学到了一些东西”时,我真的很高兴。我从StackOverflow、博客、论坛和其他社区获得了很多帮助。如果可能的话,我也想尽我所能回馈社区:-)写完这本书后,我的文章陆续发表在DZone和JavaCodeGeeks上,我的博客的访问者越来越多。终于有一天,我收到一封来自PacktPress的电子邮件,询问我是否有兴趣写一本关于MyBatis的书,我真的很兴奋。在我同意写书后,他们开始向我解释写作过程和付款的细节。他们可能不知道我会在没有任何报酬的情况下写这本书。我同意写这本书是因为我对技术的热情,而不是为了赚钱。当我快完成第一本书时,他们要我写另一本关于PrimeFaces的书,我答应了。写这两本书我花了大约18个月的时间。一年半来,我没有休息,没有周末,没有郊游,什么都没有。一有时间我就写一本书,或者看看我写的东西,看看能不能改点什么,让表达和描述更准确。也是在这段时间里,我意识到给自己一些空闲时间是多么重要。写一本书非常耗时。如果你写书的目的是为了赚钱,那么我建议你换一种方式!然后有一天,我收到了一个包裹,里面装着一本书的印刷本《MyBatis》。看到我的劳动成果变成现实真是太棒了。我很激动。充满激情的开发人员的挑战印度的软件开发人员面临许多问题。好的开发人员就像战争英雄由于我们做的大部分是遗留项目,或者处于维护模式的项目,管理层更喜欢忠诚的、长期坚守在公司的员工(虽然很多老员工拿的薪水不高或者公司不'把他们当作一种资源),而不是技术实力雄厚的人才。优秀的开发人员就像战争英雄。虽然我们在开始一个新项目或创建一些核心设计时需要这样的人才,但一旦核心设计完成,其他开发人员也可以根据设计向流程中添加方法,就像一旦战争结束,那些英雄就会失去兴趣,很多公司也不会再关注那些优秀的开发者。许多非印度技术人员讨厌印度开发人员我经常看到抨击印度软件开发人员的文章。当然,这些只是个人的一些看法。请参阅https://avinashsingh.wordpress.com/2007/04/05/a-myth-called-the-indian-programmer/并阅读评论。甚至有人要赞助巴基斯坦轰炸印度。真是幼稚啊!.印度IT公司的主要问题是,为了确保项目安全,他们说服客户他们可以在几乎不可能的时间范围内交付项目。为了满足这些疯狂的时间表,他们将责任委托给管理层,然后管理层强制团队负责人接受任务,而团队负责人将最后期限扔给开发人员。这是印度开发商面临的最大问题。印度的许多开发人员不知道如何说“不”。他们只会默默地接受这个疯狂的日程表,并竭尽全力去完成它。而这整个过程的结果就是“无法维护的蹩脚代码”。但是,我还有几个问题。现场的非印度客户如何相信“印度离岸团队可以在6个月内完成同一项目,而现场团队估计需要18个月”?为什么他们不需要端到端的测试套件?他们为什么不要求提供代码质量报告?你得到你所付出的!你得到你所付出的!那些说“所有印度程序员都很烂”的人应该好好想想。这么一棍子打死一船人,是不能接受的。每个地方每个国家都有好的开发者和坏的开发者。我曾与一些非常傲慢的现场开发人员合作过。那么是不是所有的直播开发者都是狂妄的呢?这当然是非常错误的。我坚信印度也有很多伟大的开发商和建筑师,我和他们一起工作过。也有很多人像我一样,希望每天都能学到一些东西,想成为比昨天更好的开发者。这些年来,我学会了“如何快速学习新事物”。所以,我努力学习,为明天做好准备。不管你要我用Spring还是JavaEE,Python还是RoR,Eclipse还是NetBeans,我都能游刃有余。关注社区正如我所说,在印度很难找到充满激情的开发者,所以我希望使用Twitter等社交网络结识来自世界各地更多充满激情的开发者。我喜欢参加技术会议并会见优秀的开发人员。但不幸的是,与美国相比,印度很少有这样的会议。所以,我会在InfoQ、Parleys和Youtube上观看那些会议演讲,那是我的盛宴,我心满意足。我喜欢VenkatSubramaniam(@venkat_s)的演讲,内容丰富且有趣。看完他的《Programming Groovy 2: Dynamic Productivity for the Java Developer》,我忍不住笑出声来。他真的很棒。VenkatSubramaniam关于谈判的演讲https://www.parleys.com/author/venkat-subramaniamVenkatSubramaniam关于如何重构的演讲https://www.youtube.com/watch?v=iGsPeR-SYYo《JVM语言能做的超酷的10件事》https://www.youtube.com/watch?v=Ulcl2TjHktA《尖头发老板和务实程序员》-VenkatSubramaniamhttps://www.youtube.com/watch?v=lfmKvRaNnUs关于Scalahttps://www.youtube.com/watch?v=grvvKURwGNg我是RodJohnson的超级粉丝,我喜欢他关于创业的看法http://www.infoq.com/interviews/rod-johnson-entrepreneurialism,以及《Things I wish I’d known》http://www.infoq.com/在演示文稿/Things-I-Wish-I-d-Known中,他分享了构建Spring框架和围绕它创建生态系统的过程。真的很好。我还观看了他的“Scala2018”演示文稿https://www.youtube.com/watch?v=DBu6zmrZ_50,以及在youtube上关于Scala主题的讨论https://www.youtube.com/watchV=hZlxBRnxzDc。他提出的建设性批评对我来说非常棒。他真的很好。我也喜欢UncleBob的演讲https://blog.8thlight.com/uncle-bob/archive.html,MartinFowlerhttp://martinfowler.com/,DavidHeinemeierHansson(DHH)。我们可以从他们几十年的经验中学到很多东西。还有许多来自Java社区的精彩演讲和博客***我很欣赏,例如AntonioGoncalves@agoncalhttp://antoniogoncalves.org/AdamBien@AdamBienhttp://www.adam-bien.com/roller/abien/RezaRahman@reza_rahmanhttps://blogs.oracle.com/reza/ArunGupta@arunguptahttp://blog.arungupta.me/JoshLong@starbuxmanPhilWebb@phillip_webbCagatayCivici@cagataycivicihttp://www.primefaces.org/OliverGierke@olivergierkehttp://olivergierke.de/DavidBlevins@dblevinshttp://www.tomitribe.com/blog/blahblahblah。也有一些名人博主写的好博客。Baeldung@baeldunghttp://www.baeldung.com/PetriKainulainen@petrikainulainenhttp://www.petrikainulainen.net/VladMihalcea@vlad_mihalceahttp://vladmihalcea.com/AbhishekGupta@abhi_tweeterhttps://abhirockzz.wordpress.com/ManuelJordan@dr_pompeiihttp://manueljordanelera.blogspot.in/2014/06/manuel-jordan.htmlLukasEder@lukasederhttp://blog.jooq.orgTrishaGee@trisha_geehttp://trishagee.github.ioThorbenJanssen@thjanssen123http://www.thoughts-on-java.orgNicolasFrankel@nicolas_frankelhttp://blog.frankel.ch等等。我真的很喜欢所有很棒的Java社区!展望更美好的未来近年来,很多事情都在慢慢发生着变化。今天的印度IT产业已经不再完全依赖美国的项目。印度企业对技术的使用有了很大的增长。但除非改变思维过程,否则一切都会保持不变。企业不应该再让“9个开发者一个月发布一个新项目”异想天开。开发人员应该更加专业,在被要求做一些无法高质量完成代码的实现任务时,能够鼓起勇气说“NO”。总之,通过这些年的学习,我明白了软件开发不只是技术。关键是了解业务领域并重视与他人的沟通。希望一切都会越来越好:-)翻译链接:http://www.codeceo.com/article/india-programmer-life.html英文原文:MyLifeasaSoftwareDeveloperinIndia
