从前端视角:我在业务中如何披荆斩棘
2023-10-31 20:02:21
年初的疫情时,我写了一篇《技术人的那些小心思》的文章,讲了我对技术人员心里的那些小九九,以及如何在平时开发工作中,如何用心工作的看法。收获了很多朋友的点赞,还有一些朋友留言鼓励。谢谢大家的支持!
这篇文章想讲一个“披荆斩棘”的故事,讲讲我在业务中成长的经历。
初入职场
我是 2017 年毕业的,从毕业到 2021 年,已经工作 4 年了。刚入职的时候,我对前端这个行业充满了期待和憧憬。我以为前端就是写写代码,画画页面,做做动画,给用户提供更好的交互体验。
但是,现实给我泼了一盆冷水。我发现,前端不仅仅是写代码,还要懂业务。
业务的理解
刚开始,我不太理解业务,每次产品经理提需求,我都是一头雾水。我问产品经理,这个功能是怎么用的,为什么要这么做,但是产品经理也说不清楚。
后来,我慢慢意识到,要想写出好的代码,必须先理解业务。于是,我开始花时间去了解业务,读产品文档,跟产品经理沟通,甚至自己去体验产品。
随着我对业务的理解越来越深,我发现我的代码质量也越来越高了。我不仅能写出符合需求的代码,还能提出一些优化建议。
需求的沟通
理解业务之后,下一个挑战就是需求的沟通。
需求沟通是一个双向的过程,既要理解产品经理的需求,又要把自己的想法表达清楚。
刚开始,我在需求沟通上吃了很多亏。我经常听不懂产品经理的需求,或者把自己的想法表达不清楚,导致开发出来的东西和产品经理想要的完全不一样。
后来,我总结了一些需求沟通的技巧:
- 主动沟通: 不要等着产品经理来找你,要主动跟产品经理沟通,了解他们的需求。
- 多问问题: 不懂的地方一定要问,不要不好意思。
- 澄清需求: 在开发之前,一定要把需求跟产品经理澄清清楚,避免出现偏差。
- 文档记录: 把需求文档记录下来,方便以后查阅。
需求的分析
需求沟通之后,就是需求分析了。需求分析就是把产品经理的需求转换成技术实现方案。
需求分析是一个复杂的过程,需要考虑很多因素,包括:
- 技术可行性:这个需求能不能用技术实现?
- 开发成本:开发这个需求需要多长时间?需要多少人?
- 用户体验:这个需求对用户体验有什么影响?
需求分析是一个非常重要的环节,它直接影响到项目的成败。
需求的实现
需求分析之后,就可以开始需求实现了。需求实现就是把技术实现方案变成代码。
需求实现是一个技术活,需要掌握一定的技术知识和技能。
前端工程师需要掌握 HTML、CSS、JavaScript 等基础技术,以及一些框架和库,比如 React、Vue、Angular 等。
随着前端技术的发展,前端工程师还需要掌握一些新技术,比如 Node.js、GraphQL 等。
需求的测试
需求实现之后,还需要进行测试。测试就是验证需求是否实现了,以及实现是否符合预期。
测试分为很多种,包括:
- 单元测试:测试单个函数或模块的功能是否正确。
- 集成测试:测试多个模块集成在一起是否正常工作。
- 系统测试:测试整个系统是否正常工作。
测试是一个非常重要的环节,它可以发现代码中的 bug,提高代码的质量。
需求的上线
需求测试通过之后,就可以上线了。上线就是把代码部署到生产环境,让用户使用。
上线是一个激动人心的时刻,但也是一个紧张的时刻。因为上线之后,代码可能出现各种各样的问题。
所以,上线之前一定要做好准备,包括:
- 代码 review: 上线前,要对代码进行 review,发现并修复潜在的 bug。
- 灰度发布: 先把代码发布到一小部分用户,观察是否有问题,再逐步扩大发布范围。
- 监控系统: 上线后,要对系统进行监控,及时发现和解决问题。
总结
以上就是我在业务中披荆斩棘的经历。
在业务中,我不仅学到了很多技术知识和技能,还学到了很多做人处事的方法。
我发现,一个好的前端工程师,不仅要有扎实的技术功底,还要懂业务,会沟通,能分析,善于解决问题。
我相信,只要我们不断学习,不断进步,一定可以在业务中披荆斩棘,成为一名优秀的前端工程师。