当前位置: 首页 > 科技观察

软件工程师的创业陷阱-私人打工

时间:2023-03-21 23:13:40 科技观察

我是Java土生土长的。我写代码超过15年,创业超过10年。我把很多项目外包给了别人,我也接手了很多外包的项目。NowIdon’taccept现在,它只运营一个电子通讯发送平台,两年内已经有5000多家企业用户使用。在创业圈,只要有创业的朋友问我,我都会告诉他,你答不上来,那就别答了(当然我也知道,如果不是为了生存,谁愿意接受吗?),因为这样坑太多,分享如下,供大家参考:因为你写代码很快,所以出来接私活的工程师大多都是资深的,有自己的专用工具和图书馆,所以往往能很快完成主管布置的工作会认为只要能在短时间内完成客户的需求,这个项目就赚钱了。【BUT】项目完成的速度取决于客户的心情。只要他心情不好,慢慢拖延就好。你以为你的代码可以被重用,但最后你发现,真正被重用的是你的肝脏。因为你写代码的速度很快,只要客户比价,砍价,压着你结案的时间,你就会心里想:嗯,只要我努力赶上,应该就可以了。【BUT】无形中,你牺牲了自己的利润空间,只赚取了微薄的利润。你知道工程师估计完工时间有多准确吗?准确率越高,赚取薄利的概率就越高。因为私活可以赚取每年的维修费,只要你接受,以后的维修客户很难不找你维修。只要慢慢积累,每年都能赚取可观的维修费。[BUT],你知道大部分台湾公司都有一个不成文的规定,就是同一个系统的维护预算每年都在减少,客户会想:系统每年的调整应该是稳定的,你也无计可施稳定为什么要花那么多钱?接下来,您可能想说,如果客户想要添加新功能,他们必须先找到您。试想一下,让你根据三年前写的代码结构来增加功能,如果你不吐血,那很可能说明你这三年没有太大的进步。你为什么不接总公司?你有这样的责任感。不接客,只能销毁,请人重新做一套。你有心吗?那么你觉得维修费好不好?因为你很擅长服务客户,考虑到你很为公司着想,所以在开发过程中,你经常会发现少了点什么或者主管做错了计划。你会主动加班来弥补这些缺失的部分。公司会很表扬你。如果您在接受私人工作时,以这样的态度对待我们的客户,那么双方的合作感觉一定非常好。[BUT]当然,你的客户是好的,因为你主动帮他增加功能,更好地调整系统,而不是多花钱。加钱?合同一开始就签好了,怎么跟客户说要加钱?此外,这是您要主动添加的功能。可以不加吗?是的,但是你能容忍你的工作可以更好而不是让它变得更好吗?如果原计划有误,是否可以不作调整就接受?因为你知道客户想要什么,因为在公司里,主管往往语无伦次,但是你总能分析出主管想要什么,你就能完成,所以即使对方在接私活时不懂技术,你仍然可以完成他需要的功能。[但是],你知道客户想要什么吗?不,你不知道,因为大多数客户不知道他们想要什么,你知道客户之上有一个老板吗?你知道客户的老板想要什么吗?不,你不会知道,因为连他的老板都不知道,这就是最可怕的事情吗?不,更可怕的是,他们会告诉你他们知道他们想要的功能是什么,但你就是做不出他们想要的。因为你很擅长计划,所以你是一个逻辑观念很好的人。只要主管告诉你他的需求,你就能很快画出系统架构图、代码架构图,甚至数据库架构图。准确率非常高,所以接私活只要客户把需求告诉你,你脑子里很快就会有各种架构图的原型。【BUT】你知道规范是谁制定的吗?是的,是客户做的,因为他不做你就报价不了。向上。那么您认为客户的逻辑会与您同在吗?所以通常你要做的就是先了解客户的逻辑,然后找出其中的矛盾,然后提出更好的解决方案。时间少,哦对了,一般这段时间是收不到钱的,客户会觉得你要接我的项目,你应该先来了解我的需求。因为你有团队,因为你在业内有一定的人脉,你可以自己写代码,然后找业务专家或者美国的编辑专家,这样最小的单位就好了,大家可以分工,所以私人工作的问题将会减少。顺利。【BUT】因为你有3个人,所以你只能接受能支持>=3个人的项目。这种项目一般做的大一点,因为以上原因会导致结案很慢。如果不结案的人卡在这个项目拿不到钱,又不能接新项目。我应该怎么办?是的,加人,这样你的团队就变成了4个人,然后你只能接受能支持>=4人的项目。一个大项目呢?是的,您将陷入无限循环,直到您无法承担任何更大的项目。因为你要用客户的项目来训练士兵。正如阿甘所说:生活就像一盒巧克力,你永远不知道下一颗是什么味道。所以你永远不知道下一个项目会在哪里,但是当你开始有团队,每个月都要发工资的时候,当一个小项目来的时候,反正你也不知道下一个项目什么时候来,这只是足够支付球队的薪水,还能用来训练士兵,也很不错了。[BUT],接私活的一个特点就是接了这个项目,接下一个项目的能力就会降低,因为人手和时间总是有限的。如果你接了一个小项目,没有人手接一个大项目,你说大家都生气吗?不幸的是,这个小项目的老板特别麻烦(由于以上原因,你知道概率不小),所以你磨练团队的不是他们的技能,而是你的身体、思想和灵魂。渐渐地,就会有三军无能、疲惫不堪的声音……要不开发个训练士兵的小产品?因为你在与客户打交道时具有良好的个性。和厂家或者客户我都能相处的很好,能的我就挑,不能的我就堵。如果我出来接私活,跟客户打交道,就没有问题。【BUT】,客户有几百种款式,你一套给客户,客户却给你好几套,他可以谈判,砍价,按时,加功能,延期验收,会计消失,老板出国。..,最后怪你怎么这么久才扣你一笔钱,还说:你们不是专业人士吗?发展阶段你们是朋友,接受阶段你们成为双方。因为您从不缺少客户,所以您永远不需要自己开发客户。客户是由朋友或客户介绍的。这比一般公司要好得多。还没有其他人想要客户。[BUT],你有没有想过,你有上面说的所有优点,关键是你比别人便宜,别人不找你,我要找你。那你赚钱了吗?因为你签了合同是为了避免以上不必要的问题,所以每个项目都要签合同保护双方,按照合同来就万事大吉了。[BUT],你有对方的法律事务吗?你有钱给对方吗?你真的打得起官司吗?你真的确定你在合作过程中是完全正确的吗?有没有办法在合约详细信息,操作流程中规范所有功能?合同是一本大书,你的客户会跟你签?那么,你真的能遵守约定吗?您上一次愉快地编写代码是什么时候?我曾经说过一句话:我希望我死前的最后一个动作是按下[Enter]。我写代码的动机不是为了赚钱(当然赚钱很重要,但如果只是为了赚钱,我可以做直销,卖保险,去大公司工作。。。),准确的说,这不仅仅是为了赚钱。我的动力来自于我写的代码可以被很多人使用,它确实帮助了很多人,很多人说它很好。(相信我,如果你真的这样做,你真的会赚钱)但是自从我接手私人工作以来,我最多只能帮助我有限的客户,更准确地说,可能只是真正使用系统的一些人,也只有这些人会说我好,其他人只会认为这是你应该做的,但只要他在最后验收的时候辞职或者生气,所有的努力都会化为泡影。所以那时候,只有两个瞬间是开心的。一次是收到定金,一次是收到尾款。中间的很长一段时间是痛苦的。当多个项目同时进行时,其实无时无刻不在痛苦。还记得那时候常说的一句话:收到你的冷支票,心里暖暖的。善于接私活的人当然要有,只是别人的成功很难复制,别人的失败却是可以避免的。如果你能避开我上面提到的陷阱,并不能保证你会成功,因为这只是冰山一角。我已经很久没有从事私人工作了。我忘记了很多事情,我不想去想它们。我只是希望你在决定接受私人工作之前仔细考虑一下。你真的只能选择私人工作吗?如果可以,我建议您应该开发自己的产品和服务。