中国软件开发project师之痛
在最近的一次会议上,有高层谈到之前在中国觉得自己做得非常牛,但与美国同行接触后却发现与人家存在非常大的差距,这一点我在外企工作时也有过相同的体会。真正与外国同行接触后才会知道什么是差距,在这篇文章中我从软件开发project师的角度以“痛点”的形式来谈一谈我所觉得的差距。
技能之痛
相当数量的软件开发project师(后面简称为project师)觉得除了与编码相关的内容外,其它技能都不重要。在这样的意识的引导下,非常easy出现的一个普遍现象是技术能力不错,但开发能力却不行。这样的现象的还有一种表现是:单干能够,合作不行。
技术能力是指个体对某些技术知识掌握的深度和广度,而开发能力除了包括技术能力外,还涵盖个体在项目运作过程中所需掌握的其它能力。
高效的团队一定离不开通过知识管理将个体所掌握的知识通过分享而沉淀下来。分享途径无外乎通过一定形式的文字和(或)图,这就要求project师掌握使用象Word、PowerPoint、Excel、Visio(和UML)这类工具的基本能力,并具备良好的写作与表达能力。表面看来这样的能力与编码能力无关,因而也得不到project师的普遍重视,也因此成了一个痛点。事实上,写作与表达能力与编程水平息息相关,由于它们都在考验我们的逻辑思维和概念能力。忽视掌握必要工具软件的project师难道以为编程语言是知识分享的万能工具?
个体具备良好的沟通能力是项目顺利运作的基石。不良沟通表现为:project师在团队合作中很多其它採用被动询问而非主动汇报、不会辩论、对于他人指出的错误表现得“自尊”和狡辩而非感谢或承认、对于被邀请的各类审查活动(如设计审查、代码审查、文档审查)不是积极响应而需别人催促。在团队中,假设技术管理者不能非常好地引导,个体沟通能力的缺乏非常easy在团队中引发“一言堂”或“无政府主义”问题,工作效率低下则是必定。
专业精神之痛
不少project师对于自己的职业缺乏精神上的追求,工作起来不求专业,仅仅求“代码能工作即可”。这类project师easy将经验与资历等同,以为工作年份越长就越有经验,实则不然。工作年份越长资历是越老,但假设专业水准没有在过程中不断提高的话,所获得的经验非常可能趋零。
什么是专业?专业是指我们应以业内所广泛达成的共识去从事软件开发活动。这里的“业内”并不是仅仅指“国内的”,而是指“国际的”;“专业”也并不是单指技术内容(比方,编程语言、算法等),还包括软件项目运作中的其它各个方面(比方,开发方法、建模工具、流程、质量保证手段等)。要做到专业做事一定离不开不断地学习,仅仅有这样才干了解行业的动向。
软件行业尽管没有“银弹”,但仍存在不少有效改善开发质量与效率的方法。仅仅有抱着专业做事的态度去工作,我们才有可能去实践这些方法,并在实践过程中思考这些方法的内涵与不足,进而为自己的工作量体裁衣。千万不要觉得“反正业内没有银弹,我要去学那么多方法干什么?”
强调专业做事的根本目的,是使我们的做事方法更科学。与我所了解的美国、俄罗斯这些国家的project师相比,我国project师的专业化还有非常长的路要走。
速度之痛
除非你全然认可中国近些年以GDP为导向的经济发展策略,否则非常可能得反思一下软件行业所鼓吹的“唯快不破”策略,尤其是互联网领域。
在商业环境中,“快”能获得非常多竞争优势,这毋庸置疑。project师的价值虽得(终于)体如今商业产品上,但千万不要忘记了我们始终是一名project师,在实现商业价值的道路上不断提高自己的专业水准不管怎样都不应被忘记。project师始终要明确,公司的发展与自身的职业发展并不是全然统一。假设在公司的发展过程中我们的专业水准并没有“水涨船高”,那除了说明我们在吃老本外,还表明我们非常可能是在“拖后腿”。在这样的情形下,即使公司蒸蒸日上地给我们发薪水,但从个体职业发展的角度说来,公司发展事实上与我们“一毛钱关系都没有”。我想不致于有人觉得自己以后仅仅会在这一家公司干吧!假设真是那样想,你能保公司几十年存在?届时万一得无奈地离开公司,单薄的专业水准又怎样在人才市场与他人竞争?
对“唯快不破”的误解所带来的不良后果是,有些project师为了高速实现软件功能而忽略了专业精神。他们一味地为了速度而筑下高额的“技术债”,甚至在“速度”的幌子下过得心安理得。
假设将“唯快不破”改为“唯效率与质量不破”也许更不easy形成误解。一说到“快”,给人的感觉往往是投入很多其它的时间就能达成目的,easy让人忽视做事的方法与效率。与之不同的是,强调效率须要我们考量投入时间的产出比,且暗示做事的方法仅仅有对路才干获得效率;强调质量则提醒我们尽量别做“豆腐渣”之事,而这隐含的内容是我们必须专业做事,即使欠下了“技术债”它也时刻提醒着我们那是一定要还的。
软件行业的长期被动加班成为了速度之痛的一个缩影,它让不少project师过着有工作没生活的日子。软件行业要避免偶尔、短期的加班是不可能的,但长期的被动加班绝对是个问题。不重视效率与质量的“勤劳”除了是在浪费外,更是一种透支将来的短视行为。
视野之痛
视野之痛体如今project师在从事技术工作时,忽视了解国外的发展状况。他们由于不知道同质开源项目的存在而走上“又一次发明轮子”的道路,甚至发明出“三角形的轮子”;也由于对英文资料缺乏阅读的耐心而不去了解相关国际标准、订阅开源项目的mailing list和专业站点的newsletters等。
狭窄的视野非常easy让人自满,以为软件开发就是那么简单,最后导致成长慢、意识与技能“不入流”。
以我的经验来看,project师假设不能非常好地阅读英文资料则要达到高技术水平实在非常难,视野狭窄也恐成必定。另外,编程活动中的命名环节事实上对我们的英语水准提出了一定的要求,不然非常easy动名词不分而写出仅仅有自己easy读懂的程序,或常出现命名时找不到合适的单词去精确表达程序意图。
持续发展之痛
以上各痛点的终于结果又给我们带来了持续发展之痛。其表现为:少有人会在项目中通过文档提升开发效率;鲜有人会持续改善软件的设计质量;大部分人仅仅关注短期完毕工作,而忽视短期行为所带来的高额隐性成本。
持续发展之痛使得project师非常难轻装上阵,工作精力过多花费在反复、低级的琐事上,而非用于学习和思考。终于结果是将工作变成了“青春饭”,辛苦但却看不到美好的未来。
全部痛点能够归结为意识的陈旧,或虽有意识却无力于将其转变为能力!(注:意识是一种行为,而非能力)
当然,这些“痛”与我国的社会大环境有着紧密的联系。但不管是怎样的环境,总有人做得出色,也许他们身上有我们所没有的内容。是什么?仅仅有自己去想、去悟,成长之痛! 即使大环境好了、大家都非常“专业”,职场的“金字塔”总是摆在那的。谁能向上走?走多远?全靠个人,没有shortcut!仅仅只是每一个人都平等地拥有向上走的机会与权力!
中国软件开发project师之痛的更多相关文章
- 与一线Linux嵌入式开发project师的对话
转:与一线Linux嵌入式开发project师的对话 陈project师一直做Linux的嵌入式开发.作为在开发一线的project师.他对非常多问题的看法可能更切合实际需求,于是,通过邮件.就嵌入式 ...
- 掌握11项技能,你就是优秀的前端开发project师
导读: 你或许会认为前端开发是一个非常easy的工作,对呀,你就是刚刚从网页设计转型过来的.但当你深入当中时,一定会发现好像前端开发不是那么简单,光站点性能优化.响应式.框架就让你焦头烂额, 确实,做 ...
- Android开发project师,前行路上的14项技能
导读: 你是否曾渴望回到宋朝? 或者什么朝,反正就是男耕女织的古代. 哦,那时的首都在汴梁(开封),房价想必没有如今这么高,工作?无非就是给你把锄头,去,种地去.夕阳西下了,麦子垛后,你和翠姑搂抱在一 ...
- 千千万万的IT开发project师路在何方
已经找不到该文章的最初出处了,有找到的人请告诉我.谢谢~~ 千千万万的IT开发project师路在何方 2007-06-25 21:41 恭喜,你选择开发project师作为自已的职业! 悲哀.你选择 ...
- 成都PHP开发project师薪资信息
这是成都的PHPproject开发师招聘.如图所见,最低的月薪是4K,最高的是35W,PHP开发工程师正处于炙手可热的发展趋势,还愁拿不到高薪,找不到工作的你,还犹豫什么,机会就在眼前,成都传智播客P ...
- 招一位安防软件project师,嵌入式开发project师
岗位职责 1.负责海思平台IPC产品应用层软件设计及维护 2.私有平台协议对接及为第三方提供技术支持. 任职资格: 1.较强的学习.领悟能力,能够高速熟悉公司现有代码. 2.熟练掌握C.C++开发语言 ...
- 全栈project师?给把瑞士军刀你去砍鬼子好不好!?
来自www.techgogogo.com 编者注:本文来自Medium前三名推荐文章,发文时已经获得高达2,125个推荐,中文版由天地会珠海分舵编译.全文对当今风靡业界的"全栈xx师&quo ...
- 软件project师的属性与发展
工作近十年了.[软件project师] 一直是我职业 title 的中心词,仅仅是前面的修饰语在不断变化,从0基础.中级.高级到资深. 事实上 [软件project师] 是一个非常泛化的定义.工作现实 ...
- 前端project师,确定你的目标吧!无能的人才管他叫命运
导语: 你为自己定过一个不靠谱的目标,是20年前的事了吧. 长大你想干什么?你的回答是什么?现在实现了吗? 如今,你每天都坐在同一个格子间的同一个电脑前,会不会感到每天都像是在复印,感到前途是模糊的, ...
随机推荐
- 一天一个Java基础——反射
1.概念 反射主要是指程序可以访问,检测和修改它本身的状态或行为的一种能力 Java中的反射是一种强大的工具,它能够创建灵活的代码,这些代码可以运行时装配,无须在组件之间进行链接 反射允许在编写与执行 ...
- 是时候学习Android分屏开发了
今年Google发布了Android N,Android N新增了不少功能,最受关注的自然就是分屏了. 这一功能对国内的很多手机用户并不陌生,其实很多第三方系统早已经实现了这一功能,如EMUI,Fly ...
- 擦亮自己的眼睛去看SQLServer之简单Select(转)
摘要:这篇文章主要和大家讨论几乎所有人都熟悉,但不少人又陌生的一条select语句. 这篇文章主要和大家讨论几乎所有人都熟悉,但不少人又陌生的一条select语句.不知道大家有没有想过到底是什么东西让 ...
- codeforces 696A Lorenzo Von Matterhorn 水题
这题一眼看就是水题,map随便计 然后我之所以发这个题解,是因为我用了log2()这个函数判断在哪一层 我只能说我真是太傻逼了,这个函数以前听人说有精度问题,还慢,为了图快用的,没想到被坑惨了,以后尽 ...
- 《Python 学习手册4th》 第十四章 迭代器和解析
''' 时间: 9月5日 - 9月30日 要求: 1. 书本内容总结归纳,整理在博客园笔记上传 2. 完成所有课后习题 注:“#” 后加的是备注内容 (每天看42页内容,可以保证月底看完此书) “重点 ...
- word编号库中找不到带圈编号“①②③......"了怎么办?
进入“Word选项/语言”对话框: 找到“朝鲜语”并将它添加到编辑语言的列表框中,无需设置为启用状态或默认编辑语言: 退出并重新启动Word: 再次打开“定义新编号格式”对话框则可以在“编号样式”下拉 ...
- MFC学习知识点20160715
1. sizeof() :返回所查询目标所占用字节数 _countof() :返回所查询目标所含有元素个数 _countof 是 C++中计算一个固定大小数组长度的宏,比如: T arr[10] ...
- Java-note-字符串转换为基本值
Integer.parseInt() and Double.parse.double() 例: Integer.parseInt("123") 得到常量123
- 简单的flash策略文件服务器!
最近在做一个flash小游戏,众所周知,flash连接服务器socket的时候,需要向服务器请求策略文件.以下是一个简单的策略文件服务器的代码c++: #include <Winsock2.h& ...
- Jquery类级别与对象级别插件开发
jQuery插件的开发包括两种: 一种是类级别的插件开发,即给jQuery添加新的全局函数,相当于给jQuery类本身添加方法.jQuery的全局函数就是属于jQuery命名空间的函数,另一种是对象级 ...