啥是全栈工程师
全栈工程师是指掌握多种技能,并能利用多种技能独立完成产品的人。有人直接说万金油而已,往好听说是全栈工程师,综合能力全,啥都能干,但是实际上就是什么都会哪都不精通。有人嗤之以鼻,也有人称赞不已。
全栈工程师最大的优点就是具有全局性的思维,解决问题能有多种手段,并且能从中选择个人的最优解。
虽然啥都会挺简单,啥都精挺难的,但做人总要有梦想的嘛,万一实现了呢?让别人做他的细分领域技术专家去吧,听从你的心,想成为什么样的人全靠自己。
“好读书,不求甚解。每有会意,便欣然忘食。——《五柳先生传·陶渊明》”
为什么选择全栈工程师
人的认知都是这样的,首先你要知道有这个东西,你才会去思考,去实践,去比较其优劣性。如果我不知道有洗碗机,我可能会一直延续传统持续手工洗碗,吃三顿饭就洗三次。如果我不知道有扫地机器人,那我可能会每天重复地先扫一遍地再拖一遍地。我们以为我们拥有全世界,其实,我们只是拥有我们知道的那么一点点可怜的见识而已。“我不是什么都知道,我只是知道我知道的东西而已。——《化物语·羽川翼》”
能打败对手的武功,就是好武功。能完美解决需求的软件技术,就是好技术。业务精通才是关键,软件技术始终只是为业务服务的工具。我不需要一门武功臻至化境,我只需要对敌的时候,能有相应的武功即可。这里吹一波独孤九剑。
全局性思维,与系统架构设计师很相似,而系统架构设计师是一个最终确认和评估系统需求,给出开发规范,搭建系统实现的核心构架,并澄清技术细节、扫清主要难点的技术人员, 具有高级工程师的实际工作能力和业务水平。他的知识广度决定了整个产品最终能做多大,能做多好。
出于风险规避的考虑,会的越多,能做的越多,在某一项技术寒冬之时,完全可以靠另外一项技术谋出路。
技术重心
可以很明确的说,IT行业的初级人员已经接近饱和,想找到一份工作不难,但是想要找到一份好工作,你需要有足够的实力。
在前几年,我们只需要熟练的掌握开发语言的基础语法,框架的使用流程,基本上就可以轻松的通过面试,至少实习岗是这样。因为如果想要实现一个业务逻辑,主要就是靠增删改查,并不存在很大的难度,主要框架使用的熟练,就可以胜任这份工作。但是目前,重心已经逐渐向优化转移,之前很多架构师的工作也慢慢的要求中级开发人员,甚至于初级开发人员来掌握,因为这已经成为开发应用的一部分。
在实现功能的基础上,要进一步考虑用户体验,提升整个应用系统的响应速度。这就要求我们要掌握很多其他的组件,来达到优化的目的。
目前的人才缺口在于“优秀的开发工程师”,无论是前端还是服务端,大家一定不能松懈,要不断的提升自己。不要过分的强调技术和管理的分界线,多积累业务经验,提升文档写作的能力也能为你带来加分。
在实现业务功能代码的基础上,我们要立身于产品来进行思考,数据的流向是怎样的?产品的模式是怎样的?主要面向的用户人群是什么?不要把我们可以积累的业务经验忽视掉。毕竟追逐技术是没有尽头的,技术的发展日新月异,唯有数据和产品是不变的话题。
总结
全栈,难道仅仅指的就是掌握前端和后端的技术吗?远远不是。独立完成产品,这是一个什么概念?从需求分析开始,到概要设计,详细设计,产品原型,页面切图,界面实现,服务端开发,数据库存取,应用发布及服务器管理,系统测试,运维售后等等。缺你不可,有你就行。
结束语
出身985,工作996,劝退35,离职251,维权404。
只要干不死,就往死里干。
随缘,惜缘,不攀缘。
别因时髦而加入,别因过时而错过。