写点什么

为什么软件外包开发不再可行

  • 2015-11-03
  • 本文字数:1876 字

    阅读完需:约 6 分钟

Yegor Bugayenko 是一名软件开发人员,同时也是软件外包公司 Teame.io 的创始人和 CTO。从自己将近 10 年的软件外包公司工作经验中,他得出结论:现如今,软件外包开发已经行不通了,软件外包的结果只有灾难

他查阅多篇文章,寻找软件外包失败的原因。他认为,下面所有的原因都不得要领:

  • 最便宜的提供商:有人认为,软件外包是为了降低成本,所以最终会选择最便宜的提供商。但 Yegor 认为,增加开支并不能解决该问题。而且,这个原因也不限于软件外包。在任何商业交易中,“你输我赢”只会通向失败。
  • 文化不匹配:有人认为,外包公司同客户之间的文化差异是导致成本超支、计划延期和代码质量低下的原因。但 teamed.io 的团队来自超过 15 个国家,他们在工作中从没有因为文化问题而纠缠不清。
  • 缺少面对面交流:有人认为,外包公司同客户身处异地,缺少面对面交流,容易产生误解。但 Yegor 认为,不见面也可以清晰的表达和交流观点。
  • 没有成功指标:没有清晰定义成功指标,这是外包公司同客户关系破裂的原因。Yegor 认同这一说法,对于外包公司和客户,成功有不同的意义。
  • 糟糕的规范:有人认为,大部分项目都无法定义良好的规范,而这是导致外包项目失败的原因。Yegor 认同这一说法。不过,他认为这与外包公司无关。无法明确定义技术需求是架构师本身的缺陷,可以通过学习、培训和阅读来解决。
  • 人才流失:离岸开发人员缺少对项目的忠诚度,他们中最优秀的可能随时退出。而 Yegor 认为,这与开发人员的所在地没有关系,应该采用更有效的激励手段。

对于上述原因,Yegor 认为,它们仅仅能够说明外包项目的结果,但并没有触及真正的问题。在他看来,真正的原因是外包公司的 CEO 只关心一个问题,就是下个月的雇员工资,因为公司 90% 的支出都是程序员的工资。所以,对他们而言,付钱的客户就是好客户,他们并不关心客户项目是否成功、成本是否优化等。而从前,软件外包之所以可行,是因为外包公司的人力成本非常低,他们通过向异国客户出售程序员的时间可以获得巨大的利润。但现在,由于程序员对工资及福利的要求增加,利润空间遭到了严重压缩,保持源源不断的现金流成了外包公司的唯一动机,他们不怕项目时间长,不怕代码质量低(可以赚取运维费用)、也不怕电话、开会和其它浪费时间的活动,所以软件外包已经不再可行。

对于这一话题, Hacker News 网友的讨论异常激烈。网友 makecheck 认为,软件外包从来就不可行,因为软件外包存在下面两个方面的问题:

一个是软件外包中有一个想法,就是程序员在某种程度上非常容易替换,认为只需要找到一个开发人员就可以,而几乎没有考虑,如果选择的团队压根不了解他们要做的工作,那会有什么影响……另一个问题是文化上根本性的误解。

网友 chris_wot 持类似的观点,他认为:

大多数非技术出身的项目经理都不明白:IT 人员并非即插即用的模块组件……总是要有一个提前期——根据项目的复杂度不同,有时需要数月——在真正富有成效的工作之前,新雇员需要熟悉和理解系统及业务需求。

网友 JoeAltmaier 也认为软件外包不可行,他指出:

20 年来,我从来没有从软件外包项目中看到回报……(软件外包项目)的管理成本高于收益:语言障碍、时区、文化、网络接入……

网友 MortenK 也认为软件外包项目的管理成本更高,其在项目管理上的时间投入是本地项目的 2-3 倍。不过,对于文化差异的问题,他认为可选择文化相容度高的外包地。

网友 timtas 赞同 Yegor 探讨这一问题的方式,但认为他并没有提供一种可用的方法:

如果严格按照他的观点行事,那你永远都不要用金钱换取服务了。

同时,他认为,名声很重要:

名声好的外包公司不会纯粹将客户视为摇钱树。虽然他们在利用率问题上面临着同等或更大的压力,但他们仍然会高质量地完成工作。

网友 d4nt 经营着一家软件外包公司,他认同 Yegor 及其他网友提到的许多问题。但他认为:

你永远不应该为了省钱而外包……外包的主要原因应该是购买专业知识。许多公司真不知道如何编写软件需求文档,或者什么是非功能性需求,或者如何设计用户界面……

