前端工程师的薪资之高是业界公认的事实, 但是很多人会质疑前端工程师, 认为他们并不能称为软件工程师, 也 "配不上" 高昂的报酬. 本文的作者分享了自己从一个前端菜鸟成长为一个 10 人前端团队主管的从业经历, 并表示, 前端人员的技术特性就是很值钱!
今年 5 月份, 甲骨文中国区裁员的消息登上了热搜.
image
一时间 "程序员失业" 的话题成为了无良自媒体们的狂欢.
image
image
image
可是他们却完全无视了 "N+6" 的巨额赔偿, 以及国内各大厂挥舞着钞票为甲骨文员工们开设的专场招聘会.
image
image
在甲骨文专场招聘会中, 除了甲骨文老本行的云计算工程师们, 有另外一类人程序员格外受欢迎 -- 他们就是前端工程师.
从页面仔到工程师
前端人到底经历了什么?
在成为各公司争抢的香饽饽之前, 前端在很长时间内都不受人待见, 甚至不认为他们是程序员. 以前, 前端人被称为 "页面仔", 而如今他们的起薪比 PHP,JAVA,C++ 等后端还高.
image
即便在去年互联网大环境不好的情况下, 前端求职者的平均年薪都达到了 28.4 万, 人均跳槽涨薪幅度都达到了 17% .
最近前端的火热, 使得前端们薪资涨幅极快, 1-3 岁的前端人的平均薪资达到了 13480 元, 和没有经验的应届生相比近乎翻倍.
从页面仔到工程师前端人到底经历了什么? 无他, 市场证明了前端的价值.
2017 年小程序横空出世, 更是让前端的热度达到了顶峰. 各大 App 纷纷模仿 vue 或 React 发布自己的小程序, 小程序这种新的流量变现模式深刻地影响了国内的互联网布局.
image
时至今日 JavaScript 是最流行的语言之一: GitHub 60% 的开源项目都是与 JavaScript 有关. 从苹果到安卓, 从网页到 App, 从休闲到游戏, 前端已经渗透到每一个领域.
什么是 "前端工程师"?
"前端" 是指软件的表现层或者用户界面 (UI). 前端工程师主要使用 web 技术实现 UI. 前端工程师与 Web 开发人员的主要区别在于, 前者需要构建交互式应用程序, 而后者主要构建专注于内容的网站. 如果前端工程师从事 iOS 等其他平台的开发工作, 他们可能被称为 UI 工程师或者 iOS 工程师. 如果开发过程非常重视设计, 他们也可能被称为 UX 工程师.
从我自己的经验来讲, 我坚信最优秀的前端工程师应当专注于 UI 的实施. 他们在该领域磨练自己的技艺, 并且不断学习最新的 UI 技术. 全栈工程师需要做前端工作, 非常适合在小团队中从 0 到 1 构建产品. 全栈工程师无法兼具前端工程师, 后端工程师, 可靠性工程师和数据分析师.
如今软件技术的每个细分领域都得到高度发展, 追寻技术的广度使得全栈工程师无法真正深入某个领域.
image
最显眼的工作
作为一名前端工程师, 弊端很明显.
按钮无法点击? 找前端. 搜索结果不满意? 即使是源数据的问题, 用户也认为是前端的错. 用户只会上报那些他们看到的错误. 前端工程师开发的东西就是被用户所见的, 因此一切都是前端的错. 作为前端工程师, 很难向用户解释清楚. 用户不关心问题是否与数据或者 API 服务有关, 他们只知道在浏览器中搜索苹果, 那么搜索结果就应该是苹果的照片.
软件工程师最主要的时间不是用来写代码, 这可能会让你非常吃惊. 实际上, 他们把更多的精力花在了沟通上. 前端工程师是离用户最近的开发人员, 他们往往是最能把握用户需求的人.
UI 实现并非易事
具有良好 UI 效果的产品能够更容易获得用户的信任. 信任度会直接转化为收入, 网站页面的加载时间每增加一秒就会丢失 10% 的用户.
前端工程师竭尽全力对加载时间进行毫秒级的缩减, 就像波音公司的工程师减轻飞机重量一样. 例如, Stripe Billing 的主页在移动 3G 网络下的加载时间不到 1 秒. 下载到你设备中的数据包比谷歌主页的还小, 它是出了名的轻量级网站. 那么, 它是如何在页面中嵌入高分辨率视频的呢?
当你仔细观察开发人员工具时, 你会看到 "视频" 只是简单的 html, 网站将它们精心组合在一起并使用 CSS 进行动画处理. HTML 和 CSS 比视频轻量级得多, 因为它们只是告诉浏览器如何呈现 UI 的文本指令. 无论屏幕尺度分辨率如何, 该技术都可以呈现很好的效果. 即使放大界面, 视频依然很清晰. 这项工程能够提供很好的用户体验.
性能只是优秀 UI 效果的众多方面之一.
用户在移动设备上逗留的时间最长, 那么如何在移动设备上提供更好的 UI 效果呢? 前端工程师可以针对 4 种尺寸的 iPhone 和数百种尺寸的 Android 手机适配 UI, 而无需为每种尺寸的设备构建单独的 UI. 对于中国的 14 亿用户怎么办呢? 前端工程师可以构建国际化框架, 以便翻译人员可以轻松将应用程序翻译成其他语言. 想要具有包容性并遵守 ADA 可访问性标准吗? 前端工程师可以让用户通过键盘和屏幕阅读器访问整个应用程序. 应用程序的众多受众和环境使前端工程师的工作变得困难. 然而学校并没有教授这些技能, 前端工程师不得不持续学习, 用最新的技术来应对不断变化的平台.
image
前端人员不仅仅是工程师
一致性是优秀 UI 的另一个重要方面. 谁在乎一个按钮边框是 1 像素, 而另一个按钮边框是 2 像素? 我经常会和朋友们一起讨论这个问题, 不论他们是工程师与否. 我的导师 Charles d'Harcourt 说得最好 -- 当用户发现界面元素没有满足他们的预期时, 他们就会失去对该产品的信任. 他在许多明星产品上一次又一次地强调这一点, 比如 WebObject,iTunes 和 Chrome.
前端工程师不仅仅是工程师, 他们利用自己的设计直觉和用户共鸣提升用户界面的人性化. 在我看来, 这一点将使那些杰出的前端工程师从普通工程师中脱颖而出. 而在日常工作中, 前端工程师需要与产品经理和设计师进行良好协作, 需要平衡需求和实施难度, 以满足用户需求, 并以最少的审核周期解决错误和不一致问题.
设计直觉和用户共鸣很难量化. 对于我曾经合作过的许多优秀的前端工程师来说, 这两者已经深入他们的灵魂. 前端工程师接受的教育往往是跨学科的. 他们喜欢颠覆已经被精心设计的产品. 他们还有充满创造性和艺术性的爱好. 有些学校, 比如斯坦福大学, 会教授艺术与工程的融合. 关于设计直觉和用户共鸣的教授方法, 我很乐意听取大家的意见.
高效前端团队造价高昂
尽管我热爱前端工作, 但我并不认为仅仅靠一个优秀的 UI 就可以让产品变得伟大. 让产品变得伟大的核心因素在于: 真正解决用户的问题. Craigslist 就是一个典型的例子, 它采用极其简单的以文本为中心的 UI.
如果你想打造一支优秀的团队, 那么首先得问问自己, 你是否希望并且能够根据 UI 区分你的业务.
像所有最优秀的其他工程师一样, 优秀的前端工程师只对伟大的产品或者拥有前端大牛的团队感兴趣. 那么, 你是否拥有优秀的 UI 产品, 是否拥有前端大牛? Stripe 已经拥有了优秀的 UI, 并且其前端团队非常强大, 因此它才能吸引 FANG 公司以及各大名校的前端人才.
如果你雇用最优秀的人才并为他们支付行业最高的薪酬, 那么这些优秀人才为你的业务带来的收益可能会远远超过你在人才方面的支出.--Netflix 首席人才官 Patty McCord, 关于如何招聘
前端人的职场生存之道
前端的火热使得很多人跃跃欲试, 但要想从千军万马的程序员中脱颖而出, 过硬的技术是必须的.
前端的工具和框架种类繁多, 但万变不离其宗, 企业对于人才的技术要求, 本质上还是要回归到 HTML,CSS 和 JS 三板斧.
image
除此之外, 一个合格的前端开发, 需要在熟悉 Web 开发的基础上, 至少熟练掌握 Vue,React 或 Angular JS 等主流框架中的一门.
扎实的基本功加上快速学习能力, 是前端求职者在红利见顶市场的生存之道.
在入门不足三年的初级前端工程师中, 一部分人感觉前端是一个很有前途的职业, 甚至一部分前端同学透露其年薪已经 30W 以上了.
结语
打造一个高效的前端团队需要提供充满竞争力的薪酬. 尽管也有例外, 比如那个热衷和你一起做开源项目的高手可能期望薪酬只有 Facebook 的一半. 当然也有一些优秀的前端工程师并不要求硅谷级别的待遇. 但这毕竟是小概率事件, 为前端工程师设置过低的薪酬存在风险. 因为员工流动成本很高, 不能顺利完成产品的风险将导致更多问题, 其消耗的预算也更多, 有些得不偿失.
想了解更多前端知识欢迎评论区留言或私信我!
来源: http://www.jianshu.com/p/a74da069a76b