程序员技能树

前端程序员

基础

HTML / CSS、JavaScript、DOM

中级

数据格式(如JSON、XML)、RESTful API交互(如jQuery Ajax,Fetch API,ReactiveX)、正则表达式

HTML语义化、命令行、Node.js、DIV / CSS、SCSS / SASS、矢量图形 / 矢量图形动画(如SVG)、单页面应用

高级

ES6 / TypeScript、CSS3、面向对象编程、函数式编程、MVC / MVVM / MV*、安全性(如跨域)

授权(如HTTP Basic、JWT等等)、工程化、代码质量(如JSLint / ESLint / TSLint / CSLint)

代码分析(如Code Climate)、测试覆盖率、构建系统(gulp、grunt、webpack等等)、自动构建(脚本)

兼容性、跨浏览器测试 (Chrome,IE,Firefox,Safari等等)、跨平台测试(Windows、GNU/Linux,Mac OS等等)

跨设备测试(Desktop,Android,iOS,Windows Phone)、跨版本测试(同一个浏览器的不同版本)

前端特定

CSS / CSS3 动画、JavaScript 动画、Web字体嵌入、Icon 字体、图形和图表、CSS Sprite(如glue)

DOM操作(如jQuery、React等等)、模板引擎(如JSX、Handlebars、JSP、Mustache等等)

软件工程

版本管理(如git、svn)、包管理(如npm、bower)、依赖管理、模块化(如CommonJS、WebPack)

调试

浏览器调试、Debug工具、Wireshark / Charles抓包、远程设备调试(如Chrome Inspect Devices)、

测试

单元测试、服务测试、UI测试、集成测试

性能与优化

PageSpeed / Yslow 优化、加载优化(如gzip压缩、缓存等等)、性能测试(特别是移动Web)、可用性

压缩(如Minify、Uglify、CleanCSS等等)

设计

切页面、线框图(Wireframe)、响应式设计、网格布局(Grid Layout)、Flexbox布局

SEO

Sitemap(站点地图)、内部链接建设、MicroData / MicroFormat、页面静态内容生成

H1、H2、H3和strong使用、Title、Description优化、页面静态内容生成

后端程序员

入门

HTML / CSS、编程语言:Java / Python / PHP / Ruby等等、Web框架,如Spring MVC、Flask、Laravel等等

HTTP协议基础、CGI基础

中级篇

XML和JSON处理、数据结构与算法、面向对象编程、CMS、API设计、网络通信协议,如TCP / Socket

高级篇

函数式编程、领域驱动设计、MVC架构、运行环境优化,如JVM、远程调试

工程化

版本管理、单元测试、依赖管理、包管理

基础设施

虚拟化,如Docker、自动化部署、应用包创建、管理、发布、发布脚本编写、Web容器,如Jboss

缓存篇

应用层缓存、平台缓存、数据库端缓存、分布式缓存

数据持久化

SQL、NoSQL、ORM、DBMS、搜索引擎

数据库

查询性能优化、结构优化、主从复制、主主复制等等、伸缩性与高可用性、备份恢复与容灾

安全和加密

认证与会话管理、加密解密、数字签名、数字证书、加密算法、XSS/CSRF/SQL注入

监控

应用性能监控、异常监控、日志、流量监控

服务

RESTful、SOA、RPC、MicroServices

消息

JMS、IPC、MQ


软技能图谱

影响力 / 个人品牌

写作

演讲

培训

博客

社交媒体

社区

社交媒体交流

自媒体平台

技术社区

问答社区

持续学习

学习新技术、语言

健康

运动

不熬夜

生产力

熟悉工具

快捷键、快捷键、快捷键

估算

完成时间估算

延迟花费

预算估算

薪资估算

其他

面试

客户沟通

你可能感兴趣的:(程序员技能树)