对于一个WEB前端的职业规划,其实是有各种的答案,没有哪种答案是完全正确的,全凭自己的选择,只要是自己选定了,坚持去认真走,就好。在这里, 我只是 简要说一下自己对于这块儿内容的理解。有一个观点想要分享给大家的是:任何规划和目标的实现都依赖于知识的积累,而知识的积累来源于学习及学习后大量的实 践。我提供一个实践途径,我们可以在工作之余的时间在网上或外包公司那里接一些私单做,因为目标不是赚钱,我们可以用最低的价格来提升自身竞争力,获得大 量订单就意味着获得大量的实践机会,同时,还有一些收入作为工作成就感之外的安慰奖,还是不错的。 
一、职业方向定位

首先,只有确定好自己的职业方向,才能做好职业规划。在我看来,做WEB前端技术能够找到的职业方向有以下几种:

(1)资深WEB前端工程师

这个方向算是一个WEB前端最基本的选择了,在国外,很多老外都能够把自己的专业做到极致,能一辈子就在一个专业领域不断学习和积累。主要在于内因和外因 两方面,内因是老外通常思想比较简单直接,容易一直专注于一个领域;外因是国外的环境很好,能够良好的支撑这样的职业发展道路。反观国内,从内因来 讲,WEB前端技术人员还是蛮浮躁的,通常会因为WEB前端知识的更新速度太快而觉得学习起来辛苦,最终转向后台或其他道路。从外因来讲,WEB前端人员 没有获得公平的待遇,可能从HTML页面制作就开始并沿袭下来的,从来WEB前端人员都比后端人员低一等,貌似前端就是“浅显”的代名词、后端就是“深 奥”的代名词,这也直接造就了前端人员的收入无法和后端人员媲美,同时直接影响到前端人才市场的活跃程度。另一方面,前端的技术入门较容易,造成另一个极 端情况:人员泛滥、人才稀缺。我想对所有的WEB前端工程师说:面包总会有的,要耐得住寂寞!我个人比较推荐这个职业发展方向,因为,在这个方向下,只要 足够耐心、厚积薄发,成功的概率是非常高的。同时,这是一条最单纯的路,我们更多的是花费精力在技术的钻研上,而不是办公室政治等其它琐事。

(2)资深WEB架构师

说功利点儿,我喜欢这个方向,既兼顾了工作的单纯性、又能够减少实际Coding的工作量能腾出更多时间钻研技术。在国内,WEB前端工程师遇到较多的情 况是总是反复编写着同样的代码,总是面对着同样的技术和产品,容易感觉枯燥。由于我们拥有最为广泛的WEB相关知识沉淀,使得我们更加容易成为一名架构 师。这个职业发展方向不如第一种来得平滑,主要是作为一名架构师不得不学习:后端技术、DBA、Platform等内容,而这种学习通常需要实际操刀做项 目,不是自己在家里写两个Demo就好的,这就势必会遭遇一段时间的阵痛期。虽然不是很平滑,但是,对于一个大局观好、悟性好、知识面广的前端工程师,我 推荐你们努把力,走一条光荣的架构师之路吧。

(3)自己创业

其实,自己创业是最好的道路、也是成功率最低的道路,挑战和机遇并存。这里,作为一个前端技术人员,需要将自己的视野更多放在行业的动态、产业链的动态、 相关产品领域的动态,把关注细节的优势继续保持,同时,增强自己把控一个产品乃至一个公司命运的能力。但是,这条道路和技术之路稍有分歧,后续将不再赘 述。

二、职业发展目标

我都有一个最终的目标,在这个目标之上,我们需要给自己制定一系列学习和成长计划,制定的方法如下:

第一、梳理知识架构;

梳理知识架构的目的在于,我们要了解清楚,哪些技术是前置、哪些技术是后继,那些技术是深度、哪些技术是广度,按照这两个维度梳理好知识架构之后,我们才能准确地制定清晰的成长目标、高效的成长计划。

