首先谈谈我对前段工程师的定义. 如果某个人要自称为前端工程师, 至少要掌握以下技术: JavaScript + html + CSS + 一些基本的图像处理, 当然还可能包括一些简单设计. 总体来说偏向于展现层, 能在 Ajax 应用大展身手.
如果您符合上面的标准, 正常水 平, 4 年工作经验北京收入应该在 5K-6K 之间. 所谓的正常水平指的是满足以下条件:
1. 如果你把自己定位在前段工程师, 则 JavaScript 一定要达到精通的级别, 除了掌握当前主流的 JS 框架外, 还要能够以面向对象方式编写自己的 JS 框架, 编写 JS 控件, 要能够手动解决跨浏览器问题, 总之你要 达到对 JS 深刻理解的地步, 知道然还要知道所以然. 你可能觉得 "深刻理解" 太过苛刻, 但因为 JS 本身就是一个轻量级语言, 同时太过灵活, 如果不能够深刻理 解则意味着无法完全驾驭, 同时也就无法进行大规模应用.
2. 精通 HTML + CSS, 要能够脱离工具(例如 Dreamweaver), 完全手动编写页面布局(Table 也好, Div 也好), 除了满足浏览器兼容性, 还要求整洁, 语义 清晰, 易于维护.
3. 能够进行基本的图像处理, 别离了美工就完全没法过了.
4. 要能够理解服务器编程 (Java,C#,PHP 等) 的 基本原理, 从而能够和后端程序员无缝配合.
5. 如果熟悉目前流行的 RAR 框架(例如 Flex,Silverlight), 会大幅增加您的竞争 力.
如果你不懂 JS, 只会 HTML,CSS,Flash, 只会页面布局, 我说你更像一个美工, 而不是前段工程师.
如果你懂 JS, 但不精通, 那你可能还不如平常的一个 web 程序员. 普通的 Web 程序员除了能写上几笔 JS, 而且还能够进行服务器编程.
顶 , 补充几句:
1. 除了娴熟的技能, 还需要关心标准. 一个专业人员不光要关注自己怎么做, 还关注标准是怎么做的, 大家是怎么做的.
2. 要有自己独到的见解. 比如 拿学历来说, 本科, 硕士, 博士 的区别是什么?
首先肯定是学历程度的不同, 其实最本质的是, 本科所进行的只是在验证前人的理论, 是在学习, 基本没有什么自己独到的见解和创新.
而硕士呢, 是能够在导师的带领下进行有限的创新, 做 的还是比较有限. 为什么说博士不好毕业呢, 是因为毕业论文对毕业太过重要, 也有相当的难度; 因为对于一个博士来说, 不仅要有自己独到的见解和创新, 还要对 整个领域都有宏观上的认识, 干预打破之前的条条框框.
其实前端也是如此, 开始你只是在学习 HTML,CSS,JS , 你只是在验证其正确, 合理性. 到最后真正掌握之后才能很好的驾驭, 甚至构建自己的编程模式, 一种让更多人交口称赞的模式.
3. 时刻 保持细心, 虚心, 不放过任何一个细节. 因为前端本来就是很细节的东西, 你如果不关心这个, 我看还是放弃的好.
4. 敢于向别人道出自己 的见解, 不要怕说错, 没有说那个理论自己在那琢磨琢磨就出来了. 真理需要经过讨论, 实践的验证.
来源: http://www.jianshu.com/p/b810f18f48e3