前端工程师的未来

今天被问了一个问题:前端工程师的定位及未来的出路在哪里?既然你想做前端你觉得它的未来在哪里?当时一下被问住了,之所以说自己想做前端可能有以下几个原因:1.喜欢JS,它灵活强大,能方便的做很多事情;2.之前看了园子里几篇很不错的前端文章,前端工程师入门更易(精通确实很难),好的前端相对稀缺;3.前端更容易独立做点东西,未来更多的是可以借助其它平台开发,比如基于微信、微博、百度云开放平台等,在他们基础上加自己的前端能快速的形成解决某种需要的产品(没有实际的调研过,不知道这个想法是否正确)。于是又上网搜集各种资料主要是前端工程师的前景和知识体系及成长之路,觉得自己比较认同的摘录汇聚一下。

贺师俊Web开发者

我在另一个答案里提到过我认为Web前端的职业前景不容乐观。这里暂时没有时间展开。先说个有趣的事情,国内Web前端的标杆人物克军(豆瓣)和玉伯(阿里)写了个“对联”如下:前端研究,研究个屁;前端设计,设计个鸟。就算是调侃吧,但也可见业内顶尖人士对此职业在纵深上的担忧。

另外说待遇的话,当然也有非常高的,玉伯在其他答案里提到过有超50万年薪甚至近百万的。不过我个人对这些高薪同学在公司的实际角色有所保留。总的来说,一般理解上的前端工程师在各互联网公司的职级相比其他技术岗位或者UED其他岗位我认为不够高。造成这样情况的有不少是历史原因。

 

 

张克军豆瓣前端工程师

 

第一大挑战还是兼容性。虽然微软已经决定将ie6安乐死,ie9/10看起来相当标准。向后兼容似乎轻松了,但向前兼容又开始越来越让人头疼了。打算搞一个web app,你会发现android上的webkit是多么混乱。在桌面浏览器上总是有css hack可以摆平,但在mobile上只能考虑退化方案。从兼容浏览器(外加套壳的浏览器)到兼容设备,实际上兼容性变得更复杂了。
第二大挑战是交互的复杂度。和目前UI/交互的要求相比浏览器引擎给我们接囗的确太低级了。于是今年前端技术的热门话题是各种javascript, css的预处理器、各种mvc框架、和微框架的讨论。
第三大挑战是代码可维护性。复杂度的提升直接影响代码的维护性。JS/CSS/HTML代码生命周期越来越长,也就越来越需要从代码质量、架构和工具上保证它们的可维护性。代码的历史问题是永远的痛点。
第四大挑战是性能。
第五大挑战是个人成长。

 

李秉骏web前端开发者/创业者/正在经历大学的学生

说说我的感觉吧。我现在就是一个前端工程师。我觉得前景是不错的,不然我就不会选择这样的一个切入点。那么下面我来说说具体是为什么吧。
1,明白前端干什么。以前就可能是仅仅地切图,把设计变成代码。但是现在随着webapp兴起,以及利用web构建富客户端,包括更多交互丰富的离线应用,对于前端的挑战也越来越大,所以需要更硬底子的功夫。包括你多浏览器原理,http协议,还有js,css等最基础的认识等。所以要求不低。
2,明白你选择该职业的目的。有人说做ceo最好从产品经理入手。其实未必,大部分ceo,尤其是成功的,都从技术入手。前端开发,从维度上跨越了,设计,交互,数据交互,后台。因此是一个桥梁的作用,在未来需要了解的层面也多,地位不亚于任何一方。因此可以让你知道更多。
3,切入点好。我目前虽然还是实习生,但是我并非计算机专业,但是这不会妨碍我。因为目前前端职业要的是你有硬功夫,而且 谁强谁弱,一看代码组织,风格,一目了然

 

柴春燕前端开发工程师

 

Web前端工程师的职业生涯,我觉得可以分为三步,初级前端开发工程师- > 资深前端工程师- > 前端架构师。每种职责都有其不同的角色和分工。
前端开发工程师(或者说“网页制作”、“网页制作工程师”、“前端制作工程师”、“网站重构工程师”),这样的一个职位的主要职责是与交互设计师、视觉设计师协作,根据设计图用HTML和CSS完成页面制作。同时,在此基础之上,对完成的页面进行维护和对网站前端性能做相应的优化。
资深前端开发工程师,相比较“前端开发工程师”而言,更加资深一些,当然其工作的职责也会相应的更加大一些。一般而言,资深前端开发工程师需要使用JavaScript或者ActionScript来编写和封装具有良好性能的前端交互组件,同时还要对Web项目的前端实现方案提供专业指导和监督并在日常工作之中对新人及相关开发人员进行前端技能的培训和指导。另外,还要跟踪研究前端技术,设计并实施全网前端优化。
对于前端架构师,更多意义上说像是一个管理的岗位,但是其职责要求却不仅只是管理。前端架构师需要带领组员实现全网的前端框架和优化,还要创建前端的相应标准和规范,并通过孜孜不倦的布道来完善并推广和应用自己的标准和框架。同时,还要站在全局的角色为整个网站的信息架构和技术选型提供专业意见和方案。

林灿斌C/Web前后端/数据库/信息安全/移动客户端…

