`
葱白的天蓝
  • 浏览: 842 次
文章分类
社区版块
存档分类
最新评论

我们真的缺前端工程师吗?

阅读更多
这两天在好几个地方都看到了一篇关于为什么整个互联网行业都缺前端工程师?的文章,文章本身是去年的,中心思想是:其实我们并不缺前端工程师,我们缺的是优秀的前端工程师。我还是比较同意作者观点的,不过略有意犹未尽的感觉。于是我结合自己的经验,也来聊一下这个话题:我们真的缺前端工程师吗?
These walls are kind of funny like that. First you hate them, then you get used to them.Enough time passed, get so you depend on them. That’s institutionalising.
传统软件公司划分开发者的方式下,在前端部门的程序员永远不会去读缓存数据部分的代码,设计师也不太可能去和开发坐在一起,开发也不知道软件最终软件会以何种方式部署在服务器上。
什么是“前端”工程师
我在招聘广告和办公室的一些对话中,听到了一个新的角色:UI Dev,事实上我在知乎上还回答过一个关于ThoughtWorks的UI Dev的问题。简而言之,UI Dev可以快速的把设计师的作品实现为HTML/CSS/JavaScript代码。
如果按照这个标准,我觉得UI Dev对自己的要求太低了。毕竟要学会HTML/CSS实现mockup并不困难,但是成为一名前端工程师则需要掌握更多的知识:
会用PS来进行图片的处理(比如切图,微调等)
用HTML/CSS实现mockup(可能还有SASS/LESS等工具)
熟悉JavaScript(比如前端的MVVM框架,客户端模板)
前端开发的工作流程(代码检查,精简化,模块化CSS,LiveReload,调试)
编写测试(静态检查,单元测试)
跨浏览器、跨设备的解决方法(不同分辨率,不同厂商)
会根据项目的特点选择不同的前端技术栈(移动端,Web站点,响应式设计等)
在有了基础的HTML/CSS/JS技能之后,你会尝试做的更好:
如何更高效的操作DOM
如何将CSS写的更加清晰易懂
如何编写更加易于维护的代码(更有意义的单元测试)
如何组织大型的项目结构,模块化,组件化等等
这些要求事实上已经不那么容易做到了。它可能会花费你2到3年时间来完全掌握。但是2到3年之后,即便你已经成为了一个“合格的”前端工程师,这也还远远不够。在现实世界中,一个软件产品除了前端,还有非常广阔的空间,还有很多有趣的东西值得学习:
HTTP协议本身(缓存,鉴权)
Web容器/HTTP服务器如何工作
无状态的Web应用的工作原理(如何让网站正确地运行在集群上)
动态,静态内容如何分离部署(反向代理配置)
安全机制如何配置
监控机制如何配置
有了这些,也算是有点端到端的意思了。这时你也已经不是一个“纯前端”工程师了,系统中的大部分问题你都可以搞定,不过日常工作中可能更多的职责还是做前端的开发。但是这些还不够,软件除了交付之外,还有一些非功能性的需求:
端到端测试(UI测试,比如selenium server/web driver)
devops(比如数据库环境,测试服务器,CI服务器的自动化provision)
基本的UI设计原则(在某些页面确实的情况下,根据系统的已有UI做设计)
数据库性能优化
性能测试
不过这些还只是我对于Web开发这个领域的总结。其他领域,比如大数据,机器学习,GIS,图像/视频处理等等。
这时候,你才能算是一个严格意义上的“前端”工程师。不从系统的角度来思考,不真正做一些后端开发/配置,并不能算是前端工程师,或者可以被称为偏前端工程师(partial frontend developer)。但是即使称为上边这样的“前端工程师”,我想这离一个优秀的工程师还是有很大差距的。
我跟一位设计师同事聊过这个问题:
Dev眼中的世界是这样的,从墙上(物理的或者电子的)上找到一些卡片(story卡或者需求文档说明书),然后撸袖子开干,干的过程中有很多自以为是的理解,同样有一些自以为是的牛逼实践(TDD啊,自动化啊),最后功能做完,大功告成,然后接着做下一个卡片。传统的Dev,或者苦逼屌丝程序员的世界就是这样的:需求从哪儿来,不知道;做完之后谁来负责质量,不知道;最终上线的时候怎么发布,不知道;线上有问题了怎么办,不知道。
以及
在ThoughtWorks,Dev的工作有了很大的变化,一个最明显的变化是边界的模糊。比如很多项目都不设QA角色,所有人都对质量负责,都做测试,也有OPs角色,但是大部分非生产环境都是Dev自己发布。也就是说,软件/项目生命周期中的大部分实践我们都能涉足,而且可以带来改进,提升效率。但是这只是往下游(从开发,到测试,到部署,到运维),反过来看上游,比如需求从哪儿来,Dev还是不知道。这毫无疑问是一个令人沮丧的事实,因为这需求的产生才是核心,也就是我昨天跟你聊的:一个idea如何变成一个可视化的原型,然后进一步演进为项目原型?
开发工作不应该仅仅局限在编码上,作为开发者/工程师,应该尽可能的多了解一些上下文:比如我们的项目最终是给谁用的,需求从何而来,项目是如何部署在线上的等等。
分享到:
评论

相关推荐

    前端工程师个人简介模板

    在IT行业中,前端工程师是构建互联网应用不可或缺的角色。他们负责将设计概念转化为用户可以在浏览器中交互的实际页面。本文将深入探讨“前端工程师个人简介模板”的相关知识点,以及它如何为网页模版设计提供帮助。...

    网易高级前端工程师跟着他每周重点攻克一个前端面试重难点

    在前端开发领域,尤其是对于那些寻求晋升为高级前端工程师的人来说,深入理解和掌握各种技术是至关重要的。"网易高级前端工程师跟着他每周重点攻克一个前端面试重难点" 的项目旨在帮助开发者系统地提升自己的技能,...

    前端工程师面试题库

    在前端工程师的面试中,考察的知识点广泛而深入,涵盖了CSS、HTML、JavaScript以及HTTP协议和RFC规范等核心领域。这些技术是构建现代Web应用程序的基础,对于任何希望在这个行业中取得成功的开发者来说,都是必不可...

    关于前端工程(如果你的网站是一个商业性网站,那么前端决定了这个网站的价值)

    前端工程师是互联网产品的视觉创造者和交互设计师,他们负责将设计师的概念转化为实际的网页或应用程序,使用户能够通过浏览器或移动设备进行互动。前端工作涉及到HTML、CSS和JavaScript等核心技术,这三者构成了...

    BAT一流前端工程师学习线路

    在IT行业中,前端工程师是构建互联网产品不可或缺的角色。BAT(百度、阿里巴巴、腾讯)作为中国互联网的巨头,其对前端工程师的要求自然非常高。本学习线路旨在帮助有志于成为一流前端工程师的人士,通过系统化的...

    前端工程师个人简历模板 前端模板 HTML模板

    在IT行业中,前端工程师是构建互联网应用不可或缺的角色,他们负责将设计转化为用户可交互的网页。这份"前端工程师个人简历模板"是为那些寻求展示自己技能和经验的前端开发者量身定制的。模板采用HTML(超文本标记...

    【互联网行业】前端工程师详解前端开发人员的职业规划和自身定位.docx

    【互联网行业】前端工程师详解前端开发人员的职业规划和自身定位 前端开发是互联网行业中不可或缺的一部分,虽然有时会面临挑战,但其未来发展前景广阔。对于前端开发者来说,理解职业规划和自身定位至关重要。 ...

    Web前端工程师个人简历.docx

    【Web前端工程师】是互联网行业中不可或缺的角色,他们主要负责构建用户界面,确保网站或应用程序的交互性和用户体验。本文将从教育背景、技能掌握、工作经验和个人特质等方面深入探讨Web前端工程师的知识点。 首先...

    高级前端工程师学习路线(完整版).rar

    在IT行业中,前端工程师是构建互联网应用不可或缺的角色,他们负责用户界面的设计、交互以及动态功能的实现。本压缩包“高级前端工程师学习路线(完整版).rar”提供了一个全面的学习路径,旨在帮助开发者从入门到...

    前端开发工程师取色小工具

    标题中的“前端开发工程师取色小工具”是一个专为前端开发者和UI设计师设计的应用程序,它的主要功能是对屏幕或页面中的颜色进行识别,并提供颜色的精确数值,以便于在开发过程中使用。这样的工具极大地提高了工作...

    前端工程师必看的一百本书籍

    在IT行业中,前端工程师是构建Web应用程序不可或缺的角色,他们负责创建用户可以互动并看到的网站部分。为了成为一个优秀的前端开发者,持续学习和掌握最新的技术、工具和最佳实践至关重要。"前端工程师必看的一百本...

    天津前端培训如何成为一名合格的前端工程师共3页.pdf.z

    要成为一名合格的前端工程师,不仅需要扎实的技术基础,还需要持续学习和适应快速变化的技术环境。天津作为中国的重要城市,也有丰富的前端培训资源来帮助开发者提升技能。 首先,前端工程师的核心职责是创建用户在...

    大气前端工程师web简历网站模板-大气 前端 工程师 简历 web简历 博客 个人主页 blog ui设计.rar

    该压缩包文件“大气前端工程师web简历网站模板-大气 前端 工程师 简历 web简历 博客 个人主页 blog ui设计.rar”包含了一个专门为前端工程师设计的网页简历模板,旨在帮助他们展示自己的专业技能、项目经验和个人...

    web前端开发工程师必备

    【标题】:“Web前端开发工程师必备” 在Web前端开发领域,工程师们经常需要面对各种浏览器兼容性问题,尤其是在处理老旧的Internet Explorer时。为了解决这个问题,一款名为“SuperPreviewIE”的工具应运而生,它...

    初级WEB前端工程师视频教程.zip

    在本套初级WEB前端工程师视频教程中,您将系统学习并掌握成为一名合格的前端开发工程师所需的基础知识和技能。这是一条通往Web开发世界的入门之路,涵盖了从理论基础到实践应用的广泛内容,旨在帮助您建立坚实的前端...

    前端工程师简历-多年工作经验-多彩商务.docx

    【部分内容】中,我们可以看到该前端工程师有丰富的市场营销背景,包括在不同公司担任市场推广专员的角色,涉及团队管理、电商产品管理和电子商务项目规划。此外,他们参与了“石市通客户端”的开发,这是一个类似58...

    前端工程师-web前端开发必备工具推荐.docx

    这些工具的使用,可以帮助前端工程师更有效地定位和解决问题,提升代码质量,同时也能加快开发速度。在前端开发过程中,掌握这些工具的使用方法和技巧,是成为优秀前端工程师的重要一步。不断探索和学习新的工具,...

    08、前端开发工程师【3年】简历模版.docx

    【前端工程师】是互联网行业中负责构建用户界面的关键角色,他们将设计稿转化为可交互的网页,确保用户体验...同时,对用户体验的持续关注和优化,以及与后端、设计等团队的有效协作,也是前端工程师不可或缺的素质。

    [高性能网站建设指南——前端工程师技能精粹(英文原版)].pdf

    总的来说,《高性能网站建设指南》是一本深度探讨前端性能优化的权威著作,对于任何想要提升网站性能的前端工程师来说,都是一本不可或缺的参考书。通过学习和应用书中的原则,开发者能够创建出更快、更流畅的用户...

Global site tag (gtag.js) - Google Analytics