起因
因为近期已经离职在家修心,偶然在一个群信群聊里面看到一个外包。
看到了之后,我就在问了一句。但因为群不是我的,一开始担心抢别人的单,在群里聊了一轮之后,发现没人做,然后我就接了。
我觉得没啥问题,可以做,就继续跟他进行沟通。
第一次沟通
然后确定了以下几点。
- 项目是为了做一个后台管理系统,控制客户端的使用以及进行管理。
- 之前是直接运行了项目,并且是用宝塔进行搭建的。
- 需要帮忙把项目做完,顺便教一下他怎么用,最好是再教一下他怎么改。
我想着这个简单,也就是基于 pear admin flask 进行二次开发,然后新增一个 html 页面,先做好数据的增删改查。然后再对接客户端的软件,实现登录的校验与使用控制。
然后跟他聊了一下技术选型,确定大概的技术方案。 觉得没有问题了,就让他 先写一个文档 ,把大致的需求描述一下。 其实一开始都说好了,在写文档的时候很多细节自然就暴露出来了。他一边写文档,一边跟我沟通细节。大概花了半个多小时文档写完了。
然后发给我看,然后我又是找他进行沟通,一边沟通一边改文档。确认没问题之后我就让他先付了两百的定金,就准备开始做。
第二次沟通
因为是先写了文档,然后我就直接克隆的 pear admin flask 项目的源码,在本地调通之后直接便携页面的增删改查,并且预留了一些接口。 因为那个项目本身就是我写的,所以二开做起来也非常快,晚上八点多的时候就把基本的逻辑跑通了,然后找他要客户端的源码调试。 因为对方在外面,我就再花了点时间优化修改功能。
到了第二天再找他要了一下测试的代码,然后又新增了几个小需求。例如想要分页查询、条件筛选、对数据加密之类的。 对于那些查询、筛选其实早就做进去了,还有为了便利化修改,一些原本手动输入的内容早也优化为点选、下拉选择了。 数据加密之类的对我来说也不难,改了一下文档就开始做了。
然后要了测试代码。结果我跑的时候发现代码有问题。我想着不难,顺便把他的测试代码也给写了,然后再把系统给完善了。 十一点多全部做完之后,就跟它沟通想在他的电脑上远程演示一下,看一下哪里还需要完善。结果发现他睡了,那就只能等第二天了。
因为项目基本做完了,就顺便让他再付一点款项。没想到对方直接把剩余的钱全部转给我了。
感谢对方的信任,后面就剩下慢慢跟他进行对接了。
总结
项目整体做下来感觉还是蛮轻松的,可能是因为这些东西以前做过很多遍的原因。
以前也听一些朋友说外包难做,沟通麻烦之类的,但是我这次整体做下来感觉蛮好。 只是有些地方在沟通的时候,我明明有更好的结果解决方案,但是用户因为自己的考量,选择了他认为最好的,觉得有点可惜吧。 不过顾客是上帝,如果说不通就按照对方的来。
后续
花了一点时间,帮他把项目写完之后,对方突然提出想让我给他远程教一下他如何修改代码进行二开,我想着也不难就顺手答应了。 对方看着也有点吃力,因为环境不一样改起来很慢(调试多),改了半个多小时之后他放弃了,改为想让我给他多些八个页面,多给我两百块钱,然后就全部结束了。 我想了想就答应了,虽然最后这个有点亏,但是是基于之前的代码增添内容,也就算了。
最后整个案例完成了,并且跟他还聊了蛮多。整个项目做下来感觉思维差距还是蛮大的,很多数据表设计的最佳实践,在雇主看来没有他的想法重要; 一些可以更改参数实现封装,还不如多写一点代码;一些常见的用法,也很难跟他们讲清楚。不管怎么说,能劝的就劝,劝不住就只能按照对方的方式来了。