全栈工程师技能图谱

知己知彼,方寸不乱。

1 前端技能图谱

基础
  • 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优化
  • 页面静态内容生成

2 后台技能图谱

入门
  • 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

3 DevOps技能图谱

入门篇
  • 编写脚本,如Shell、Perl、Python等等
  • 编程语言
  • Web应用运行基本原理
  • HTTP服务器
  • 应用容器
  • 命令行,如awk
  • CGI
  • 修复漏洞
中级篇
  • 自动化运维
  • GNU / Linux操作系统
  • 编译
  • 数据库
高级篇
  • 分布式文件系统
  • 分布式存储系统
云服务
  • 存储服务,如AWS S3
  • 计算服务,如AWS Lambda
  • 托管服务,如AWS EC2
安全性
网络
  • CCNP / CCNA
持续集成
  • 持续集成工具
  • 自动构建工具
  • 依赖管理工具
  • 版本管理工具
虚拟化
  • 应用容器虚拟化,如Docker
  • 环境虚拟化
  • 操作系统虚拟化
自动化 (puppet,chef)
  • 自动化配置
  • 自动化部署
  • 进程管理工具,如Supervisor
监控
  • 基础设施监控
  • 日志管理
  • 监控服务
负载均衡
  • 边缘缓存,如(Varnish)
  • DNS负载均衡
  • CDN

4 软技能图谱

影响力 / 个人品牌
  • 写作
  • 演讲
  • 培训
  • 博客
  • 社交媒体
社区
  • 社交媒体交流
  • 自媒体平台
  • 技术社区
  • 问答社区
持续学习
  • 学习新技术、语言
健康
  • 运动
  • 不熬夜
生产力
  • 熟悉工具
  • 快捷键、快捷键、快捷键
估算
  • 完成时间估算
  • 延迟花费
  • 预算估算
  • 薪资估算
其他
  • 面试
  • 客户沟通


转载自 https://github.com/phodal/awesome-growth

转需,侵删。

时间: 2024-11-04 09:52:57

全栈工程师技能图谱的相关文章

“全栈”工程师 请不要随意去做

今天我来给大家说说 "全栈工程师" 的事儿. 写这篇文的背景原因: 很简单就是最近越来越多的人想做[全栈工程师],他们的目标就是全栈,他们才入行短短1-2年,甚至刚从培训班出来:我的目标是做全栈,我啥都要学会,啥都会写,这样我就是大牛了,可以挣大钱,就算创业,我也不用招那么多人,一个人搞定一个产品,融资上市 ,CEO白富美,balabala... 我给他的回复是: 去你xx的,你连JS 数组和对象用法都搞不清,抄几个效果,看几个视频教程摸索摸索就要做万能人了? "全栈&quo

全栈工程师?

作者:肖文峰链接:https://zhuanlan.zhihu.com/p/20091607来源:知乎 最近参加一个技术社区活动,在讨论到"CTO的技术深度和广度哪个更重要"的话题时,我想起社区里面常常提到的"全栈工程师"的事情,于是表达了一些观点.临场未必能够清晰表达,所以下笔,希望能够引起一些讨论,避免年轻工程师误入歧途. 长期以来,社区就有人在提"全栈工程师",还有一些公司直接挂出名为"全栈工程师"的招聘职位.那什么是全

全栈工程师

关键开发技能(硬实力) 一.Git/GitHub,必须掌握如何使用Git来掌握和分享你的代码.Git作为关键技能的第一条,是因为它不仅仅是一个代码管理工具,更是一种推荐的工作方式.它使你能在任何地方进行开发,高效地管理任何大小的项目,通过Git还能与其他团队成员进行分布式工作,大大提升工作效率. 二.至少一门编程语音,JAVA.PHP.C#.Python.Ruby.Perl等,因为大多数核心业务处理都需要这门语言来写.不但要掌握这门语言的语法,还需要非常熟透如何基于这门语言进行项目的架构.设计.

读<专栏·谈谈全栈工程师>