第二、分解目标;

我认为,大抵可分解为三个阶段,包括:起步阶段、提升阶段、成型阶段。这三个阶段分别对应着不同的目标:

起步阶段:

1、基本知识的掌握

在我们梳理的知识架构中,按照我们分析的两个维度里最前置的、最浅显的部分,作为打基础的阶段,必须要在这个过程中更多投入到实践中去,我们通常做的多了、熟练了,就认为这部分知识和内容掌握了。

2、常用工具的掌握

对于常用工具的掌握应该掌握一些有大公司或专业团队背景的流行工具,这些工具的熟练掌握能够提升专业度、职业度,同时,能提升我们的工作效率。我们只有在 检验自己对于知识和技能熟练程度的时候,才会自虐式的用Notepad去编写页面、css和脚本等内容。

3、沟通技巧的掌握

通常做技术的人会被定位为“不善沟通”的人,这是为什么呢?究其原因,主要是因为多跟程序和代码打交道,跟人的沟通较少导致。这种时候我们要特别注意增加 和人沟通的机会,着重提升这块儿的能力。另一方面,我们通常被称为“不懂沟通技巧”的人。在国内,我们的技术人员通常都是自己制定方案、自己执行方案,在 执行过程中又缺乏相关产品、交互设计等人员的沟通,大多是在自己的思路贯彻下进行开 发,久而久之,我们习惯于信任自己的观点、在自己的视角看问题,对于挑战总是百般地“据理”力争。我们需要更多提升的是,如何在对方的视角看问题、如何在 用户的视角看问题。

4、良好的开发习惯

开发习惯是养成的,一旦有不好的习惯,对于将来去修正带来的将是很大的麻烦,我们在培养良好开发习惯一定要从起步时做起,例如:写代码之前先分析、先写文 档、先写注释。定义变量最好能用直接可理解的语义,最好是拼音,别整英文,尤其是生僻单词,将来自己忘了还要开金山词霸。文件最好有有意义的文件夹命名来 管理,文件名最好有意义,需要版本号的最好能和项目版本号一同更新……等等。

提升阶段:

1、高级技术的掌握

在提升阶段对于知识和技能掌握,我们需要从梳理好的知识架构中选择更深一层次的技术进行学习,选择之前,我们先通过类比或预估的方法,衡量自身学习的难 点,以学习难点和自己最不感兴趣的部分为主。这样推荐大家的原因是:这个阶段我们兴趣正浓,已经度过了苦涩的起步阶段,到达了兴奋的提升阶段,我们要用兴 趣和兴奋去挑战最困难的部分,在我们信心受挫和兴趣浓厚之中找到平衡。同时,辅以其他的深层次知识一起学习和研究。

2、产品思想的学习

没有正确的产品思想,很难设计出良好的程序,无论从界面、交互,还是接口、逻辑,不能够理解产品、理解用户需求,我们会给自己造成很大的麻烦,例如:我们 千辛万苦用最新技术、最复杂的实现做出的功能,却得不到使用者或领导、同事的认可。为了使我们的工作和学习更加有效率、避免无用功,我们需要不断的学习产 品的思想,只有理解了产品的思路,我们才知道用我们的技术去输出什么。

3、各种框架的学习

框架是我们提高工作效率的优秀手段,对于框架的学习是成长必经之路。我们学习框架的路线通常应该是:使用——》分析——》个性化定制——》模仿编写自己的 框架。只有大量的使用,才能明白设计框架者在设计背后的思路,只有了解到设计的思路,才能做正确全面的分析,只有正确全面的分析才能支撑我们去对其裁剪或 扩展,只有经过实际分析、修改别人的框架,才有可能写出优秀的、自己的框架。学习通常的路线是:学习、理解、模仿、创造。

4、富客户端应用的学习