前端是负责输出到 客户端的页面的编写,为了提升用户体验(很滥的词不过都这么说)。
Web前端工程师一般都要求要能熟练使用HTML、CSS、JavaScript。题主既然问到了AJAX这样的问题,那我想题主甚至可能对JavaScript都不太熟悉,那么就不能称为Web前端工程师了,只掌握了HTML和CSS的话,只能叫 网页美工了。

不能打架,不能打架。AJAX的好处都有啥?谁说对了就给他!
下面我来说下AJAX的重要性:
1、 节省带宽和运算压力。像navibar、footer之类的,各个页面基本一致的,大量重复。使用AJAX局部刷新需要更新的content,节省服务器带宽和运算压力,在网站PV足够大的情况下,会有一定的提速左右。特别是一个长帖子/问题/博文,发布回帖/答案/评论时,使用AJAX submit数据,对比用form submit,速度和对服务器的压力,差距可以以倍来计算。
2、 用户体验,首先由于上面的原因,使用AJAX获取的数据会更少,而且不需要二次渲染navibar、footer之类的重复元素,也会 一些。另外网页从一个跳转到另一个的时候,会整个闪成白色再重新载入新的页面,用户体验不好。像知乎这样,我可以非常方便地修改答案,体验就很不错。
3、看到知乎这个保存草稿的功能了吗?非常实用的功能,前段不用AJAX做你等着后端拿着form submit去实现吗?那得是多蛋疼的体验。
当然,也有一些不适用的场景,例如需要做SEO优化的场景。

 

 

waterwu08年至今,专注前端及可视化

 

10年时我写过篇BLOG有说起过这个  水想前端(一):鸟瞰 。

在咱前端的头上,有三座大山: 设计、后台、兼容性
一前一后都不如别人专业,而兼容性问题,看得出问题、却看不出水平。不禁仰天长叹:我勒个去!
从这点上来看,前端挺像秘书,做的是润滑剂,但却有点吃力不讨好。

---

而从现在看来,前端的发展道路太多太多了,他是个发展太快的领域,所以现在呈现出一片混乱的局势——这同时也是前端的机遇,乱世总能做更多事情的。

在我看来,这一片混乱的局势才是挑战的主要来源。

面临的挑战有:

  1. 来自多终端的挑战:内容型网页的响应式设计。单纯IE与标准浏览器的角逐已经开始告一段落,开始进入更混乱的手机/平板/桌面三分天下的局势。页面重构童鞋们任重道远。
  2. 功能与开发效率的平衡:前端开始在非大众产品上崭露头角,尤其是后台管理系统、组织信息反馈系统等。这时我才不管什么low Level API呢,君不见ExtJS, YUIjs等哥斯拉久盛不衰?这时前端童鞋面临的往往是前后端甚至包括数据层面通吃的局面,这何尝不是挑战。(我一直觉得,这方面才是最适合后端转前端的路线)
  3. 混合式APP的大潮:不管是桌面端还是移动端,都越来越多软件/应用开始使用混合式的开发,从而在保证核心功能体验的同时、提升总体的开发效率。(Hybrid App,反正我的理解是原生代码与WebView混合)
  4. 作为可互动终端:使得信息传达能更具体化、可视化、互动化。最典型的就是数据可视化方面的挑战(当然我觉得不止于此)。d3js的团队从protovis全力转入到d3js中就可见一斑:d3js更加强调可视化呈现的动画、以及即时反馈的交互能力。这在我看来也是WEB的未来之一。谁说WEB就必须是大众使用的呢?一个统一的标准总比每次都订做图形引擎来得要好。

 

张帅发现问题,解决问题,创造价值 | Web dev…

王海时 赞同

 

1. 沟通。前端工程师在项目中处于一个中间位置,对下要和后端工程师商定接口,对上要和产品、设计有良好的沟通。无论哪一个环节中出现的问题,都会在前端最先表现出来,良好的沟通可以保证尽早发现并解决这些问题。
2. 写出可维护的代码。前端三大语言html,css,javascript都是十分灵活的,写出可以工作的代码并不难,真正难的是保证代码的可维护性。代码可维护性涉及的问题包括,(html)标签语义化,标签结构化,(css) 规则体系化,组件化,(js)框架的选择,模块化,高内聚,低耦合。
3. 写出高性能的Js代码。包括字符串操作,dom操作,ajax操作。需要考虑性能问题的环节实在很多。
4. 兼容性。兼容性问题仍在拖慢前端工程师工作进度的主要问题,等ie6死掉,国产浏览器外壳质量做的好一些,情况可能会有所好转。
5. 技术更新快。前端技术更新速度十分快,html5,css3,nodejs, commonJs,按需加载,等等都是最近几年出来的。google又搞出一个Dart语言,鬼知道它会会真的把js取代了。

欧雷世界公民

你的问题描述的方式让我觉得你不想去做 ajax 等与数据操作有关的事情,但从你在其他人回答的评论中的语言又表现出你是“迫于无奈”。不知道你的真实想法到底是什么……

不过,无论是哪种,都证明你对前端工程师这一职业不了解。下面的内容(摘自 https://gist.github.com/ourai/6411507)是一名优秀的前端工程师需要掌握以及具备的,供你参考——

开发技术


软技能

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值