原文地址:http://leihuang.org/2014/12/12/read-Full-Stack-Developer/ 昨天晚上看海贼王给看睡着了(11点的左右),导致早上5点就醒了,怎么办呢,找点东西打发点时间,本来想看看知乎的,但是最近对知乎的氛围很失望,总感觉好浮躁的氛围,当然这些跟我关注的人有关系,改天清理清理. 犹豫了半天,想着还是看本薄点的书吧,下了个豆瓣阅读软件,因为以前没用过,本来想找书,结果点进了豆瓣专栏,还以为里面是书.进去之后才发现是别人写的专栏.也没想太多,看到有科

《web全栈工程师的自我修养》 读书笔记

作者:余果. 人民邮电出版社.2015年9月第1版. 值得轻快一读,另外此书里推荐的书籍很好.Full-Stack Engineer! 一.如何成为全栈工程师 1 定义:全栈工程师是指,一个能处理数据库.服务器.系统工程和客户端的所有工作的工程师.根据项目不同,可能分为移动栈.web栈,或原生应用程序栈. 2 研发流水线 产品经理 >交互设计>>视觉设计>>前端开发/后台开发>>测试>>发布 3 代表性的全栈框架 LAMP.MEAN 4 建议:先精后广

全栈工程师的未来发展如何?

在如今这个信息高速发展的今天,信息更新如此的快,需要一人掌握多项技能才能胜任时代的发展,就是因为这个原因,新霸哥发现了全栈工程师在2016年很火的,无论是从搜索量还是从身边的朋友了解到,这将是一个很火的行业,所以说全栈工程师是未来的一个发展趋势. 在我们生活的周围,有的人在大公司上班,也有人在小公司上班,不同的环境可能给人不同的感受.大公司一般都会培养你成为某一个领域的专家,但是小公司就需要你什么都懂一点,所以说小公司都喜欢小而美的团队,也就是全栈工程师. 新霸哥发现大公司和小公司在解决问题上都

一名全栈工程师的必备工具箱

全栈工程师,也叫全端工程师,是指掌握多种技能,并能利用多种技能独立完成产品的人.全栈工程师熟悉多种开发语言,同时具备前端和后台开发能力,从需求分析,原型设计到产品开发,测试,部署,发布全流程都十分熟悉. 全栈工程师由于经常研究各种技术,他不会精确记得所有语言代码的语法和API,他觉得没有Google和百度,几乎没法工作.他记的只是一个Key,一个如何找寻答案的索引,而不是全部,人脑不是电脑,他不可能记下所有的东西. 对全栈工程师而言,各种辅助工具是十分重要的.全栈工程师更多的工作不是造轮子,而是

为什么你应该先成为全栈工程师

让我觉得我应该再写一篇文章站在全栈工程师的理由是,一本书<浮现式设计>和一个单词 Re-Practise. 似乎这是一个新的思考,尽管在那之前我已经写了一篇<全栈工程师的思考>,只是事隔半年之后,我又有了一些新的感触.这半年来,除了增长了一些软技能,如沟通.表达 .英语,以及一点点的技术提升之外,并没有什么太大的变化. 每天我们似乎都在重复前一天的工作,生活似乎就像是一潭死水,日复一日地添加新功能,修复旧 Bug.让我们觉得生活过于无聊的原因,怕是因为现有的项目已经很稳定,不会有太

全栈工程师学习Linux技术的忠告

随着科技的普及,Linux作为最受欢迎的服务端操作系统,无人不知,无人不晓.当今,不论是服务器搭建,还是客户端开发,Linux系统的基础技能对全栈来说都是必备的,而了解如下几个问题可以更好的帮助你成为一名合格的全栈工程师. 1.Linux体系组织结构 学习一个系统需要了解其体系结构,这样才能更好的学习.Linux有kernel和user两种模式,内核.shell和文件系统统一形成基本的操作系统结构,Linux内核由如下几部分组成:内存管理.进程管理.设备驱动程序.文件系统和网络管理等 学习lin