0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

前端工程师要做哪些事情

工程师人生 来源:工程师吴畏 2019-01-18 16:36 次阅读

前端工程师的英文名为front-end engineer,简称FE。

现在意义上的前端(并非只制作网页),国内最早开始有大规模招聘岗位应该是2011年左右的事情吧,在此之前,FE的工作基本都是由服务端工程师包办的,或者是由设计师来产出HTML页面。那么,是什么样的原因催生出了FE这一职位呢?

用户体验的高需求

随着web2.0概念的普及以及web3.0的提出,用户成为互联网的主要生产者,网页所承载的功能越来越多。

(1)企业的「用户体验」诉求很强烈。这个很容易就能理解,如果你的产品看上去就像个钓鱼网站而且还特别难用,就会有一部分用户离你而去。非互联网企业呢?也会面临这样的情况,你花了很大的功夫优化数据库,优化服务器负载,你的客户却很难感知到你的努力。你的系统界面还是八九十年代的风格,客户的第一感觉就是这系统不行,不买你的帐。相反,如果你花一点时间做一套崭新风格的界面出来,客户的第一感觉就是这个系统好炫酷,技术含量很高。不要小看这个第一感觉,对于外行人来说,第一感觉往往起到了决定作用。好多企业都意识到了这一点,所以对用户体验的诉求就上去了。

(2)现在的用户也都很挑剔。毕竟他们使用的产品一个比一个炫,都被惯坏了,你的产品稍有点不爽的地方,就上微博去给你宣传。

前端工程师是用户体验的把控者,在产品经理构想出交互原型,设计师设计出交互细节后,FE就用他的双手一行行敲出这些代码。他敲出的每一个按钮,每一张图片,都被成千上万的用户点击着,FE与用户可以说是“零距离接触”。作为产品交互的实现者,除了HTML、CSS这两门语言要精通外,对前端要求更高的其实是非技术因素。

什么是用户体验?

比如页面上有一个超链接,字体比较小的情况下,用户可能会一下点不中,因为链接的可点击区域是紧贴着文字边缘的。前端可以通过很简单的方法来扩大这个链接的可点击区域,使得用户更容易点中。这就是用户体验

前端工程师应具备的特点

(1)FE需要有一点强迫症。这体现在对任何瑕疵的不容忍。比如采用技术手段让页面的滚动更平滑些,减少页面的视觉抖动,像素级别的定位校准。当用户触碰的内容是一串非电话号码的数字时,不要让手机自动调出拨号功能,等等。很多细节是产品经理无法感知的,因为这些都是很零散的技术手段,只有靠FE来点滴积累。再有极致者,追求让页面的响应时间再减少几个毫秒,让你的手机少耗几KB流量,少耗一些电量。这些甚至连用户都无法感知,但是当你的用户有百万级别或者千万级别,这样做的价值就显现出来了。

(2)前端工程师需要是一个心思细腻之人,需要对美有所领悟,需要执着地追求完美,需要有品味,有思想,有大局观。

(3)前端领域的技术更新相对于其他领域要快很多,原因大概也是因为这个领域离用户最近吧。有一些新的技术甚至是颠覆性的,前端工程师必须要跟上时代的步伐,否则你开发出的产品在体验上就落后别人一截了。

(4)前端工程师需要有较高的沟通能力和理解能力。我们经常开玩笑说“设计师活在童话故事里”,因为有时候他们设计的页面根本不符合常规,无法实现。这个时候你就需要耐心的给设计MM讲原理、讲原因,并且告诉她设计需要遵循哪些基本规范。对于产品经理的思想,你要能把握到位,你得理解他比划了半天到底是想要做什么。与后端工程师打交道的时候,你又得马上化身编程达人,跟他们聊数据类型,聊面向对象,聊设计模式。

前端工程师要做的事情

