好文推荐
原文链接:https://www.jianshu.com/p/8c9f94994ca3
原文作者: 天哥在奔跑
接私活对程序员这个圈子来说是一个既公开又隐私的话题,不说全部,应该大多数程序员都有过想要接私活的想法,当然,也有部分得道成仙的不主张接私活。但是很少有人在公开场合讨论私活的问题,似乎都在避嫌。就跟有人下班后跑滴滴一样,程序员私有时间接点活挣点钱不也很正常么,不过不要在上班时间就行,就跟你上班期间出去跑滴滴一样。
当你竭尽全力想要去接私活的时候一定做过这样的事,百度搜索“程序员如何接私活”或者“程序员到哪接外包”之类的问题,那么相信你也一定看到过让你不要接私活的帖子,观点大概就是:
把有限的时间花在提升自己的能力上,技术深度,技术广度,或者多阅读书籍,丰富自己,这样有可能比做外包收益大。
这里就不跟大家讨论该不该接的问题了,很明显,我接了。首先跟大家分享几个项目案例。
案例1
大概是13年14年左右的样子,谈到一个项目,做一个APP连接甩脂机,通过蓝牙模块传输数据,便于手机上观察,大概这样。依稀记得跟甲方项目经理沟通需求时,他拿了一个 Android 2.x 系统的手机给我演示了QQ的一些功能,我一本正经的跟他说,“你放心,这个肯定做不了”,他当时就懵了…因为我并不想兼容2.x版本的系统。后来进入签合同阶段,这家公司不大,事儿倒是不少,又是身份证复印件,又是按指纹。这个项目是我外包生涯中的一次滑铁卢,为什么呢,因为我竟然同意了不用付定金,等项目开发中期再支付第一笔费用。带着一个他们提供的蓝牙硬件模块,回去了。后端开始编写API,Android iOS 开始研究蓝牙数据传输,噼里啪啦直接把项目做完了。测试包发过去了,结果大家能想到,不给钱!
我至今都记得这家公司的名字,不知道倒闭了没有,我们整个团队一分钱没得到,项目以失败告终。
案例2
一个汽车后市场项目。当时市场上有一款APP,养车点点,后来已经改名,叫典典养车,我们当时要做的就是抄袭它,功能类似,整个项目差不多十几万。甲方是做汽车零配件的,在上海有很多家店,每次交流的地址在一家咖啡馆。两个多月后,项目上线,经营一段时间后,甲方意欲挖我们过去,毕竟项目是我们做的,他想把原班人马招过去,婉拒。
案例3
一个海外社交项目。这个项目比较小,只做 Android 一个端,原因是甲方招聘的 Android 人员离职了,时间紧急,就让我接了。比较顺利,对方提供视觉稿、API,我开发 Android 即可,项目也没啥难度,我闲着无聊,特地给他们做了一些交互动画,甲方验收的时候非常高兴,直言比他们自己员工做得都好。
还有很多其它项目就不一一介绍了,小到做一个控件,几百块,千把块,大到几十万的项目,从整理需求到设计到开发。当然,也不是什么项目都接,举个例子,以APP为例,在甲方提供API和视觉稿的前提下,一个端低于2万的项目从来不接。
做私活挣钱吗?不挣钱是脑子进水了吗。尤其对于刚入场的选手,外包收入可以说抵你一年的工资都可以。不仅挣钱,还特别积累经验,外包项目五花八门,搞地图的,搞语音的,搞视频的,搞蓝牙的,能帮助初级选手快速成长。
做私活累吗?相当累。白天黑夜,从无周末。项目一旦接下来,从此进入心事重重的生活,不到最后交付那一刻,不会停缓。周末是最佳的工作时间,平时下班晚的话还做不了,所以几乎没有休息时间。
重点来了,到哪里接呢?
初级选手自己乱七八糟找项目,高级选手项目找上门。做私活一定要找到最佳状态,不然就是受罪。什么是最佳状态,就是当项目找上门时,**想做就做,不想做又想赚就转。**那么到底有哪些方法可以接到私活呢?不管黑猫白猫,抓到老鼠就是好猫,有哪些方法我一一说来。
方法1
各个众包平台。这是入门级的手段,也是最容易做的方法。有哪些众包平台就不用我一一细说了吧,猪八戒,威客网,CSDN 也有外包频道,一些技术论坛,海外的 Freelance 网站等等,每个都注册一遍,前期比较麻烦,各种资料需要填写,团队介绍,历史案例。注册之后理论上就可以投标项目了,不过如果需要认证的话,还需要继续花钱,很多项目只有花钱之后才有机会投标,这个就自己评估吧,我没花钱。通常没啥好项目,钱哪有那么容易赚,都是些边边角角稀奇古怪的项目。当然,即便是被别人挑剩下来的项目,也不排除有好项目,你要一一去沟通才知道。
方法2
主动联系各个外包公司,成为他们的备选开发人员。外包公司接单子的手段肯定比我们个人高明多了,他们就靠这个吃饭的,当他们出现人员紧缺、项目过剩、员工离职等情况时,不排除他们会考虑找临时替补人员,甚至把项目整包转出去。如果你身边有朋友开外包公司的,那很好,先天优势,长期互助。但是大部分人也许并没有这样的资源,那么这就是个体力活了,在方法1的基础上,部分平台会留下甲方的联系方式,比如猪八戒,你直接搜索软件外包服务商,他们的介绍页面上通常会有他们的手机号码和邮箱等信息,或者当你点击“在线咨询”“与我联系”等类似按钮的时候,他们的自动回复也会出现一些QQ号、手机号、邮箱等联系信息。
这边我只是以其中一个平台为例,只要你用心,各个平台你都能扒到一些有用的信息。拿到这些信息之后你就可以把你编辑好的话术发给他们,也可以直接加他们微信,通常手机号码就是微信,不要怂,直接跟他们联系,打电话、发邮件、发QQ,发微信,把你想要做外包的意图告诉他们即可,然后就静静的躺在他们的朋友圈里,或者被遗忘,一两个月问一次好打个招呼,不要太频繁,这也算是人际关系的维护,看你本领了,多认识点人没坏处,剩下的就是平淡的等待了,如果他们会联系你的话。
方法3
跟身边的开发人员灰度交流。你没有项目,不代表别人都没有,如果别人愿意带着你的话,这也算是一个渠道。什么是灰度交流,就是半含蓄状态,文章开始我说了,程序员接私活是一个既公开又隐私的话题,不过这个度大家自己把握好,搞不好丢饭碗,把握不好的还是放弃这个方法吧。
方法4
人脉资源。除了从网络上接项目,或者吃外包公司的残羹冷炙,还有另外一个类别的项目,那就是创业者。在这个互联网、移动互联网、物联网盛行的时代,创业者也是一波接着一波,虽然热度有高有低,但是从不缺。组建一个公司,组建一个技术团队需要一笔不菲的费用,尤其软件开发人员的工资,将成为一个创业公司的沉重负担。种子投资,或者天使轮投资能有多少,对大多数创业项目来说,几十万,一百万,两百万,或者五百万,基本顶天了,这些钱能维持一个团队多久,何况还有很多创业者并没有拿到融资,他们等着先开发一个上线项目,再拿项目去找投资。如果你能接到这样的项目,那也是很爽的,不过通常这类项目靠熟人介绍,但是你千万要注意,一定要营造良好的口碑。有条件的话,也可以做套名片,几十块钱,够发好久的。
做私活没有稳定的渠道,你可能一直找不到项目,也可能一年一个项目,重点是心态,不然你将陷入困扰的情绪当中。有更好,没有拉倒,找到最舒服的状态。
当项目来临时,该如何报价?
价值都是相对的,一定要有自己的心理预期,有些人觉得五千很值,有些人觉得一万很值。不要饥不择食,不管多廉价都接;也不要人心不足,吃着碗里看着锅里,或者觊觎别人的高价。跟对方交谈时,一定要快速判断彼此是否是目标客户,不要啰嗦太多,你的心理预期是几万,对方的心理预算是几千,这样的项目还谈个啥,务必在最短的时间内确定大家是否可以继续谈下去,否则浪费不必要的时间。如果大家心理预期差不多,对方不是那种想三千块钱做个淘宝的,则继续往下进行。有的甲方要求不多,很爽快,这样最好,有的甲方需要出报价单,那么就详细沟通需求,整理报价,整理报价是一个费时的过程,不要嫌麻烦,我们不是服务商,我们是抢食的个体,一定要不怕付出,哪怕一无所获。
甲方有可能只是来询价,也可能等你出完报价单再回去比价,还是那句话,不要怕吃亏。如果甲方是个体的话,通常很好弄,但是甲方是商家的话就麻烦一点,一定要问清楚是否要开票,开票是要税的,不过羊毛出在羊身上,告诉他我们的报价是不含税的,如果要开票的话要加上税钱,20万的话,差不多几千块钱,看对方要求开什么类型的票。开票的话可以自己去税务局开,不过我没去过,如果自己认识几个开公司的朋友的话那是最好,让他们帮忙开张票,把税钱贴给他们。
如果你觉的开票你对来说很难实施的话,那么有三个方案,一是放弃,这样的单子直接不要接了,继续寻找下一个单子;二是先接下来再转包,转给其它的外包公司做,不过你要估摸好有公司接,有朋友做外包公司那是最好的,相互帮忙,但是这种方案并不推荐,原因是不好把控项目进度和质量,还担风险;三是把项目介绍给认识的公司去谈,谈好了你拿提成,这样你既不担风险,还赚点快钱。
付款方式该如何确定呢?
切记,必须付定金,越多越好。通常我的付款方式是442,即预付40%的定金,项目提测再付40%,项目上线付清余款20%,这套方式针对个人比较好用,针对公司不好用,公司通常会留一笔费用在上线后一个月两个月三个月再付清,所以付款方式可以改成5311,即预付50%的定金,提测30%,上线10%,上线运营一个月后10%,坚持一个原则,前期付的钱越多越好。
接下来就是签合同了
一般只有个人才可能不要求签合同,大多数情况还是要签合同的。合同尽量你来拟定,不会写的话上网抄,一定要保护好自己的权益,重点是防止被对方坑。比如在合同中一定要写好适配哪些系统哪些浏览器,基于哪个版本开发等等,做得到的就写,做不到的别乱写,合同这东西,在心情好的时候怎么写都无所谓,心情不好的时候大家只能拿合同说话,你可别赔个十万二十万的,吓死你。
整个接私活的过程差不多就是这样了,最后,我再强调几点注意事项:
-
没有金刚钻,别揽瓷器活。
-
急单勿接。
-
任何不付定金的单子都是耍流氓。
-
不计得失,不怕吃亏。
-
保证质量,塑造口碑。
老本行不忘进阶
1.面临一个解决不了的问题的时候,最初阶段放弃百度,放弃google搜索。尽量做到只依靠安卓官方文档。
搜索引擎是一个黑匣子,问他“xx问题应该怎么解决”,它会忽略掉一切中间的思考,分析,解决流程,给出最后的答案。
其结果就是,使用答案的人基本上不可能理解“为什么这么去做”,只知道“可以这么做”。 就像一个没学过加减法,只会用计算器的收银员,有计算器能工作,但是恐怕没有心算的快。复杂的问题如果计算器不会算,他也不会。
等到通过基本的文档自己找到了思路和方案,再去看看有没有别人写好的第三方的东西,或者成熟的方案,再和自己的东西印证。
这要花很多的时间,会比别人慢,会把别人休息的时间用来加班。 但是大牛如果是睡觉打游戏就能养成的,这个问题也不会出现了对不。
2.安卓系统源代码要常备。
跟踪代码时候,尽可能跟到系统的层面,越深越好。至少sdk要进去。
不了解sdk的代码,自己就很难写出同级的代码。好代码看的多了,自然自己的水准也会提高。熟读唐诗三百首嘛。
3.如果代码没有按预期的去动作,不要第一时间想着去解决这个现象,而是要追究为什么会发生这个现象。
比如程序崩溃了,加个try catch自然解决了这个问题。但是这么做就太糟了。
自然要问问,为什么会出现这个exception?底层的返回null了,上层没处理。哦,加个判断就好了。这样好一点,但是仍然很糟。 底层为什么会返回null?如果null是合法的返回,文档里有没有约定?如果没有约定,文档有问题,如果约定了,代码有问题。更主要的是,其他地方是不是犯了同样的错误?我是不是存在“不注意文档约定”或者“写文档时候忘记约定”这样的问题?
到这个地方,才真的对自己的成长有所帮助。大牛也是一步一步走上来的。
4.多把自己知道的东西教给别人。
比如写一些知识和技巧跟大家分享,或者召集一个公司内的小培训。
这样做的好处有两个。
第一自己得到了锻炼。把知识系统化总结,对自己是一个回顾,整理,沉淀的过程。这个过程中可能会找到自己尚欠缺的地方,也可能会被别人的提问启发。
第二是能逐步树立自己的地位感,成为大牛也是一个正向激励的过程,往往是牛人越来越牛,普通人越来越普通……
5.不要放弃任何一个提高的机会。
工作中很多任务是使用已经知道的东西来做。时间长了就会觉得都是重复劳动。
可是真的是这样吗?我所熟知的方法,就是最好的方法了吗?是否有更优雅高效的方式?答案是一定有,没有最好,只有更好。功能上觉得已经实现好了就提高效率,效率已经很高了就改善结构,结构优化清晰了就试试分析有没有未来可能的需求变更,能不能应用设计模式,等一圈都走下来,回过头一看,原来功能上还不够完美啊。
如果你不知道如何进阶,方向在哪里???
下面是有几位Android行业大佬对应上方技术点整理的一些进阶资料。有 【Android架构视频+BATJ面试专题PDF+核心笔记等资料】。希望能够帮助到大家提升技术。如果大家想要获取的话,可以简信我【666】免费获取哦~
高级UI,自定义View
UI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。
不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!
如果需要PDF版本可以在群文件夹里,自行领取!
-
由于简书限制网盘链接,在我主页扫描我的二维码,我免费分享给你
-
自行下载直达领取链接:【点击资料下载】