前篇《后端研发工程师的薪水,深度解密》介绍了后端研发岗的真实薪酬情况,这一篇,介绍下后端研发岗的入门门槛。
画外音:下篇介绍,后端研发,技术栈全攻略。
如果大家准备入行,或者转行后端研发岗,可以对照下技能图谱,看下自己的技能树点全了没有。
画外音:先解答家里亲戚的问题,后续再深入聊。
什么是后端研发岗?
后端研发,是国外“Backend Engineer”译过来的,指开发和维护服务端的工程师。
后端研发岗需要哪些入门技能?
如果想入行,就要具备以下几项技能:
技能一:编程语言
入行后端研发,你得懂一门后端编程语言(Programming Language),PHP,Go,Python,C/C++,Java… 至于要学哪一门,可以调研下技术流行趋势,以及行业内各大公司的使用情况。
画外音:总的来说,国外Python居首,国内Java用的多。
如果是前端转型后端,可以考虑node.js。
技能二:代码管理
入行后端研发,你得懂代码版本控制工具(Version Control),你得熟悉代码托管系统(Repo hosting)。如今基本上都是Git和Github了吧,有自己的开源项目,在面试中可是非常加分的。
画外音:刚入职百度用CVS,后面升级了SVN,现在这些都淘汰了吧?
技能三:关系型数据库
入行后端研发,你得懂关系型数据库(Relational Database),得懂标准SQL语句,得懂数据存取。可能入行早期,大部分时间都是在写,用SQL增删查改,来实现业务逻辑的代码。
画外音:总的来说,国外PostgreSQL居首,国内MySQL用的多。
除此之外,和数据库相关的技术,或多或少也必须了解,例如:
事务,以及事务的ACID
ORM(Object-Relational Mapping,对象关系映射)
N+1问题
…
画外音:N+1问题(N+1 Query Problem)是一种常见的性能问题,通常出现在使用ORM框架,且当关联数据处理不当时,N条记录的获取,会进行N+1次数据库访问,从而严重影响数据库性能。
技能四:缓存
入行后端研发,你得懂缓存(Caching),缓存解决什么问题(读多写少用缓存),怎么使用(读怎么用,写怎么用),最佳实践(Cache aside pattern)至少得知道。
画外音:现在基本上都用Redis了吧?
缓存这些年写过好多文章,就不深入展开了。
技能五:接口
入行后端研发,你得懂接口(API)。对前端,会提供RESTful的HTTP接口,返回内容是HTML或者JSON;对后端,会提供RPC接口… 同时,与接口相关的授权,JWT等技术,或多或少得了解。
技能六:测试
入行后端研发,测试(Testing)也是必备的技能,单元测试,功能测试,集成测试…
有了这些技能,入行后端研发,或者转行后端研发,算是够了门槛了。
后端研发,如果想深入发展,需要掌握哪些知识与技能呢?
下一篇,20项技能点,和大家聊聊。
关联:
调研:
后端的朋友们,你们大学毕业时,点亮了这6项技能中的几项?拿到大厂offer了吗?