【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
和做项目、产品相比较,做技术还是比较简单的。一般来说,所谓的技术,就是把相关的功能实现即可。但是做项目和产品的话,约束条件很多。比如说准备做一个产品,首先要知道,这是一个什么样的需求,有没有相关的竞品,成本必须控制在多少,有没有特色功能,通过什么渠道卖出去等等。技术实现只是其中的一个环节。但是一个人,如果只是做技术,而不是去做项目、做产品,长期以往,没有足够回馈的话,也会让自己越做越没有信心的。所以,一个好的技术人员,未来一个很重要的出路就是做项目、做产品。
1、积极去寻找和发现需求
这个需求不一定很大,可能能很小,我们要做的就是比别人做的好一点就可以了。比如说网络转串口的模块,那我们只需要比别人功能多一点、成本低一点就可以。
2、学会写文档
编写代码只是实现过程的一部分。前期的竞品分析、需求分析、功能设计、功能实现、功能测试,这部分都需要文档的支持。对于个人自己来说,好记性不如烂笔头。我们现在比较熟悉的东西,将来还能不能记住,这需要打一个问号。另外,我们有的时候需要和别人沟通,这个时候文档也是最好的承载方式。
3、基本的商务往来
不管是通过什么渠道,当我们接收到项目的开发需求之后,下面要对接的,就是怎么把这些需求用文档固定下来,怎么付款,怎么验收,怎么做售后。做技术的同学可能不好意思谈到钱,但恰恰是钱,才是整个项目运行起来的基础条件。这个过程当中,我们会接收别人的付款,也会付款给别人。此外,每一次付款,怎么验收工作是否完成,怎么对公,税怎么处理,这里面都是有说法的。
4、从模仿别人的产品开始
有的同学也许会说,自己没有项目可以接,没有产品可以做,这种情况下不妨从模仿开始。从电商网站上看看,哪些产品卖的还不错,哪些产品是自己可以做的,如果自己做的话有什么优势当然一开始的时候,我们考虑的可能还没有那么多,只是满足于做出来即可。等到做过几个项目之后,慢慢就会有一点经验了。
5、构建自己的项目开发模板
项目开发板也好,产品开发也好,本身其实是一个套路的。比如说,我们可以假设这么一个模板。首先是需求对接,这部分用文档对接下来,没有需求,就自己给自己下需求。接着就是设计部分,设计又分成了三个部分,即上位机设计、固件设计和硬件设计。硬件设计部分的话,又可以分成schematic和layout。设计这部分做好了之后,下面就可以生成bom清单、gerber文件,开始打样、制板、贴片、调试,如果之前没有做过,这每一步都是学习的过程。最后,拿到板子之后,可以从最小电路之后,开始led调试、key调试、uart调试、功能调试、压力调试等等。这个时候,如果需要的话,还需要自己写一个上位机。不会的功能开发,可以搜索,可以chatgpt,可以淘宝买人家现成的板子,都是可以的。
如果是项目开发的话,一般制作几个原型开发板就好了。但是产品的话,中间还会涉及到版本升级、上位机升级、兼容性管理、功能迭代等等,会更加复杂一点。
6、用需求牵引开发
我们开发的最终目的,还是要把东西做出来,满足客户的需求,或者是满足消费者的需求。不管是哪一种,我们做东西不是为了放在家里自己欣赏,卖出去才是最重要的。没有了需求的开发,那就成了真正的爱好者开发了,本身不太容易长久,也容易让自己疲劳。毕竟没有正向的反馈,时间长了,家里人其实也是会有意见的。
7、项目和产品没有本质的区别
做项目一般就是定制开发,给别人实现一个方案,客户一般来自于b端,属于旱涝保收的阶段。产品属于自己做东西,自己来卖。无疑,做产品给人带来的收益更高。但是我们自己做的东西是不是真的是别人需要的,质量、成本能不能控制住,渠道有没有,优势是不是明显,这是做产品的同学需要去好好考虑的。