网友 cookiecaper 认为外包也是有好处的:

其中一个主要的好处就是,外部承包商通常不会受到公司内部政治的影响。也就是说,他们更可能给出直接诚实的反馈,而不必过多顾及其他人的情绪。在大多数组织中,这都是非常有价值的。

此处仅列出了网友的部分观点,感兴趣的读者可以进一步阅读


感谢魏星对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-11-03 18:009378
用户头像

发布了 1008 篇内容, 共 401.2 次阅读, 收获喜欢 345 次。

关注

评论 1 条评论

发布
用户头像
软件外包公司--【你所不知道的】

① APP项目或软件外包给个人、优点是开发成本最低,一般一天的开发薪酬为300- 600不等。缺点是项目质量差,开发周期长,沟通和后期维护都比较麻烦。由于找个人开发大都是兼职,所以开发周期通常会比较长,进度上相对难掌握。毕竟个人的能力一般都比较局限,只能擅长其中的一两方面,所以很难在项目各个方面都做好。一人承担多个项目我们都知道一款好的产品是需要不断被打磨的,好比一个雕像,你做了一个轮廓,但是对于细节的雕琢才是真正显示出你产品关键的地方,一个产品经理在职业生涯中可能只输出过1-2款较好的产品,但是传统的软件外包公司的产品经理可能一年就要做10多款产品,所以不深耕只是不断的输出对于产品的打磨是没有任何帮助的。

来源:https://www.it0755.com/news/481.html
展开
2019-08-01 11:36
回复
没有更多了
发现更多内容

Tencent AI Lab 日常实习生招聘

InfoQ_d00afcd122a8

招聘

SpreadJS 纯前端表格控件应用案例:PtLims云平台

葡萄城技术团队

青山不改,绿水长流

escray

学习 面试

PostgreSQL函数、索引和视图操作Demo展示

wangkx

postgresql

ARTS 挑战打卡第十四周(200810-200816)

老胡爱分享

ARTS 打卡计划

oeasy教你玩转linux010104灵魂之问whatis

o

CECBC区块链专委会副主任吴桐主讲成都市委宣传部区块链和数字

CECBC

区块链 数字货币

阿里为什么推荐使用LongAdder,而不是volatile?

王磊

Java 性能 volatile

话题讨论 | 作为一名程序员,沟通能力是否重要?

InfoQ写作社区官方

程序员 写作平台 话题讨论

SpreadJS 纯前端表格控件应用案例:资料填报系统

葡萄城技术团队

为什么会出现零代码开发平台?

代码制造者

编程语言 低代码 企业信息化 零代码 编程开发

有它的加持,单机玩转百亿大数据不是梦!

易观大数据

Java中的volatile关键字

wangkx

Java volatile

云中谁寄锦书来,免费生成一封七夕情书吧

郭旭东

阿里云 七夕 云效

工作就是解决一个又一个问题

escray

学习 面试

3D渲染集群,你了解多少?

华为云开发者联盟

容器 华为云 集群 3D渲染 3D模型

SpreadJS 纯前端表格控件应用案例:实验室信息化管理系统

葡萄城技术团队

乘风人脸识别来了,企业能得到什么?

ToB行业头条

人工智能 人脸识别 百度大脑

游戏运营方法论

石云升

游戏化运营 运营创新

用Emoji解释编程语言中的map、filter、reduce

wangkx

Python Python PEP

ARTS 挑战打卡第十五周(200817-200823)

老胡爱分享

ARTS 打卡计划

百度联合发布全球最大中文自然语言处理数据共建计划“千言”

百度大脑

人工智能 百度 nlp 百度大脑

大数据思维与运用

石云升

大数据 数据建模 数据驱动

兼具艺术情怀和舒适旅居体验,木莲庄做了什么

InfoQ_967a83c6d0d7

Python3 单例模式

wangkx

Python Singleton

SpreadJS 纯前端表格控件应用案例:立信智能审计云平台(SACP)

葡萄城技术团队

一键超频 双C Carry,普通用户如何挖潜英特尔十代酷睿?

E科讯

从“人居美学”的理念出发,木莲庄酒店很不一样

InfoQ_967a83c6d0d7

SpreadJS 纯前端表格控件应用案例:物业行业全面预算管理系统

葡萄城技术团队

永续合约交易系统源码开发,合约交易所开发

13530558032

Python中的global关键字的用法以及如何设置项目级的Global变量

陈磊@Criss

为什么软件外包开发不再可行_语言 & 开发_谢丽_InfoQ精选文章