项目从哪儿找?怎么做?又如何聊?给大家一些方法
小麦2025年06月17日2133 字
本期聊聊项目如何找、如何做、如何聊三个常见问题。
前段时间有很多朋友在问:哪里找好的项目做,还要是能写进简历的那种。
核心有两大需求,第一,以技术提升为目的,想通过大一些的项目练手积累实战经验。第二,以求职找工作为目的,想弥补简历上项目经验的不足。
俗话说 “授人以鱼不如授人以渔”,因此这次我不打算推荐具体项目,而是重点讲方法。
我会从这三个方面进行拆解:如何找项目,如何做项目,以及如何在面试时聊好一个项目。
希望大家能看到最后。
如果说项目是完成一件事情的具体手段,那么在项目之前的这件事情就叫做 “需求”。
举个例子:公司 618 要给员工派发福利,负责行政的业务方提出一个需求说:要不我们搞一个线上抽奖活动。
于是前端会拿到一份抽奖页面的开发需求,开始考虑怎么选择技术栈,怎么建工程,怎么写代码的问题。
因此是先有需求再有项目,而这恰恰是很多朋友忽视的问题。
许多网上的实战项目会用丰富的内容吸引你,一开始便直接将讲技术内容,你大概不了解的是:
这些项目的原始需求是否真实存在,也并不理解为什么要这样做,有没有其他方式来实现这个需求。
会有一种纸上谈兵,照着抄了一遍又没有收获的感觉。
而只有亲身经历、试错性的训练,才能带来真正的提升。
OK,如果你能 get 到这个点,那么比找项目更重要的事情其实是找需求。
对于没有任何实习经历的人来说,这似乎是以个先有鸡还是先有蛋的悖论。但是我既然做了这一期视频,那么自有解法。
我想我们缺的可能不是需求,而是发掘需求的能力。
注意我说的是 “发掘” 而不是 “发现”,区别在于 “发掘” 需要会思考。
那么具体怎么去发掘呢?不妨从日常学习中找场景。
下面我分享一些交流群里的真实案例。
这位同学在学习 Vue 3 的过程中希望找到最佳实践,但是找到的资料比较老不知道怎么办。
我给出的解法是用 Cursor 总结优秀代码形成 cursorrules,更进一步可以做成一个自动提炼代码风格的工具,然后贡献给官方。
这是一种非常有价值且双赢的做法。
接下来是我个人的一个例子,我希望把视频源文件(Keynote)转换成图文稿(Markdown),遇到的障碍是几乎没有现成开源方案。
我尝试用 AI Coding 完成实现验证后,进一步把它做成了一个开源项目。
下面这位同学在实习过程中准备秋招,想找含金量高的项目做,但是做 CRUD 已经做吐了,不知道怎么提升。
我给出了一个用 AI 改善现有模型驱动界面的方案,进一步可以用 MCP 结合规则形成构建 CRUD 界面的新范式。
恰好也是他们组正在做的技术方向。
其实项目不在于大而复杂,特别是对于还没有工作经验的同学来说,本就没有机会参与复杂项目。
而你的业余项目是否有价值,是否具备发展成为大项目的潜力,才是企业非常看重的一点。
日常学习过程中遇到问题或者找到解决方案后,只要再往前多想一步,就会发掘出项目机会。
那有人肯定会说,啊我就是木瓜脑袋,想不到这些点子,或者就纯练练手怎么办呢?
常规的策略是去参考(抄)别人做过的项目,你可以买课看视频教程,也可以上 Github 搜罗开源项目,当然也欢迎找我咨询。
但是怎么把别人的项目 “变成” 自己的项目,其实也有方法可循。
接下来说如何去做好(抄好)一个项目。
在完成项目的过程中,不妨以结果为导向,把项目做 “出来”,即要看得见成品。
假设这个项目是自己的 idea ,不妨以开源的形式迭代项目,以发布一个可用的成品为目标,让自己的工作流更接近于企业。
如果有协作者会更好,这样可以通过 Pull Request 和 Code Review 更全面地展示自己的技术能力。
假设你是参考(抄)别人的项目,那么想想这些项目有什么亮点,可以怎么改造和优化不完善的地方,或是提出新的需求并实现。
接着将你的改造动作拿出来做成通用方案。
举一个例子:
在某某后台管理系统中,有多达 20 个页面都是雷同的 CRUD,这个项目通过一套标准化 Schema 方案驱动了页面渲染。
但是项目里的方案过于耦合不通用。
现在我将这套方案提纯解耦出来,甚至添加了一些高级功能,开源了一个通用的版本,可以复用到其他项目中。
这样一来,虽然是抄的,但是抄得有价值,在抄的过程中,你也掌握了核心技术。
项目做好了,能不能放在简历上?面试时怎么表达才有条理?接下来说说这些问题。
我经常用一种叫做 S-T-A-R 的面试法框架,来考察候选人的项目经历。
S-T-A-R 由 Situation、Task、Action 和 Result 四个问题组成,
第一个问题是情境描述,即说说需求背景是什么。
很多人在第一个问题上就犯难了,明明做了这么多项目,但就是说不清楚需求背景,是非常遗憾的。
在企业项目中,需求评估往往是很重要的,如果评估出来是伪需求,甚至都不需要立项。
第二个问题是任务描述,即该情境下的具体任务和目标,比如要在 618 之前完成抽奖活动页面的开发。
第三个问题是行动描述,即为了完成任务所采取的具体行动。比如技术选型,方案设计等等。
第四个问题是结果描述,这也是很多人忽略的关键问题。成功或失败的结果其实都可以说,尽量通过数据和事实来支撑。
比如这个项目服务了 X 个用户,我封装了 M 个通用组件,这些组件能在未来可以支撑 N 个类似的营销场景,预估研发周期可缩短 Y%。
在这四个维度中,你用了什么技术其实并不那么重要,重要的是你对于需求的理解,解决问题的思路以及最终的产出。
如果你正在做一个从头抄到尾的项目,那么在第一和第四个维度上会遇到障碍,这样的项目是不适合放在简历上的。
你看,项目真不真实,是不是自己做的,其实一问便知。
最后总结一下,
第一,如何找项目?需求优先,从日常学习中发掘需求。
第二,如何做项目?以结果为导向,有属于自己的成果。
第三,如何聊项目?套用 S-T-A-R 公式。
OK,那么这就是本期视频的全部内容了。如果对你有帮助,不要吝惜手中的一键三连。
我是小麦,我们下期再见。
评论