(1)javascript就是FE需要掌握的编程语言,应该通晓这门语言的优势和缺点,掌握各种编程思想、开发模式。利用各种技巧实现交互越来越丰富的界面,同时还要与服务端的工程师沟通,调试接口,完成:页面展示——响应用户操作——提交用户数据——反馈操作结果这一系列流程。从这一点上,要求前端工程师要有软件开发的基础,了解计算机的基本原理,网络通信的基本原理

(2)FE的工作内容已不再是「写写页面」这么简单。随着前端代码的规模越来越大,逐渐涌现出了模块化开发、MVC、MVVM等开发模式。团队规模也从原来的单兵作战演变为团队开发。

所以,一个高级前端工程师,要有架构能力,这个架构能力包括不限于:

1.对现有优秀框架的了解与整合使用

2.根据项目的业务特点构建出合适的开发模式

3.设计前端测试方案保证代码质量

4.用工程化方案组织起团队的开发流程

前端的趋势

物联网的市场越来越热了,手机是物联网体系中的一个关键节点。前端工程师的战场已不再是单纯的浏览器,将来会覆盖到各种「端设备」上。得益于javascript语言的灵活性,现在用javascript已经可以开发windows应用、ios应用、android应用,可以编写智能电视上的应用。将来,或许是VR、可穿戴设备、智能家电。这是前端可以向前延伸的方向。

另一方面,由于nodejs的横空出世,javascript这门语言竟然神奇的有了服务端的能力。之前用java、PHP做的事情,js同样可以实现了。本来前端阵营中就有一批人是从后端转过来的,有服务端开发的基础,得了nodejs这一利器,再加上现在市场的需求,快出产品,敏捷开发,前端工程师向后延伸的路线宽广而明亮。事实上,全栈工程师的概念在前年就被提出,BAT这样的业界领头羊早已用nodejs做一些基础设施的建设,而很多小而快的创业公司,也在用nodejs进行快速迭代开发。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 工程师
    +关注

    关注

    59

    文章

    1569

    浏览量

    68507
  • 前端
    +关注

    关注

    1

    文章

    192

    浏览量

    17749
收藏 人收藏

    评论

    相关推荐

    工程师应该掌握的几种正确电容放电姿势

    又有工程师被电伤了! 看来这是搞电子工程师,尤其是平时好奇心太强搞拆解的或搞开关电源工程师的家常便饭吧! 拿一AC-DC开关电源板来举例 在开关电源220V输入前端,都会有一个很大的滤
    的头像 发表于 12-04 09:36 475次阅读
    <b class='flag-5'>工程师</b>应该掌握的几种正确电容放电姿势

    正是拼的年纪|65岁电子工程师上班VLOG #65岁退休 #电子工程师 #搞笑 #上班vlog

    电子工程师
    安泰小课堂
    发布于 :2024年07月25日 11:31:02

    用二创,1:1复刻工程师的职场现状

    工程师
    扬兴科技
    发布于 :2024年07月19日 18:30:07

    嵌入式软件工程师和硬件工程师的区别?

    嵌入式软件工程师和硬件工程师的区别? 嵌入式软件工程师 嵌入式软件工程师是软件开发领域中的一种专业工程师,他们主要负责设计和开发嵌入式软件,
    发表于 05-16 11:00

    大厂电子工程师常见面试题#电子工程师 #硬件工程师 #电路知识 #面试题

    电子工程师电路
    安泰小课堂
    发布于 :2024年04月30日 17:33:15

    企业老工程师和高校老师有啥区别

    电子工程师硬件
    电子发烧友网官方
    发布于 :2024年02月28日 17:50:00

    如何搞崩一个硬件工程师心态?试试对ta说这几句

    硬件工程师
    扬兴科技
    发布于 :2024年02月20日 18:05:49

    为什么要做自动化测试?测试工程师存在的必然性

    软件测试这个过程的实施主体就是测试工程师。那么多少个测试工程师比较合适呢,或者换句话说如上的事情必须要测试工程师完成吗?
    的头像 发表于 01-16 11:32 920次阅读