web开发中的职业发展方向 - Presentation Transcript
2011-11-10 14:44
495 查看
常见职能划分
实现功能的开发工程师(程序员)
前端工程师
服务器端开发工程师
实施部署维护的系统管理员(SA)
特别的:数据库管理员(DBA)
控制质量的测试工程师(QA)
常见职能划分
不属于程序开发的
美工
策划
业务/需求分析师
Web应用的三层架构 服务器端 前端工程师 服务器端工程师 系统管理员 数据库管理员 表现层( Presentation Layer ) 业务逻辑层( Business Logical Layer ) 数据持久层( Data Persistant Layer ) 辅助系统 ( Auxiliary System )
前端工程师 前端工程师
美工方向
做HTML模板
编写CSS
视觉设计
策划方向
界面/UE/交互设计
开发方向
JavaScript编写
前端工程师
美工方向
(x)HTML
CSS
常用的图像处理工具(如Photoshop)及简单的图像处理
切图,将图片转换为DIV+CSS
处理浏览器之间的css兼容性问题
前端工程师
策划方向
产品设计理念
用户体验
参考资料:UCDChina http://ucdchina.com/
前端工程师
开发方向:
熟练使用JavaScript(OOP, Functional)
了解相关HTML标准(如DOM)
了解不同浏览器之间的JavaScript兼容性问题
掌握一种框架(如jQuery)
*能够用JavaScript开发富界面
候选:Flash开发
服务器端的职能划分 服务器端开发人员 系统管理员 应用逻辑 应用框架 应用服务器 操作系统 服务器端工程师 服务器端工程师的职责
编写业务逻辑代码
协助架构师进行业务逻辑的(细节部分的)设计
服务器端工程师的技能要求
熟悉一门所需的编程语言
语言基础
标准库
最佳实践(如代码规范)
熟悉一种以该语言写成的应用框架
搭建开发环境
了解常见的算法与数据结构及其应用场景
了解常见的设计模式及其应用场景
服务器端工程师的技能要求
能够根据自己的业务场景需求搭建自己的应用框架
系统管理员 Source: http://www.isgtw.org/?pid=1000944 系统管理员的职责
负责部署系统
优化系统性能/微调系统的参数
监控系统的运转情况,保证系统的正常运转
收集系统信息,分析系统问题
协助架构师设计系统的结构
保证系统安全性
系统管理员的技能要求
熟悉某种操作系统(如Windows Server, Linux, FreeBSD, etc.)
熟练安装配置某套框架下的应用组件
如LAMP(Linux+Apache+MySQL+PHP)
了解系统的核心参数和配置,并可以根据应用场景进行调整
灵活使用某种Shell脚本语言
Windows下的Bat批处理或者PowerShell
*nix下的(Ba)sh, csh, zsh, etc.
系统管理员的技能要求
会分析各种日志
了解某种监控系统(Munin, Cactic, Nagios)
掌握某种自动部署工具的应用
Puppet, Chef(Ruby)
Func (Python)
ControlTier
了解如何进行压力测试,并掌握常见组件的参数和应用场景
数据库管理员的职则
部署数据库
优化数据库性能/微调数据库的参数
保证数据库的正常运转和数据安全
协助架构师进行数据建模
协助架构师进行数据库部署的设计
协助业务人员进行数据分析
协助应用程序开发人员编写高质量的SQL
数据库管理员的技能要求
精通SQL
精通掌握一种关系型数据库的安装配置
熟悉数据库建模
能根据应用场景来调配数据库的参数
了解常见的数据库架构模式
测试工程师 测试工程师的职责
功能性测试:保证业务的正确执行
性能/压力测试:为优化性能提供基准和参考
可靠性测试:测试极端情况下系统的稳定性和可用性
安全性测试
可用性测试
测试工程师的技能
手工测试
设计测试案例
自动化测试工具
进阶职业! 进阶职业!
掌控全局的产品 / 项目经理
运筹整个系统的架构师
架构师的职责
系统架构要考虑的功能性问题(根据需求)
选择合适的技术、框架(技术选型)
业务建模、数据库建模
划分系统层次、组件
技术方面的其他决策
架构师的职责
系统架构要考虑的非功能性问题(根据需求)
并发数
响应速度
吞吐量
容量
可靠性
安全性
架构师 = 开发工程师 + 系统管理员 + 数据库管理员 项目/产品经理的职责
对整个项目负责
对更上一级负责
进行决策
制定计划
衡量、控制项目/产品的进度
合理评估/规避风险
控制、协调、安排各成员
部署/维护 测试 设计 开发 需求分析 SA&DBA & Programmer DBA Architect UI设计师 Programmer System Analyst/Planner SA QA 美工 前端工程师
总结
纯属个人经验总结
不同公司会有不同的分工,可能起不同的名称
多样化,差异化
要往高层次走,就要突破自己角色领域
Q&A 完 谢谢
相关文章推荐
- 转:web应用开发的发展方向
- web开发人员职业发展的11个阶段
- web开发人员职业发展的11个阶段
- web开发人员职业发展的11个阶段
- 计算机专业开发工程师人生之路,职业发展方向规划(强烈推荐,分析的透彻!)
- web开发人员职业发展的11个阶段
- 做为一名在校学生而言,从其职业发展的角度出发,在学习 Web 前端开发的时候有必要花时间兼容 IE6、IE7 这些浏览器吗?
- WEB 开发程序员的学习与发展方向
- 今天我们来聊聊Python web开发,看看这个发展方向的前景!
- web开发前端的就业前景和发展方向解析
- web开发人员职业发展的11个阶段
- Skyline软件二次开发初级——6如何在WEB页面中的三维地图上进行坐标和方向计算
- 浅谈Android移动开发程序员的职业发展之路
- 写点自己对Web2.0及以后web发展方向的看法
- 前端开发人员的发展方向
- 内核开发的前途在什么地方,发展方向有哪些?
- Java Web开发及应用软件方向的学习计划
- .net 开发人员的瓶颈和职业发展
- 嵌入式开发人才的未来发展方向
- Web端开发发展历程简单概述