【原创】前端开发工程师到底是个什么物种?

当下,互联网行业发展如日中天,越来越多的传统行业开始投身互联网,越来越多的人开始了解互联网行业中的产业链关系。大势所趋,一个名谓:“互联网+”的概念诞生了,如今的互联网涉及生活的方方面面,包括购物、旅行、乘车、支付等等方面,可谓是深入人心,但这仅仅是一个概念。

(啊~~~不小心跑题了!!!)

回归正题。在互联网产业中有那么一群人,被冠以高大上的头衔,谓之:前端开发工程师,本文里指的是与网页设计相关的狭义的Web前端开发工程师。大部分人的传统观念认为工程师就是一些出类拔萃,足智多谋,神秘莫测,无所不能的“怪物”。

当然,这不能怪正常人类的认知能力,只能怪互联网自身的虚拟存在的特性。以致于前端开发工程师(当然也包括其他工程师)从事的工作通常都是存在于计算机或其他智能设备之中,很难将其实物化,无法与传统行业实物化的生产相比较,这也让前端工程师们很难向亲朋好友们解释清楚Ta的具体工作,而最终结果便是大家都觉得这是一个很神秘的组织!

那么,前端开发工程师到底是个什么物种呢?说到底,Ta们也就一群普通人,一群要靠吃饭、喝水、呼吸空气才能维持生命体征的普通人。要说清楚他们具体做的是什么工作,我们可以把他们面对的每一个网页想象成另一个地球。地球上的人(地球上的元素)需要穿衣服化妆吧?网页里的每一个元素也需要涂脂抹粉(传说中的CSS)。酒店里厨子闹别扭不做饭了,老板得告诉员工摆出公告牌:“今天歇业”吧?网络闹别扭了,网页里的数据出不来,我们也得告诉网页提醒用户:“网络故障,稍后重试”(传说中的JS)。行了,明白了吧?前端开发工程师,说白了就是一个上妆师,也是让一个网页上的元素各行其是的管理者。

仔细的朋友发现了,为什么是“上妆师”,而不是化妆师?我们知道化妆呢需要一个过程:先挑选眼线的颜色、口红、腮红,配衣服,搭裤子等等,然后才是穿衣服,穿裤子,画眼线,涂口红啥的。而在网页中,选色配搭,其实是设计师的职责,而前端开发工程师的职责只是负责把设计师配好的东西,给网页中的元素画上去,仅仅是上妆这个步骤。所以我用的是上妆师,而不是化妆师。

另外,前端开发工程师们还有一个很重要的职责。当用户在网页上触发了某些行为(点击按钮、点击链接等)的时候,前端工程师就得命令网页中的元素做出相应的反馈。(额…什么行为,什么反馈,又犯迷糊了)。举个例子吧,我们下班回家按下电灯开关,灯得亮吧?我们按开关这个动作呢就叫做行为,就好比用户在网页中点击了一个按钮,当开关按下后灯亮了,这就是反馈,就好比用户点击按钮后,页面中弹出一个方框,里面写着“先生/女士,晚上好”。而这一切的行为——响应,无疑要归功于强大的Javascript脚本语言。因此,也有很多业内人士称前端工程师:程序员。

很多互联网企业中都设有前端开发工程师的岗位,但是根据不同的公司,将前端开发工程师又有可能划分成不同的工种:CSS工程师、JS工程师,甚至后面的全栈工程师(不在本文讨论范围)。通俗的说就是:CSS工程师是只负责给网页上妆的,而JS工程师是只负责编写命令指挥页面元素有序运作的。但通常一个网页的前端需要CSS工程师和JS工程师通力合作才能完成。因此,也有不少企业不做以上划分,这就要求前端工程师们掌握更多更全面的技能。

本文首发于京东商城成都研究院公众号:

getqrcode