我做外包有三年了。

最开始是在猪八戒、程序员客栈这些平台上接单,后来有了老客户介绍,慢慢稳定下来。三年里,接过各种项目,见过各种客户。

大部分客户是好的,沟通顺畅,付款及时。但也遇到过一些奇葩客户,让人哭笑不得。本文记录我做外包三年见过的奇葩客户,以及我从中学到的经验教训。

一、需求变来变去的客户

1. 案例

有一个客户,要做一个电商网站。

最开始的需求很简单:"就做一个淘宝那样的网站。"

我问具体功能,他说:"你看着做,差不多就行。"

我花了两周,做了一个基础版的电商网站,有商品展示、购物车、下单、支付。

交付的时候,客户说:"这个不对,我要的不是这样的。"

我问哪里不对,他说:

  • "首页要像京东那样,有秒杀、有拼团"
  • "商品详情页要像拼多多那样,有砍价、有分享"
  • "后台要像有赞那样,有数据分析、有营销工具"
  • "还要有直播功能,像抖音那样"

我当时就懵了。这些功能,加起来至少要做三个月,报价是原来的五倍。

2. 后续

我跟客户解释,这些功能需要加钱加时间。客户不同意,说:"这些不都是基本功能吗?你怎么还要加钱?"

最后,这个项目黄了。我收了定金,把基础版的代码给了他,两清。

3. 教训

  • 需求一定要写清楚,写在合同里
  • 不要接受"你看着做"这种模糊需求
  • 需求变更,一定要加钱加时间
  • 签合同前,把功能清单列清楚,逐条确认

二、不给钱的客户

1. 案例

有一个客户,要做一个企业官网。

谈好价格是5000元,先付50%定金,交付后付尾款。

我做完了,交付了。客户说:"网站我看了,挺好的。尾款我过两天给你。"

过了两天,我问尾款的事。客户说:"最近资金紧张,再等等。"

等了一周,再问。客户说:"再等等,下个月一定给。"

等了一个月,再问。客户不回消息了。

打电话,不接。发微信,不回。

2. 后续

我没办法,只能认栽。5000元的尾款,要不回来了。

后来听朋友说,这个客户经常这样,接了外包不给尾款,已经有好几个程序员被他坑了。

3. 教训

  • 尾款一定要在交付前收,或者分阶段收
  • 不要相信"过两天给你"这种话
  • 对新客户,一定要先收定金,而且定金比例要高(至少50%)
  • 交付源码前,一定要收齐尾款
  • 可以用平台担保交易,避免被骗

三、要求离谱的客户

1. 案例

有一个客户,要做一个APP。

需求是:"做一个像微信那样的APP,能聊天、能发朋友圈、能支付、能看视频、能玩游戏。"

我问预算多少,他说:"5000块够了吧?我看淘宝上做APP才几千块。"

我当时就笑了。微信这种APP,开发成本至少几百万。5000块,连个界面都做不出来。

我跟他解释,他不信,说:"你是不是坑我?我朋友做个APP才3000块。"

2. 后续

我没接这个项目。后来听说,他找了一个3000块的"程序员",做了一个套壳的H5页面,根本不能用。

3. 教训

  • 对完全不懂行的客户,要耐心解释,但不要浪费太多时间
  • 报价太低的项目,不要接,后面麻烦更多
  • 客户的预算和需求严重不匹配时,直接放弃
  • 不要试图教育客户,有些人是教不会的

四、不懂装懂的客户

1. 案例

有一个客户,要做一个管理系统。

他自称"懂技术",经常对我的代码指手画脚:

  • "你这个数据库设计不对,应该用MongoDB,不要用MySQL"
  • "你这个前端框架不行,应该用React,不要用Vue"
  • "你这个代码写得不好,要加设计模式"
  • "你这个接口太慢了,应该用Redis缓存"

实际上,他说的很多都是错的。比如,这个项目数据结构很固定,用MySQL更合适;他说的Redis缓存,我已经加了。

跟他解释,他不听,说:"我懂技术,你别骗我。"

2. 后续

这个项目做得非常痛苦。每做一个功能,都要跟他争论半天。最后,勉强交付了,我再也不想接他的项目了。

3. 教训

  • 遇到不懂装懂的客户,不要争论,用事实说话
  • 可以做技术方案对比,让他自己看哪个好
  • 如果实在沟通不了,就按他说的做,出了问题他负责
  • 但要保留沟通记录,避免背锅

五、催命的客户

1. 案例

有一个客户,要做一个活动页面,说"很急"。

"明天就要,你加加班。"

我看需求不复杂,就答应了,加了个夜班,第二天交付了。

结果,客户说:"这个页面还要改,你再改改。"

改了一版,又说:"还是不对,再改改。"

改了五六版,最后说:"算了,还是用第一版吧。"

我当时差点吐血。

2. 后续

这个项目,我加了好几天班,改了无数版,最后用了第一版。钱没多拿,人累得够呛。

3. 教训

  • "很急"的项目,要加钱
  • 需求变更,要加钱加时间
  • 不要轻易答应加班,加班会变成常态
  • 设定修改次数,超过次数加钱

六、白嫖的客户

1. 案例

有一个人加我微信,说有个项目想合作。

