1、前端工资是不是比后端工资低?
我可以负责任的告诉你:据我所知,至少在杭州,网易和阿里巴巴的前端和后端价格是同一个批发价。
我说的是业务层,如果你坚持认为开发一个Web 3D引擎前端比开发一个普通的Java前端要贵,或者说开发Hadoop的数据比开发一个普通的前端要贵,那你就太吹毛求疵了。
我们所指的前后端一定是Web开发的前后端,属于Web业务开发。否则,编写中间件、大数据后端、Web 3D引擎、前端框架设计前端等都超出了传统Web开发的范畴。
我是说同一级别,因为个体差异很大,但是一般一个P6/7前端和一个P6/p7后端是一个价格。
1、从一定程度上来说,后端工资更高的观点是正确的。
为什么呢?如果算一下阿里巴巴前端和后端的平均工资,肯定后端的工资更高。
因为前端的地位这几年提高了。现在你去阿里的话,p7前端和后端(阿里的后端是Java)的价位是一样的,但是之前后端肯定高一些,而且阿里成立的时候后端就已经有了,很多后端出身的人都进入管理层了。但是都还是挂着p9/p10头衔的后端,前端也才干了10年左右,p10以上的前端其实也就一两个。
严格来说,到了 p10 级别,就没有前端后端之分了,只看你是前端出身还是后端,如果你以前是技术人员,那么前端后端都可以搞定,如果你以前是管理人员,那么就不是技术了,就是纯管理了。
因此,您现在不必担心这些问题,因为现在批发价是一样的,因为无论平均值是多少,重要的是您拿到手的东西。
2.个体差异很大,即使同一水平,也有人多些,有的人少些。
我其实是同级别工程师中薪水最高的。虽然谈论薪水是一个敏感话题,但每位员工或多或少都清楚自己的情况。
我去阿里的时候,开的价钱很高,一个原因是当时不想离开网易,不到一个价钱我是不会走的。还有一个原因是想知道自己到底有多大的价值。这涉及到一个程序员的生存策略:每年都要花两个月时间去面试——不管你想不想走。你需要不断评估自己的价钱,发现自己的不足,并及时弥补。
很多程序员不知道自己值多少钱,所以要么不敢要工资,要么要价高得离谱。如果你想知道自己值多少钱,测试市场是最好的办法。记住一件事:你的价格是由市场决定的,而不是你的能力。在稳定的市场中,你的能力可以和你的价格成正比。但市场从来都不稳定。看看当年Android/iOS有多火爆,再看看现在。人还是那群人,但市场却在变冷。
3.不管是前端还是后端都只是垫脚石。
很多年轻人(其实我也挺年轻的)都有一些执念,比如打算用一生的时间写 Java,成为 Java 高手,走上人生巅峰,其实这种想法是好的,但并不可取。
从技术角度来说,写一辈子 Java 并不能让你成为 Java 高手,你还需要学习 JVM 体系的 Scala、Kotlin,以及底层的 C/C++,还有和 Java 理念不同的 Go、Erlang。到最后你会发现 Java 只是敲门砖。真正让你成为 Java 高手的,是对于不同语言理念的理解,是对于不同场景下如何发挥 Java 优势的理解,是对于如何规避 Java 劣势的理解,是对于 Java 优缺点的深刻理解。而不是觉得 Java 是最好的语言,写一辈子 Java。
从职业角度,请注意我在上一篇文章中用了“xx”这个词来形容高级工程师。对于高级工程师来说,没有前端和后端之分。前端和后端只是敲门砖,因为我们今天讨论的 Web 业务开发,说实话,在计算机难度中处于最底层。至于有答主提到的鄙视链,其实是中国队鄙视泰国队,鸡同鸭讲。
在 Web 领域如果想升到高 P,基本要走业务架构路线,这很考验你的大局观。如果你只懂个前端或者 Java,那根本就不够格。如果是纯技术研究的 P10,那基本就是一条难走的路。说得更清楚一点,对于传统的 Web 开发工程师(前后端)来说,如果不通过管理升到高 P,基本要朝架构走。这时候靠的就是你的综合能力和好的大局观,你原来的前后端技术只是敲门砖。
对于P10以上,还能玩技术的,我给大家指几个方向:算法相关的岗位(深度学习,计算机视觉等),数据相关的岗位,图形相关的岗位(比如网易做游戏引擎的专家等),大型系统相关的底层岗位(阿里云),安全相关的岗位。
对于普通的 Web 开发来说,即使你把前端和后端写得漂漂亮亮,你也不可能靠纯技术达到高 P。请时刻意识到自己处于计算机难度的底层,因为前端和后端技术本身并不是很深奥,基本都是工业实践的结果。你看到很多 xx 公司从 xx 实验室、xx 大学挖走深度学习专家、数据科学家,但你见过挖走教授来做 Web 开发吗?
总结:
1.前端和后端目前至少都是大厂批发价。
2、个人能挣多少钱取决于市场、个人能力和谈判能力,和平均工资无关。
3.不管是前端还是后端,都只是你以后发展的垫脚石而已。传统的Web开发一点都不难,如果想更上一层楼,了解前端和后端是最基本的要求。
4.如何规划自己的职业生涯?
最后提问者问到如何规划自己的职业生涯。从上面可以清楚的看出:前端只是你的敲门砖。接下来我们来说说踏入前端大门之后的几个大方向:
1、Web开发:前端和后端是Web开发的两端。其实在很多外企,同城的Web开发根本不存在前端和后端这种称呼,都叫“软件工程师”或者Web开发者。其实我们需要转变一下观念:前端和后端并不是对立的,而是一个纯粹的家庭,只是一些国内外市场强行把它们分成了前端和后端而已。说到底,前端和后端都要懂。所以,你在保持前端高水平的同时,也要提高一些后端技术,但一定要分清主次,前端才是主。
2、数据方向:数据是未来互联网时代的石油,所以这个方向也不错。在前端就是可视化相关的技术,阿里巴巴有很多数据可视化的实践,因为阿里巴巴自称是一家数据公司(中石油?)。如果想做这个,建议大家去知乎搜一下相关的入门资料。提前说一句,可视化不只是用echarts绘制一个图表而已,这个领域很复杂,高校里做这方面的研究者很多,搜一下浙江大学的陈炜,可以多了解一下。反正肯定比web开发高,以后再进一步,还是离不开hive、hadoop这些大数据相关的东西。可视化是整个数据链路的最外层,最后还是要把整个链路层都搞明白,才能往P上去。
另外,Web开发分为Web前端和Web后端,这是从Web服务的角度看的。数据研发是基于Web开发,用数据赋能Web开发,懂可视化的必须具备前端能力,懂Hadoop的必须会Java,是Web开发的一个拓展方向。
3、大前端方向:移动端的iOS/Android早就没落了,但不代表它死了。只是所有公司都意识到了没必要做原生开发。你知道维护Android/iOS/web三个团队要多少钱吗。这么小的用户量和难度,初创期直接all in小程序就行;等做大了再去做Android/iOS,也不用all in。30%原生+70%混合用户完全看不出差别,成本和效率都好很多。一些大公司,比如阿里巴巴,RN、Weex实践的很多;由于公司内部Android/iOS没落,前端在一定程度上把iOS和Android都收编了,统称大前端(兼节点),比较出名的有饿了么、美团。这种收编一定程度上也是政治需要,像美团这样的公司必须把精力放在后端上。 刘平川说,Android/iOS纳入,加上node团队之后,大前端的人数已经和后端持平了,大前端的领头人威力可想而知:学一点iOS/Android总归是没有坏处的。
4、图形:图形的缩影无疑是游戏行业,当然阿里巴巴也有自己的游戏业务。前端自然和图形息息相关,除了上面说的可视化,还有相关3D引擎的开发,比如余波团队内部正在孵化antG(未开源),淘宝已经有前端3D引擎的开源项目,支付宝里面的蚂蚁森林就是前端开发的,用到了canvas/webgl相关技术。做这一行要求也很高,图形相关算法、3D引擎开发都需要图形相关知识,严格来说很难算传统意义上的前端,更像是图形在浏览器端的应用,未来的开发肯定需要借鉴传统的图形方案,所以c/c++必不可少。同时3d/2d在浏览器端比较耗性能,需要webassembly支持,原生语言更是必不可少。