后端开发是干嘛的?
很多人问我后端具体是做什么工作的,今天详细说一下。
简单理解
你用手机App点外卖,看到的页面是前端做的。
但你点击"下单"之后,谁来处理这个订单?谁来通知商家?谁来计算配送费?谁来把订单存到数据库?
这些都是后端干的活。
简单说,后端就是处理业务逻辑、和数据库打交道的。用户看不到,但离不开。
日常工作内容
我来说说我平时都干啥:
写业务代码:这是最主要的工作。产品经理提需求,你把需求翻译成代码。比如"用户可以领取优惠券",你就要写领券的接口、存储的逻辑、各种校验等等。
写接口文档:你写的接口要给前端用,得告诉他们怎么调用、传什么参数、返回什么数据。
修Bug:线上出问题了,赶紧查日志、找原因、修复上线。这活又累又刺激。
优化性能:接口响应太慢了,数据库查询太慢了,得想办法优化。
开会:需求评审、技术评审、周会、站会……各种会。
需要掌握的技能
以Java后端为例:
必须会的:
- Java基础、集合、多线程
- Spring Boot框架
- MySQL数据库
- Redis缓存
- Git版本控制
最好会的:
- 消息队列(RabbitMQ、Kafka)
- 微服务(Spring Cloud、Dubbo)
- Linux基本操作
- Docker容器
加分项:
- 源码阅读能力
- 系统设计能力
- 性能调优经验
工作强度
说实话,互联网公司的后端普遍加班比较多。
大厂996是常态,小公司看情况。但整体来说,比前端加班要多一些,因为后端出了问题影响更大,经常要值班处理线上故障。
发展路径
后端的发展路径大概是这样:
初级开发(0-2年)→ 中级开发(2-5年)→ 高级开发(5-8年)→ 技术专家/架构师/技术管理
当然也有人转产品、转管理的。路子挺多的,看你自己想怎么发展。
适合什么人
如果你:
- 喜欢逻辑思考,解决问题
- 不太在意"看得见的成果"
- 能接受加班
后端挺适合你的。
如果你喜欢做出东西立刻能看到效果,可能前端更适合你。
