知乎上一位大二学生提出了这样一个问题:从事前端真的没有后端工资高吗?

今天老师在讲课时说到了以后的工作方向,然后说从工资来说,后端要比前段高,并且掌握公司核心技术的都是后端。未来想要从事前端该怎么规划发展自己的事业?

想必很多人都是这样认为:前端不如后端,因为前段比后端简单,所以前端薪资一定比后端低。

但事实上,工作中的前端和后端,薪资并没有差别很大。

一、前端方向

网站的“前端”是与用户直接交互的部分,包括你在浏览网页时接触的所有视觉内容--从字体到颜色,以及下拉菜单和侧边栏。这些视觉内容,都是由浏览器解析、处理、渲染相关 HTML、CSS、Java 文件后呈现而来。

技能与工具

前端开发,就是要创造上面提到的网站面向用户的部分背后的代码,并通过建立框架,构建沉浸性的用户体验。为了实现这个目标,开发需要熟练运用下列语言、框架、工具库:

三大语言:HTML,CSS,和 Java;
此外,掌握 jQuery 和 LESS 等工具库也很重要,它们能帮助开发者以更高效的方式编码;
很多前端开发岗也要求 Ajax 方法的使用经验,它可以帮助你使用 Java 在后台从服务器拉取数据,协助实现页面的动态加载。

打个比方,前端开发者的工作专注于“房屋”装修,而盖房子的工作由后端开发者负责。

通过一些专门的工具,前端开发者与设计师/用户体验分析师密切合作,帮助构建原型或是线框图,参与产品开发到发布的全过程。

一些前端开发者甚至能准确定位影响用户体验的特定问题,并给出建议或是代码解决方案,对产品设计带来积极影响。

在专业能力外,与其它团队协作,以理解特定目标、需求、机遇,以及高效的执行力也非常重要。

这听起来工作内容很多,但也回报丰厚。“我是一名技术人员,也是一名设计者,在数字平台上使用标记语言和代码修改视觉元素并与之互动是很自然而有趣的体验,”有八年前端开发经验的 Mikey Ilagan 说“这让我能够直接影响到用户体验,操纵应用和网站里用户所见并直接与之交互的元素,这非常棒!”

总之,前端开发者要为后端开发者搭建的“房屋”进行内部设计和装修工作。装潢风格由房屋所有者指定。Apptix 的产品市场负责人 Greg Matranga 表示:“前端开发者有时更容易为他们的工作感到振奋,因为他们有更广阔的空间发挥自己的创造力。

薪资参考

以下为在某主流互联网行业招聘网站上,搜索“前端”限定“3年及以内”经验后最先出现的4份岗位待遇信息。下文中后端、全栈薪资信息截图条件相同

二、后端方向

是什么给网站前端提供支持?数据存放在哪里?这就涉及后端内容了。网站后端包括服务器、应用还有数据库。后端开发者构建并维护这些组件,为网站提供多方面支持。

技能与工具

为了让服务器、应用、数据库能够彼此交互,后端工程师需要具有如下技能:

用于应用构建的服务器端语言:PHP, Ruby, Python, Java, .Net 等;
数据相关工具:MySQL, Oracle, SQL Server 等;
PHP框架:Zend, Symfony, CakePHP等;
版本控制工具:SVN, CVS , Git 等;
还要熟练使用 Linux 作为开发和部署环境。

后端开发者使用这些工具编写干净、可移植、具有良好文档支持的代码来创建或更新 Web 应用。但在写代码之前,他们需要与客户沟通,了解其实际需求并转化为技术目标,制定最有效且精简的方案来进行实现。

“我热爱后端开发因为我喜欢操纵数据”,资深后端开发者就职于 Wildbit 的 JP Toto 说。“现在共有和私有 API 已变成移动设备、网站以及其它互联系统交换数据的必备通道。创建对大家有用的 API 是我工作里非常鼓舞人心的部分”。

薪资参考

选择前端还是后端,不一定要看工资,还是看个人更擅长哪一方面的学习。

前端内容虽然没有后端难,但是前端技术更新很快,需要学习的频率会很高。

后端内容虽然比前端内容难,但是后端技术更为稳定。

不论学习前端还是后端,其实在软件开发中深入工作几年后,你会发现前端和后端对于你的分界线会越来越模糊。

想要高效开发,高效工作,提高团队效率,提升个人职场竞争力,大部分软件开发工程师会成为前后端都可开发的全栈开发。

Matranga 说:“开发者需要跨领域知识,有时甚至需要成为全才。”

全栈工程师,最初是6年多以前由 Facebook 带动的概念。全栈的核心,是指这批开发者能够承担包括前端、后端在内的所有功能开发任务,他们拥有一个技能全家桶。

“能够同时承担服务器端和客户端工作会为你带来更多机会,” Grovo 的全栈工程师 Federico Ulfo 说 “当然这也就意味着更多的挑战。以厨艺作类比,掌握烹饪和烘焙都需要时间与经验积累,同时掌握两者要花费更多精力。照着菜谱做谁都可以,我此处所说的是做出真正美味东西的能力。”

技能与工具

全栈开发者也通常在服务器端进行编程工作,但他们熟练前端语言,能够操纵网站面向用户的部分。基本上可以形容他们是百事通。

下图表来说明全栈开发不断增长的复杂性,这是过去与当前技术需求情况对比:

具体工具依项目和客户需求而定,全栈开发者需要对 Web 架构的每一个层次都有足够的了解:搭建和配置 Linux 服务器,编写服务器端 API,利用客户端 Java 代码驱动应用,将设计层面的东西转化到实际的 CSS 代码。

掌握并使用大量工具的同时,全栈开发者需要敏捷地分配服务器端和客户端任务,提供解决方案并对比不同方案的优劣。

薪资参考

学习无止尽,对于开发来说,在哪里开始似乎没那么重要,但是向发展会决定你最终的收入水平。

 

欢迎关注公众号:“趣学Web前端”,获取更多前端知识精粹和学习社群: 回复 学习路径,将获取笔者多年从业经验的前端学习路径的思维导图 Vue、React、小程序、Node


更多推荐

谁说从事前端没有后端工资高?