随着带宽和计算机性能的提升,以及WEB2.0的如火如荼,富客户端应用充斥着互联网,如果你不懂得富客户端应用,你就不能称之为一个合格的前端技术人 员。可以按照:Flash动画——》Flash编程——》 Flex——》——》Air——》Silverlight动画——》Silverlight编程 的步骤学习,先学Flash后学Siverlight的原因,一来Silverlight还不太成熟,二来,实际Silverlight借鉴了很多 Flash的思想,最好在学习的时候不要本末倒置。

5、各种网络协议的学习

WEB前端技术就是云上的技术,云的协议有N种,我们应该着重学习:TCP/IP,UDP,HTTP,POP3,SMTP这几种协议,在开发WEB前端应 用过程中,这些协议是我们的技术的载体,有时候决定了我们的应用是否能实现、有时候决定了我们的应用是否高性能,同时,这些协议还是我们和后端技术交互的 重要手段,这些协议就像是密码字典,帮助我们把后端传输过来的密文解释成我们前端技术能够理解的明文。

6、程序设计

这个阶段我们需要学习OO、UML、设计模式、设计方法……,我们要让技术开发工作变成有目的性、有计划性,并且,这些目的和计划必须有理论的支持,这 样,我们设计出来的程序才能够更优秀、我们的开发才更有效率,这样,我们的技术才能有所提升。为什么要学习程序设计呢?主要是,就算我们不用Flash的 ActionScript编写程序的前端逻辑,我们至少要把我们自己的Javascript函数、包的定义规划起来,避免将来自己或他人维护代码的时候出 现问题。程序设计能力,在技术人员仍然被看作是程序员的这个年代,是灰常、灰常重要滴。

成型阶段:

到了这个阶段,我也没什么好说的了,如果能达到这个阶段,就证明后续的成长之路是异彩纷呈的,是成为一个资深WEB前端工程师,还是成为一个资深WEB架 构师,亦或其他,都要具体分析自身的特点和兴趣所在。如果是资深的前端工程师,我觉得更重要的是去作新技术的研究,互联网技术发展速度日新月异,不断学习 新技术,否则就被淘汰。此外,我建议在知识的广度、深度方面最好能挑选一个自己最擅长和最感兴趣的一两个领域深入钻研,不要挑太多,多而不精。

WEB前端工程师如何做职业规划?的更多相关文章

  1. 想转行做web前端工程师,必学这6大技能

    web前端工程师是近几年才发展出来的新兴职业,也是目前火爆且高薪的职业.大需求的市场环境下,出现了越来越多的人群转行做web前端工程师,如设计师.后台程序员.网虫.大学其他专业.策划.编辑等等. 要学 ...

  2. 想转行做web前端工程师,必学这5大技能!知道是那些吗?

    web前端工程师是近几年才发展出来的新兴职业,也是目前火爆且高薪的职业. 大需求的市场环境下,出现了越来越多的人群转行做web前端工程师,如设计师.后台程序员.网虫.大学其他专业.策划.编辑等等. 要 ...

  3. 一个Web前端工程师或程序员的发展方向,未来困境及穷途末路

    如果你刚好是一个Web前端工程师,或者你将要从事web前端工作.你应该和我有同样的感慨,web前端技术到了自己的天花板,前端工作我能做多少年?3年或5年?自己的职业规划应该怎么样?收入为什么没有增长? ...

  4. Web前端工程师成长之路——知识汇总

    一.何为Web前端工程师?          前端工程师,也叫Web前端开发工程师.他是随着web发展,细分出来的行业.Web前端开发工程师,主要职责是利用(X)HTML/CSS/JavaScript ...

  5. 谈谈Web前端工程师的定位

    原文地址:http://www.360doc.com/content/10/0708/17/1277406_37692580.shtml 2010-07-08  锋子chans   阅 1116  转 ...

  6. web前端工程师在移动互联网时代里的地位问题

    支付宝十周年推出了一个新产品:支付宝的十年账单,我也赶个时髦查看了一下我的支付宝十年账单,哎,感慨自己真是太屌丝了,不过这只是说明我使用淘宝少了,当我大规模网上购物时候,我很讨厌慢速的快递,所以我大部 ...

  7. Web前端工程师成长之路

    一.何为Web前端工程师?        前端工程师,也叫Web前端开发工程师.他是随着web发展,细分出来的行业.Web前端开发工程师,主要职责是利用(X)HTML/CSS/JavaScript/D ...

  8. 如何成为一名优秀的web前端工程师(前端攻城师)?

    程序设计之道无远弗届,御晨风而返.———— 杰佛瑞 · 詹姆士 我所遇到的前端程序员分两种:第一种一直在问:如何学习前端?第二种总说:前端很简单,就那么一点东西. 我从没有听到有人问:如何做一名优秀. ...

  9. 如何成为一名优秀的web前端工程师(转给自己,共勉)

    来源:王子墨的博客 程序设计之道无远弗届,御晨风而返.———— 杰佛瑞 · 詹姆士 我所遇到的前端程序员分两种: 第一种一直在问:如何学习前端? 第二种总说:前端很简单,就那么一点东西. 我从没有听到 ...

