前端工程师的出路在哪里? 未来前端的发展方向和岗位
阿里妹导读:很多童鞋在上次的问卷调查里表示,希望多推出一些前端方向的内容。今天为大家分享一篇关于前端工程师职业发展的文章,抛砖引玉,期待与大家一起交流探讨。
我是成曰,目前在蚂蚁金服数据平台部任职前端工程师,从事数据中台产品的研发。目前对前端架构与质量、用户体验、TypeScript比较感兴趣。
以下我说的都是个人观点,比较宏观粗浅,主要针对的是前端工程师本身,没有深入技术和业务细节,请谨慎参考。
职能概览
前端工程师首先是个程序员,其次也是个软件工程师,他们工作在离用户最近的地方,负责人机交互和用户体验,虽然叫“前端”,但其实他们的工作边界其实已经很宽了。
展望未来,我想前端的工作会继续分化,也会继续融合,分工是工业革命以来社会高效协作的主要推动力,以后很长一段时间应该也会维持这种形态,融合的原始推动力也是提高效率。分化和融合是不断的演化和互吸收转化的,不过核心的东西我想还是不会有太大变化。
观点
1.继续分化(领域、行业、技术栈)
2.继续融合(端技术、Web全栈技术、人工智能与端技术)
3.核心不变(计算机科学本质、软件工程思想与实践、程序员职业素养)
1. 继续分化
领域
前端领域会继续分化,例如阿里内部的前端就已经有中后台、图形、端技术、泛Node、开发者服务5个大方向了,每个大方向也会细分,举一些例子:
1.中后台:有云控制台、信息&资产管理平台、内部研发&项目管理平台、人工智能&机器学习平台、数据研发分析平台,企业内部信息平台等。具体产品如阿里云控制台、ERP、PAI、DeepInsight、阿里内外、Basecamp等。
2.图形:有基础图形库、3D图形、数据可视化、流程图等。具体产品如G2、DataV、阿里云城市大脑、滴滴智能交通调度图、双十一大屏等。
3.端技术:有移动端(iOS、Android、MobileWeb、PWA、小程序)、PC端(客户端、Web端)、触屏电脑、各种监控大屏、智能手表手环,智能汽车&家居屏幕等。具体产品如淘宝支付宝的App、PC主站、移动H5站,阿里郎、VS Code、双十一大屏、UC浏览器UWP版本、各种智能手表、手环、汽车、家居屏幕等。
4.泛Node:有工具链、Web框架、IoT、客户端(Electron、NW)等。具体产品如DEF/Atool/F2E-Test(阿里前端开发者工具)、Egg.js、阿里云的IoT应用、VS Code等。
5.开发者服务:有应用开发运维平台、组件市场等。具体产品如阿里云的应用搭建平台Boat、Fusion-Design组件市场,支付宝小程序开发者工具等。
行业
2B
信息管理、财务、建筑、航天、水利、金融、制造等传统行业软件以及阿里提出的五新:新零售,新制造,新金融,新技术和新能源,新技术赋能传统行业
SAAS软件及服务:如Teambition、Trello、钉钉企业版、Basecamp、http://Growing.io
2C
移动App:如微信、微博
PC工具应用:如Google Doc
产品展示类网站:如阿里云、支付宝官网
技术栈
React(Native)
Angular(NativeScript)
Vue(Weex)
2. 继续融合
端技术
前端、客户端技术思想的融合
组件化(组件化搭建页面)
组件生命周期钩子函数(如iOS ViewController)
MV*(如MVVM设计就来源于微软客户端开发框架)
大前端的统一
虚拟DOM技术:React/ReactNative/ReactCanvas
各种移动设备内核和引擎的统一:WebKit/V8
Web技术文档的统一:Mozilla Web Docs
Web全栈技术
前端、后端技术思想的融合
MV*(如前端的第一个MVC框架Backbone.js就来自于Ruby on Rails开发者)
AOP、依赖注入(Angular)
GraphQL(SQL)
IndexedDB(Database)
人工智能与端技术
人工智能、前端技术的融合
端是最终触达用户的节点
端数据采集->后端机器学习、数据分析->智能推荐呈现
物联网、前端技术的融合
智能家居/汽车/工业设备可能是有屏幕的,同时可以基于如JerryScript这样的JS执行引擎使用Node.js开发联网应用
3. 核心不变
计算机科学本质/软件工程思想与实践/程序员职业素养。
计算机科学基础:如基本的操作系统概念和计算机组成原理,算法和数据结构基础等等。
软件工程思想与实践:如软件开发模式,设计模式,架构思维,自动化思维,单元测试集成测试,UML等等。
程序员职业素养:如对代码整洁和可读性的追求,对软件开发的热情,对编程技艺的自我提升等等。
历史回顾
回顾过前端的演化,主要参见最底下的相关资源,下图简要回顾一下95年以来软件开发和前端历史:
前端的未来
那些生存空间越来越小的产业
1.小规模移动App:移动App市场被一些巨头把持,小规模App生存空间越来越小
2.PC信息导航类网站(网址、购物、论坛、生活):现在移动优先,而且有智能推荐,并且是强社交
无界面交互
Web前端能做一些事,主要是大前端的范畴
1.会话式界面(视频语音会话、语音搜索:WebRTC,开源语音库:Common Voice)
2.感官式界面(视觉:WebAR/WebVR)
3.无界面,未来会有大量IoT设备(IoT有自己的通信协议和规范,前端的工作是在用户看不见的后台)
富界面交互
大量工作需要前端来做:
1.日常办公软件(复杂应用,并且慢慢从桌面程序演化为Web):Office、Email、文档管理、产品设计、项目管理、代码编辑器
2.大数据/AI配套软件(复杂应用,并且慢慢从桌面程序演化为Web):需要大量的后台系统来做数据分析/机器学习
3.播放器/游戏:H5代替Flash,如Web Audio、Web Video、Canvas
4.容器/DSL/内核/小程序:支付宝/微信/钉钉容器,内核(也就是UC、QQ浏览器内核),及其自定义DSL(如果将来手机的底层能力都可以上浮到小程序,很有想象空间)
5.产品信息展示类网站(炫酷应用):各种智能设备官网、大企业官网
未来在哪里?
回顾观点
1.继续分化(领域细分、行业细分、技术栈细分)
2.继续融合(端技术融合、Web全栈、人工智能与端技术的融合)
3.核心不变(计算机科学本质、软件工程思想与实践、程序员职业素养)
一些建议
1.关心人工智能的发展,思考TA在前端领域可能产生的应用场景
视觉稿自动生成代码
根据用户使用习惯自动排出最符合该用户习惯的界面
收集用户数据在前端实时做学习和分析,如deeplearn.js
2.相信前端的未来,Web的力量
WebKit
V8
Flexbox:Yoga
3.结合公司业务特点有重点的关注前端的某些方面,毕竟技术服务于业务
后记:前端的发展超出了所有人的想象力,未来肯定是难以预测的,也没有做预测的必要,我们要做的还是踏实做好眼前的事情,“过往不恋、当下不杂、未来不迎”,与君共勉! 如对我们团队有兴趣,可以发送简历至tao.qit@alibaba-inc.com,期待你的加入~
在你眼里,
前端工程师应如何打磨手艺?
欢迎在留言区一起交流讨论~
相关资源
Web开发这十年:http://www.infoq.com/cn/articles/web-development-ten-years
GUI应用架构十年变迁:https://segmentfault.com/a/1190000006016817
大话前端时代一:https://halfrost.com/vue_ios_modularization/
写给初学前端工程师的一封信:https://zhuanlan.zhihu.com/p/28536429
母鸡与前端工程师:http://www.ruanyifeng.com/blog/2016/07/hen-and-front-end-engineer.html
李开复人工智能预言:http://tech.sina.com.cn/it/2017-05-20/doc-ifyfkqks4361454.shtml
《无界面交互》:https://book.douban.com/subject/26947799/
前端工程师的出路在哪里? 未来前端的发展方向和岗位相关推荐
- 转: 写给想成为前端工程师的同学们 (from 360前端团队)
转自: http://www.75team.com/post/to-be-a-good-frontend-engineer.html 前端工程师是做什么的? 前端工程师是互联网时代软件产品研发 ...
- 2020 年前端工程师学习指南【全新web前端入门视频教程】
前端是个非常年轻的领域,很多前端工程师做到一定时间就会遇到职业发展瓶颈,怀疑自身能力甚至怀疑前端行业.但是在我看来,前端领域可以用一个词来形容--百废待兴,如今的前端恰恰是充满机遇和挑战的阶段,只要找 ...
- 未来编程语言的发展方向(1)
Windows操作系统一路走来历经数个版本,每个版本在给人们提供新的功能和使用体验的同时也给Windows平台的应用开发人员带来不同的挑战:在这个过程中,<Windows核心编程>一书从& ...
- 未来新一代计算机的发展方向,未来计算机的发展方向 (2)
未来计算机的发展方向 世界在进步,技术在发展,计算机越来越强大.计算机正逐步渗透到生活的各个领域,世界正逐步进入到以信息产业为主导的新经济时代,互联网.移动电话.卫星网络的发展,对人类社会将产生巨大的 ...
- 多而杂不会成为重点-丰收节贸易会:未来农业的发展方向
多而杂不会成为重点-丰收节贸易会:未来农业的发展方向 新闻中国采编网 中国新闻采编网 谋定研究中国智库网 经信研究 国研智库 国情讲坛 哲商对话 万赢信采编:"未来农业的发展方向,多而杂就不 ...
- 福禄克中国区高管:高精度和应用性是未来测试主要发展方向
与时俱进是每个企业发展永恒不变的基调,福禄克中国区业务发展经理邓文宇近日在接受飞象网记者采访时表示:"随着传统网络的转型,福禄克客户市场正在从运营商为主向企业级客户市场为主转变,而高精度和应 ...
- 未来电信业的发展方向 VOIP的中国之路
来自:http://network.chinabyte.com/268/12276268.shtml VOIP网络电话,灰色地带掩盖下的"金矿" 近来,网络电话(VOIP)绝对是国 ...
- 属于未来计算机的睡哪一个,【单选题】下面哪一个不是未来计算机的发展方向?
A. 光计算机
B. 量子计算机
C. 电子管计算机
D. 神经网络计算机...
[单选题]下面哪一个不是未来计算机的发展方向? A. 光计算机 B. 量子计算机 C. 电子管计算机 D. 神经网络计算机 更多相关问题 [填空题] 进修医学教育的对象是已完成(),并正在从事实际工作 ...
- 微软亚洲工程院院长刘震:未来机器人的发展方向以及挑战
[转] http://www.leiphone.com/news/201612/7hTD9t3v6RyKksa4.html 导语:12月23日下午,2016高工机器人年会举行闭幕式,其中微软亚洲工程院 ...
最新文章
- 1.App瘦身经验总结
- linux python指令大全,Linux常用指令
- 42表盘直径是从哪测量_万用表测量电容容量的方
- 2020 中兴java面试笔试题 (含面试题解析)
- MySQL数据库索引查询
- python风变编程是骗局吗-黑猫投诉:风变编程诱导消费涉及退款无人答复霸王条款...
- 广电行业编码传输系统调研
- 普莱费尔密码(playfair)
- subprocess.CalledProcessError: Command ‘git tag‘ returned non-zero exit status 1.(yolov5报错)
- 求职互联网技术岗应届生面试必备技巧分享
- Facebook开源的数据Mock:Memisis详解
- 在产品中,我们常说的A端/B端/C端是什么?
- 轻量化后台管理HTML设计页面
- 关联规则Apriori算法
- 安服仔10大灵魂拷问
- 一步步教你设置Word2003首字下沉
- 西邮ctf2020 web之文件包含解析
- C/C++宏中的#与##
- 【实战】——基于机器学习回归模型对广州二手房价格进行分析及模型评估
- 计算机等级考试教学论文,试论计算机等级考试与高校计算机基础教学
热门文章
- 单机redis和redisCluster集群获取所有key
- ReNamer Pro v7.3 文件批量重命名工具中文便携版
- Unity3D 鼠标拖动和旋转物体以及鼠标拖动图片
- 手机长途话费应再降!
- 数组A=array[1..100,1..100]以行序为主序存储,设每个数据元素占2个存储单元,基地址为10,则LOC[5,5]应为
- 爬虫爬取信息(python))
- php反序列化拓展攻击详解
- 常用计算机型号,常用的计算机电缆规格型号有哪些?
- 用vb.net编写的软件有哪些?
- 银行卡挂失和注销有什么区别