我问什么项目,他说:"先聊聊,我有个想法,你帮我看看能不能做。"

我跟他聊了一个小时,给他分析了技术方案、开发周期、大概报价。

聊完之后,他说:"好的,我考虑考虑。"

然后就没有然后了。

后来我发现,他加了好几个程序员,都聊了一遍,把每个人的方案都收集了,然后自己找人做了。

2. 后续

这种事遇到过好几次。有些人就是来白嫖方案的,根本没想找你做。

3. 教训

  • 咨询可以,但要收咨询费
  • 不要把详细方案免费给别人
  • 聊到一定程度,要先签合同、收定金,再深入讨论
  • 对只想白嫖的人,不要浪费时间

七、完美主义的客户

1. 案例

有一个客户,对细节要求特别高。

  • "这个按钮的颜色,要再深一点"
  • "这个字体,要换成微软雅黑,不要用宋体"
  • "这个间距,要再大2像素"
  • "这个动画,要再慢0.1秒"
  • "这个图片,要再往左移1像素"

每一个细节,都要反复调整。改了一版又一版,永远不满意。

2. 后续

这个项目,做了三个月,改了几十版。最后客户说"差不多了",我已经精疲力尽了。

3. 教训

  • 完美主义的客户,要提前说明修改次数
  • 设计稿要先确认,确认后不再改
  • 细节调整,要收费
  • 不要追求100%满意,80%满意就可以交付了

八、消失的客户

1. 案例

有一个客户,项目做到一半,消失了。

微信不回,电话不接,像人间蒸发了一样。

项目停在那里,我也不知道该怎么办。继续做吧,怕他不要了;不做吧,怕他突然回来要。

2. 后续

过了三个月,他突然回来了,说:"最近太忙了,项目继续做吧。"

我当时已经接了别的项目,没时间做了。最后,这个项目不了了之。

3. 教训

  • 项目过程中,要定期和客户沟通
  • 客户长时间不回复,要发正式通知
  • 设定响应时间,超过时间项目暂停
  • 暂停期间,费用照算(合同里写清楚)

九、好客户是什么样的

说了这么多奇葩客户,也说说好客户。

好客户的特点:

  • 需求明确,知道自己要什么
  • 沟通顺畅,回复及时
  • 尊重专业,不瞎指挥
  • 付款及时,不拖欠
  • 理解开发过程,不催命
  • 有问题好好说,不发脾气

遇到好客户,是一种幸运。我会认真做好项目,维护好关系,长期合作。

十、做外包的经验教训

三年外包,我总结了这些经验教训。

1. 合同一定要签

不管项目大小,一定要签合同。合同里写清楚:

  • 需求范围
  • 开发周期
  • 付款方式
  • 需求变更规则
  • 验收标准
  • 违约责任

合同是保护自己的最好武器。

2. 定金一定要收

新客户,一定要收定金,至少50%。

  • 不收定金的项目,不做
  • 定金到账了,再开始做
  • 分阶段付款,每阶段完成后收对应款项

3. 需求一定要写清楚

需求一定要写清楚,最好有需求文档。

  • 功能清单,逐条列清楚
  • 界面原型,先确认再开发
  • 需求变更,走变更流程,加钱加时间
  • 不要接受口头需求,一切以书面为准

4. 不要什么项目都接

不是所有项目都值得接。

  • 预算太低的,不接
  • 需求模糊的,不接
  • 客户难缠的,不接
  • 自己做不了的,不接
  • 违法违规的,绝对不接

学会拒绝,比学会接单更重要。

5. 保留沟通记录

所有沟通,都要保留记录。

  • 微信聊天记录,截图保存
  • 电话沟通,事后发文字确认
  • 邮件沟通,保存邮件
  • 需求变更,要有书面确认

出了问题,沟通记录就是证据。

6. 不要垫钱

做外包,不要垫钱。

  • 服务器、域名等费用,客户自己付
  • 第三方服务费用,客户自己付
  • 不要自己先掏钱,后面再报销

垫钱的风险太大,很容易血本无归。

7. 维护好老客户

老客户是外包的根本。

  • 老客户介绍新客户,转化率高
  • 老客户复购,比开发新客户容易
  • 维护好老客户,比不断找新客户更重要

做好每一个项目,就是最好的营销。

十一、写在最后

做外包三年,见过各种客户,有好有坏。

奇葩客户虽然让人头疼,但也让我成长了很多。我学会了怎么和客户沟通,怎么保护自己,怎么筛选项目,怎么管理需求。

现在,我接项目越来越谨慎了。不是什么项目都接,不是什么客户都伺候。宁愿少接点项目,也要接靠谱的项目、靠谱的客户。

外包不是长久之计,但在找到更好的方向之前,它是一个不错的收入来源。它让我自由安排时间,接触不同的项目,积累不同的经验。

2022年了,我还在做外包。也许以后会转型,也许会一直做下去。但不管怎样,这三年的经历,都是我宝贵的财富。

最后,用一句话总结:"做外包,技术重要,但更重要的是和人打交道。遇到好客户是幸运,遇到奇葩客户是经历。保护好自己,做好每一个项目。"

愿每一个做外包的程序员,都能遇到好客户,都能收到钱。