昨天也顺手整理了一下我所需要的后端技能清单。不过,由于我离非常有经验的后端开发者有点距离,希望大家可以给点意见哈。
入门
HTML / CSS
编程语言:Java / Python / PHP / Ruby等等
Web框架,如Spring MVC、Flask、Laravel等等
HTTP协议基础
CGI基础
中级篇
XML和JSON处理
数据结构与算法
面向对象编程
CMS
API设计
高级篇
函数式编程
领域驱动设计
MVC架构
运行环境优化,如JVM
远程调试
工程化
版本管理
单元测试
依赖管理
包管理
基础设施
虚拟化,如Docker
自动化部署
应用包创建、管理、发布
发布脚本编写
Web容器,如Jboss
缓存篇
应用层缓存
平台缓存
数据库端缓存
分布式缓存
数据持久化
SQL
NoSQL
ORM
DBMS
搜索引擎
数据库
查询性能优化
结构优化
主从复制、主主复制等等
伸缩性与高可用性
备份恢复与容灾
安全和加密
认证与会话管理
加密解密
数字签名、数字证书
加密算法
XSS/CSRF/SQL注入
监控
应用性能监控
异常监控
日志
流量监控
服务
RESTful
SOA
RPC
MicroServices
消息
JMS
IPC
MQ