你是否是一个需求型的工程师?

324 阅读5分钟

场景


我们经常会面试被问到一些技术基础以及对技术底层的了解,然后另外一个一定会被问的是:你在做的项目中,你承担了什么角色,突破了什么技术点,解决了什么问题。

前面一个还好说,我只要准备技术,准备刷题好了,但我做项目的过程中平平无奇怎么办?就是没什么可讲啊。

image.png

我们每天在做的


其实我们每天在做的事情重复率非常高,也许项目经理、产品经理、后端不这么觉得,因为他们的部分可能会有不同,但对前端来说,全是调接口、跳转页面,页面类型无非就是列表、详情、表单,很难很少看到tree、复杂组件或者关联业务的内容,除非你的领域或者场景模型复杂到一定程度。

然后我们可以分两部分分类处理每天做的事情。

重复率高,不需要创造力的需求


winter大佬曾说,前端目前的架构师其实并不存在做技术架构,除非真的是做游戏、ide、工具的这种,否则大多做的是解决工程化的问题,也就是协作、复用的问题。

那么我们要解决的就是如何解决low code,extra code ,如何做出合适的库或者模板,然后执行下去。

ok,思路有了,然后呢?方法论是什么?首先要把自己变为一个产品经理,而不是一个具体的前端coder。比如我们在需求中经常发现,需要做公司内app的下载页,活动协议页。流程如下:

然后你就会发现,当你的工作内容从纯前端变为一个产品经理加项目经理的角色,你的成长和晋升就会很快;另外你会发现,从制作一个 相对静态的页面,到支持一个能配置能动态调整的页面,对你的技术是有一定挑战的,促成之后也有利于你去做更多工程化、工具化的事情。

自己的一些简单实践是:

重复率极低的,但目前要求不高或者要求过高的需求


但凡有这样的需求,在能力范围内,一定要保证其基本的实现,并尽可能按照一定的生命周期完成。比如下面的这种基本的流程。

比如,自己之前在做一个表格以及常见网页打印的时候遇到一系列细节问题,这些问题在网络是没有现成完整的攻略的,而你在采坑之后,如果做了完整的记录以及探索了其原来就可以实现技术的提升。

我自己整理的一些实践文章:

其实


其实,我已经工作6年了,重复的部分自然有非常多,但这不影响你积累一些看似没有很高大上的实用技巧。在我们若干个重复迭代的需求中,我们要能找到自己可以发挥的空间,并沉淀下来自己的经验和探索过程。这也许不能直接增进你的技术水平,但这对你的业务水平,立竿见影,不是因为你可以直接做某个需求,而是因为你做了大量的沉淀,可以实现360度无死角的技术方案覆盖,这种覆盖别人也是短时间无法替代也无法学习到的,尤其是你的一篇文档可能是参考了10-20篇文档不断定位才找到问题的那种。

所以,把心沉下来,遇到重复的需求,看看自己能不能做的更快更好,去优化他的实现方式;如果是非重复有挑战的需求,看能否尽可能发挥自己的全部能力,做到极致,然后沉淀下来作为自己的技术壁垒;

和架构师或者知晓原理的那些大佬比起来,如果你能把上面那种从每天的研发工作中思考起来,也许微不足道,但是量化之后那离成为架构师也是指日可待,因为你能最贴近一线的各种需求和流程,设计出更合理高效的部分,要深深的记住一点,也许有些时候,设计一个技术的使用场景才是技术人员最核心的问题,而不是原理本身。

最后


一起加油,我在语雀等你关注,这里有1000+文档持续更新中。

我的语雀地址:www.yuque.com/robinson/fe…