随机推荐

  1. AgileConfig轻量级配置中心1.4.0发布,重构了发布功能

    加入 NCC 先说一个事,AgileConfig 在 7 月底终于通过了 NCC 社区的审核,正式成为了 NCC 大家庭的一员.这对 AgileConfig 来说是一个里程碑,希望加入 NCC 后能更 ...

  2. 源码解读Dubbo分层设计思想

    一.Dubbo分层整体设计概述 我们先从下图开始简单介绍Dubbo分层设计概念: (引用自Duboo开发指南-框架设计文档) 如图描述Dubbo实现的RPC整体分10层:service.config. ...

  3. IO流实现简单的文件的剪切

    思路: 判断 即将 复制的文件是文件夹还是文件 遍历需要复制的源文件夹 如果是文件夹,就通过流创建一个同样的子文件夹 如果是文件,就复制过去 接下来上代码 public class Demo1 { p ...

  4. 288 day05_异常,线程

    day05 [异常.线程] 主要内容 异常.线程 教学目标 [ ] 能够辨别程序中异常和错误的区别 [ ] 说出异常的分类 [ ] 说出虚拟机处理异常的方式 [ ] 列举出常见的三个运行期异常 [ ] ...

  5. python语言介绍及安装

    Python语言简介 Python是什么语言 Python是一种解释型的.可移植的.开源的脚本. 什么是计算机编程 计算机程序:为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合 如何 ...

  6. PHP设计模式之模板方法模式

    模板方法模式,也是我们经常会在不经意间有会用到的模式之一.这个模式是对继承的最好诠释.当子类中有重复的动作时,将他们提取出来,放在父类中进行统一的处理,这就是模板方法模式的最简单通俗的解释.就像我们平 ...

  7. TP5模型开启事务

    和Db开启事务类似,Db是静态方法 $userObj = new UserModel(); $userObj->startTrans(); try { $userObj->data($da ...

  8. Java面向对象系列(5)- 构造器详解

    构造器: 和类名相同 没有返回值 作用: new本质在调用构造器 初始化对象的值 注意点: 定义了有参构造之后,如果想要使用有参构造,必须显示的定义一个无参构造 IDEA快捷键: Alt + Inse ...

  9. delete,drop,truncate 区别

    今天看到一篇关于delete.drop.truncate区别的文章,认为写得非常好,转过来. 打比方很形象. delete,drop,truncate 都有删除表的作用,区别在于: 1.delete ...

  10. 『GoLang』语法基础

    标识符 字母或下划线开头 之后只能出现数字.字母.下划线 大小写敏感 Go语言关键字 break default func interface select case defer go map str ...