创业阶段,将软件开发交给外包团队可能不太明智
将远程自由职业者与你的内部团队有机融合非常重要但又非常不容易。
编者按:创业公司在外包开发时,由于缺乏管理外包业务经验,需要三思而后行。本文作者 Karan Chaudhry 是创业公司的导师,他介绍了创业公司在开发软件时不该使用外包团队的原因。
企业家想要以更便宜、更快、更有效的方式达到目的。有时眼前节省的一点钱是抵不过最终成本的。
我是一个连续创业的人。 在过去的几年里,我成功地为自己的创业公司建立和扩张了现场团队和远程团队。但是,在外包软件开发上我跌了跟头。
我本来打算和一些开发人员签约,让他们编写某些部分的代码,这样就可以在截止日期前发布我们的产品。 当时我们还处在自力更生阶段,这看起来是很美好,事实上是一场灾难。以下就是为什么:
1.不同的观念模式导致目标错位
我把企业当作宝,全身心地投入其中。但对软件开发者来说,我们只是他们的一个客户而已——而且是一个非常小的客户。当大客户增加需求时,资源紧缩,这就导致我们的项目有所延迟。
此外,我们聘请的专家一直想说服我们搭建更多功能。他们公司因范围蔓延获益而我们缺偏离了最小可行性产品(MVP)。我们两个公司的驱动力不同,这往往会导致互相不理解。
2.合同谈判复杂耗时
我花了大量的时间与软件公司签订合同,我们根本没有想到会有这样的时间成本。我们想快速分发任务并运行。但我们却花了三到四个星期来确定、谈判和执行合同。
老实说,花几个星期谈合同是合理的。定义工作范围,界定每一方的责任并制定服务级别协议(SLA)都非常繁杂。如果合同不是仔细研究,将来会有更大的问题。企业家需要为这个耗时的过程预留好时间,不要急于通过,相信未来一切都可以运行下去。
3.质量的不确定性
外包公司的开发人员素质层次不齐。根据我的经验,其水平通常低于平均水平。几个被分派到我们项目的开发人员没做到我们想要的结果。我们不得不与其公司争吵,想要换掉他们,这个过程非常痛苦,我们也因此花费更多的时间和精力。更糟糕的是,代码本身没有达到我们的质量标准,导致我们的代码库变得非常零碎。
4.公司内部人才对于管理外包项目工作不熟练
许多创业公司都忽略了管理外包团队需要专业知识和特殊技能。外包是与内部开发完全不同的过程。
很少创业公司的团队成员曾经有过相关经历,这增加了失败的可能性。外包公司可以精确了解到团队缺乏经验。不道德的公司甚至可能利用这个弱点来延长交付时间和成本估计。要做好这点,你需要完成一系列具有挑战性的复杂任务:
•明确定义要求
•分配好哪些模块将由内部开发,哪些将由外包供应商开发
•规划主代码库中代码的平稳融合
•计划和执行商量好的质量保证措施和程序
•时间把控
•定期反馈
我们初创公司有信心进入外包这场冒险中,因为我们的团队有曾经管理过外包工作的人。但是即使这样,我也觉得很难。相信我:这不简单。我强烈建议不要外包软件开发,除非公司内部有专家。
5.外部问题给整个组织带来的多米诺效应。
小团队运行时,问题很容易就显现出来了。但如果外包项目进展不顺利,这份压力往往会影响其他领域。至少,对整个公司来说,需要分出巨大的力气来解决这个问题。
外包项目的延误和质量问题是正常的、可预期的。然而,创业公司通常不会意识到这一点,也没有计划缓解这种影响。当我们的外包项目开始出现问题时,就有涟漪效应。我们的首席技术官直接参与外包项目,在项目管理上花费了不该花费的时间。结果,花在内部员工这边的时间少了,他们开始错过了最后期限。
士气受到打击,员工开始懈怠。技术团队的延误反过来又在给我们的产品和销售部门带来了挫折。这特别打击大家,因为我们已经向早期客户承诺了额外的功能,如果我们没有交付,有可能会失去他们。外包项目超出预算,后来我们意识到这个事情经常发生。作为一个早期初创公司,资金问题给我们带了来额外的压力。
干货:我们花费了比我们预期的更多的时间、金钱和力气,但是最终我们没有使用或重写大多由外包公司开发的代码。事后看来,这是一个错误。每个公司的情况都是独一无二的,外包可能适用于一些组织。但是,当你所能控制到的元素更少时,出差错的可能性更高,对于创业公司和小组织来说尤其如此。
下次再考虑外包公司的软件开发时,三思而后行。或者至少想想上面列出的经验教训,他们会帮助你看到你最后可能得到的结果。
温馨提示:
以上信息仅作参考,客户保留所有信息(文字,图片,视频,以及其它多媒体)等内容修改的权利。最新的内容,以企业官方为准!