前言
掘金 AMA 是掘金沸点的一个话题,掘金团队会邀请一位技术大牛通过「你问我答」的形式回答你的问题,让大家在技术、工作、生活方面有所成长。
嘉宾介绍
掘金 AMA 第三十四期请来了淘系高级前端技术专家,陈仲寅(花名:张挺)。张挺老师长期耕耘于 Node.js 技术栈,为淘宝和阿里其他 BU 提供框架和中间件解决方案。也是阿里集团 Serverless 标准化规范负责人,负责淘宝整体的 Node.js 体系基础建设,解决全栈开发的各种维护和稳定性问题。同时负责 MidwayJs 系列内部和社区开源产品,包括 Midway、Sandbox、Pandora.js、Injection 等开源产品的开发、维护等工作。
精选问题
- 具备怎么样的素质才是一个合格的前端工程师呢?前端又该怎样去确定未来的发展方向呢?未来,前端又会有哪些发展方向呢?
首先我觉得不管是不是前端,都需要掌握一些基本的素养。比如说你的学习能力、敏感度。
学习能力指的是什么?就是当有新的框架、新的领域,或者新的思想出来,你可能要去主动、快速的接受他。第二个是敏感度,其实我经历了很多次极具挑战性的跨越,比如从JQuery 到React,从Bootstrap到React。在面临挑战时,必须去不断地强迫自己去接纳一些新的思想。相信大家都听到过,前端这个岗位本身就是一年一变的,所以我觉得保持敏感度和学习能力是非常重要的。至于你学习哪个框架,学习哪个东西,我觉得反而都是次要的。
前端又该怎么样去确定未来发展方向?未来发展方向其实都是比较玄乎的,这个东西其实很难去界定。当然前端我觉得也有几个方向。从目前来看,特别是一些纯 Vue 或 React 前端,当然有些是标准业务。前端发展方向我觉得现在有几个部分,一个是大家都知道 AI 的方向。第二个方向是现在比较虚的 AR、 VR 以及所谓的源宇宙的方向。第三块是偏向后端的、全栈的方向,可能不仅仅是 Node 还有 Rust、 Go 这些语言的加入,会让前端变成一个全栈的工程师。
2.昨天部门老大(java)让我思考一个问题:做深度学习、自动驾驶、图像识别、AI等细分领域的后端程序员能比较轻松拿到年薪百万的顶薪,但是一个前端程序员需要具备怎样的素质才能拿到这样的顶薪?或者年薪百万的前端程序员都在干点啥?
先分享一个我自己的故事,当年我也是一个后端的程序员,我也是写 Java 的,然后我当年毅然决然的从 Java 跳到了前端。当初的原因是觉得后端比较闷,然后每天对的数据感觉没有什么盼头,但是前端的活力每天不断有新的思想,新的刺激,非常有有活力,所以我跑到了前端。然后那个时候我们部门老大跟我说,你要想好过去了就回不来了。然后我现在觉得这句话有那么点道理,过去可能真的回不来了。但是我觉得我也不太后悔,说从后端变到了一个前端,并且后端能让我有非常大的思考的深度以及对数据的敏感度。那跑到前端来,我觉得也有更多的在视觉或者是交互方面的学习和成长这两个其实不冲突的。
然后至于年薪百万顶薪的问题,我个人觉得前端一般可能是不太比得过做 Java 或者是做那个深度的人。为什么?因为前端的天花板其实比较低的,远低于java的天花板。这就是为什么我们前端的一直在要拓宽前端的边界,不仅仅是做纯前端,也要做全栈的原因我们其实一直在推进 Node 前端,学其他领域学技能,而把前端拓宽。
所以不是前端需要准备怎样的素质才能拿到这样的底薪,而是说要看你自己有没有这样的一个期待或规划。我理解光学前端肯定是达不到一个很高的 level 的,但是如果能够去不断地去弥补自己的不足,那就是在拓宽自己的边界,增长自己的能力。增值自己后,别人才会觉得你值这样的薪资。
3.Node和其他后端语言的最大优点是?是因为JS吗?
没错,就是因为 JS。Node的第一个特点是快和轻量、第二个特点是用户基数大,门槛低。因为前端的缺口很大,前端的人群也非常广。而且前端本身又会JS,Node 也是 JS ,简直天衣无缝。不像说我学的是java,如果我要去学 Node 就相对比较困难一些。
4.做一个企业级的Node应用要考虑哪些问题,对于这些问题目前市面上有什么好的解决方案么?
首先真正企业级功能可能不是第一位的,第一位肯定是稳定性,要保证稳定性,那可能是要从整一个监控体系和运行时体系来说。首先说说这个运行时, Node 的运行时其实是有不断的安全补丁的。第二块是那个稳定性,更重要的是监控。监控主要有三块,一块是错误日志的监控,一般都是通过日志采集工具去采集,采集出来存到云上,然后做一些监控报警。第二块是 metrics 监控,这个一般 APM 厂商都会做,包括阿里 Node、 Easy-Monitor 这些都会做。第三块是链路的追踪,这块非常难做,因为不同厂商的标准是不一样的。
5.求职的时候说加分项是:Node.js经验,那究竟怎样才算会有Node经验,增删改查算吗?
对于我们面试者来说,肯定不会说只看增删改查,增删改查只是说你用过了Node。
我挺喜欢问这些问题,比如说你平时用 Node 做什么?用的什么技术做?流程是怎么样子的?错误处理又是如何做的?错误处理返回到框架侧,框架侧会怎么样做?
如果你不会,你可以猜一猜,那么我会用这样的一些询问,不断的去问一下他的整个框架对自整一个业务逻辑的了解程度。
对于我们来说更喜欢听到的是一些自己的思考。就算你不会,你可以临场发挥,分析一下你会怎么实现,用到哪些技术?以此来考察你对这些技术的了解程度,以及融会贯通的程度。因为很多技术你是不知道的,你只能用现在的知识底蕴,给出思考的答案。我们来一般会考虑这些,这样才是真正能力的体现。
更多精彩
觉得精选问题不够看?还想学习更多精彩内容?欢迎点击「大咖说」直达直播间,听老师聊聊“从 hello word到框架研发”的那些事儿。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/9854.html