小练习:(15)从小工到专家

很多人都会问”个人技能如何快速提高,如何成为专家?“之类的一些问题,《程序员修炼之道》由一系列独立的部分组成,涵盖的主题从个人责任、职业发展,直到代码、架构技术,感兴趣的可以自己去看看那本书,本篇我不做介绍,而更多的是从我自身的一些成长路线和体会来谈,算对自己工作多年的一个阶段性总结,放上来希望即使不能帮助你也不致于误人子弟,如果我的成长阶段能够给你带来一些指导,那就更好不过了。

为何想到写这篇文章——从育儿话题展开

  1. 壮壮现在快8个多月了,老婆也开始关注孩子教育问题了。她上周读了一本最近很畅销的书《好妈妈胜过好老师》,里面提出“孩子之间的差距其实就是家长间的差距”,而且从小应该养成孩子良好的学习习惯和阅读习惯。老婆觉得这本书的育儿讲得很好,晚上回来也将其中的一些理论跟我探讨,并要我好好想想我是如何修炼的。我以为她是在夸我,而她关心的是我的成功经验能否复制在宝宝身上,让他从小养成爱学习的好习惯,教育他学习的技巧,比如如何阅读啊?如何保持学习的热情啊?如何一步一步达到像爸爸这样自主学习的境界啊?希望我的经验跟老婆及大家分享,共勉一下,同时也献给我那可爱的儿子,希望他长大后也能看得懂爸爸的文章,复制dady的成功哦!  这让我有点为难,因为我还从来没有认真的思考自己,认识自己呢。这也成了敏捷个人雏形的“导火索”:)         
  2. 经常有同事或者网上朋友会问我如何能够达到独立架构的能力。这其实也是一个学习的自然过程,而告诉别人该怎么做时,我想还不如拿自己是如何做的告诉别人,因为你要觉得好的你自己就会去做,否则说些自己都没有做的等于欺骗别人,同时也是欺骗自己。在成长阶段,有一种是从入门级到大师级,而我自认为离大师级别还有很远差距,而《程序员修炼之道》中副标题“从小工到专家”倒还适合我,所以本文也就借用了这个副标题,回忆一下我是如何从小工到专家的,希望对项目组相关人员有所帮助。
  3. 除了本身工作之外,我一般会在一个时期关注一个主题,本期主要是在个人管理上的思考和总结,基于上面两点,所以也就促成此文。

每个人都要认识到自己是个管理者

卓有成效的管理者》中把管理者定义为对组织负有责任,能影响组织经营成果的人。从这个定义中我们可以看书,其实人人都是管理者,最基本也算是自己个人的管理者。而作为管理者,就必须卓有成效,而卓有成效又是可以学会的!这也是此书的三个基本观念。本篇不打算对此书做详细介绍,放在这里这是想说明,每个人作为管理者,都可以通过学习实践不断提高,能够学会卓有成效。可以学习的东西很多,如 唐骏在《我的成功可以复制》定义了“ 成功4+1”(4分别代表智慧、勤奋、激情和机遇,1代表性格),而更重要的是我们要认识到管理自己的人不是别人,而是自己。

马斯洛需求层次

上图是人的需求层次理论,从最基本的生理需求、安全需求、社交需求、尊重需求到最上面的自我实现的需求,开发人员其实也是围绕这些需求的。我之所以毕业来到广联达,是因为公司给我们安排住宿,工资比另一个公司多了500元:)工作后凭着自己的努力,也得到了大家的认可,从程序员到开发组长、开发经理、项目经理,后来为了实践自己的一些开发思路以及个人兴趣,成为技术专家,转为平台开发,到现在一直致力于信息系统平台的开发,只要有机会我都会思考如何进一步实践我的想法。

这几个需求层次,我认为影响因素更多的是从外因转向内因的影响,这样符合我的成长。开始工作时,我更多的在意自己的技术学习进度是否能够适应项目组需要,工作几年后希望领导同事认可我,现在我更多的是在结合公司和个人的需要实现自我的一些开发想法,也就出来了OpenExpressApp

从复用层次看技术发展路线

下图是我对复用层次的一个理解,我的技术之路也是随着这个横轴演进的:

  1. 函数/类:1-4年(我的时间仅供参考,如果有人指导,这个时间会缩短很多)
    当时会把重复的代码用一个单独的单元或者类来归集,形成了函数/类的方式重用
  2. 模块/引擎:5-6年
    对工作流引擎、报表引擎等通用模块进行研究,06年6月开始实现报表引擎,9月底完成主要底层功能
  3. 框架/平台:7-…年
    开始OpenExpressApp开发平台的思考,09年下半年有机会开始实现一部分内容,由于平时关注较多,6月开始,7月底实现了C/S框架基线

以上是对开发技术和方法中重要的概念【复用】的一个理解过程,也反映了我在开发技术上的一个进步,我觉得这个复用技术路线也值得技术人员参考,理解上我相对来说时间比较长,我有些网友工作也就二三年,但是已经具备了这些思路了,所以这个时间就看个人的努力以及大家的工作环境了。

个人管理

我的成长不是因为我聪明,更多的是归功于我的努力和坚持,前一阵子对自己的个人管理的进行了一些深入的思考,感兴趣可以参考一下,后续还准备加上一些听、说等内容。精通学习的人会学习技巧、原理与理论,然后形成一种潜意识。对于多年的坚持学习,我已经把学习作为了一种习惯,但还不够,希望哪天也能领悟潜意识是什么概念。

时间管理

时间是公平的,不可能因为你漂亮你就一天拥有30个小时,除非你是神仙。虽然我们不能定格时间,但是我们可以通过管理自己。这里单独从个人管理拎出来时间管理,是因为前面没有单独写,而时间管理又很重要,并且对时间管理的理解也能说明技术人员的成长之路。

  1. 不重要但紧急:0-1年
    刚开始工作时,对工作知识的掌握和认识都不够,走运的会有较好的学习环境,不好的只能自己独自学习。由于能力问题,不能独立承担大块的开发任务,这时候做的任务大部分是紧急不重要的,有的还是不重要不紧急的。
  2. 紧急而重要:1-n年
    工作1-2年后,随着学习和应用的深入,对技术的掌握很不错了,这时候已经成为开发主力,开始做很多重要而紧急的任务了
  3. 重要不紧急:??视环境而定
    做重要不紧急的事情一般需要公司或者组织的支持,而对什么是重要,什么是紧急的事情上,达成统一理解都比较困难,所以想做重要不紧急的事情只能视情况而定。技术人员在成长过程中一定需要把事情进行合理的归类,根据自己所处的阶段合理接受所做的事情,不能还处在初级阶段就想着公司给你做重要不紧急的事情。

守-破-离

 创造发展剑招的过程,有守、破、离三阶段。

最初学剑时固须顺从老师所教,把它熟练体会,变成自己的东西,

以后突破老师的教导原则,招式心法,

而如有新的心得,则离开师傅,创成新招。 ”

                                  宫本武藏 《五轮书》

 

  • 对0-1年技术人员发展的建议 (守)

0-1年属于刚参加工作或者刚加入团队的成员,经验一般都不足,主要发展还是从项目任务需要着手,从需要指导变为能够独立承担任务并担当负责:

  1. 会用工作中所用的技术
  2. 掌握工作中所用的技术
  3. 精通工作中所用的技术
  • 对1-n年技术人员发展的建议(破)

这个时期的技术人员都已经具备一定的工作经验,这时候主要发展是成为项目开发主力,独立承担大块任务

  • 对工作多年的技术人员发展的建议(离)

经过多年的磨砺,已经掌握的丰富的知识,拥有自己的很多想法了,这个时候需要突破自己,勇于创新,我们需要做的是:在很多情况下将自己定位在一个更高的层次上去看问题,要把自己的视野拓宽,做事时要回归应有的定位。

依赖-独立-互赖

很多人会问如何发展,其实我认为很简单,如果我进入一个不熟悉的环境和工作,从我踏入这一步我就知道我近几年的目标,那就是聚焦与当下,掌握好需要用到的知识、方法和技术,从依赖到独立(参见《高效人士的7个习惯》),逐步成为能够承担任务的人,再逐步到互赖期,承担更大更大范围的任务。面试过一些人,都说以后想做架构师,但具体一问,又不知道架构师干什么的!?脚踏实地,从无到有,当你从依赖转为独立后,你自然会找到自己更远的目标和方向。

我的关注方向

下面我画的是软件的几个重要维度(参考BAPO),个人管理系列只是组织中的一部分,OpenExpressApp属于架构的技术架构部分,Scrum属于过程部分。软件是什么?这是我近几年的一个关注方向,不知是否有同道中人?

小练习:(15)从小工到专家》上有7条评论

  1. 昨天会议一个分管领导总是再打击我们,事实真相是残酷的,我们只有一个发展方向那就是多学习。学习是有技巧的,类似依赖独立互赖的阶段。

  2. 兴趣是最好的老师,坚持,在一个领域坚持持续的学习,掌握好的方法,高效的学习成长。

  3. 一、自我管理:
    1、《卓有成效的管理者》:人人都是管理者,都能学会卓有成效。
    2、唐骏在《我的成功可以复制》定义了“ 成功4+1”(4分别代表智慧、勤奋、激情和机遇,1代表性格)

    二、个人发展:
    1、马斯洛需求层次:
    生理的需求-安全的需求-社交的需求-尊重的需求-自我实现的需求
    个人管理: 学习(读书)、时间管理
    2、剑招创新:守-破-离
    3、《高效能人士的七个习惯》:依赖-独立(个人的成功)-互赖(公众的成功)
    当你从依赖转为独立后,你自然会找到自己更远的目标和方向
    参考:http://blog.sina.com.cn/s/blog_4d8008e80100wzho.html
    人类成长的三个阶段,分别为依赖期、独立期、互赖期。
      ●依赖(dependence)期:围绕着“你”这个观念——你照顾我;你为我的成败得失负责;事情若有差错,我便怪罪于你。
      ●独立(independence)期:着眼于“我”的观念——我可以自立;我为自己负责;我可以自由选择。
      ●互赖(interdependence)期:从“我们”的观念出发——我们可以自主、合作、统合综效,共创伟大前程。
    依赖心重的人,靠别人来完成愿望;
    独立自主的人,自己打天下;
    互赖的人,群策群力以达成功。
      如果生理上无法自立,例如身体有残缺,便需要别人的帮助。假使情感不能独立,价值观与安全感建立在别人的评价上,一旦无法取悦别人,个人便失去价值。若是知识上无法独立,就得依赖旁人代为思考,解决生活中的大小问题。
      相反地,生理上独立的人可以畅所欲为;心智上独立的人可以有自己的思想,兼具抽象思考、创造、分析、组织与表达的能力;情感上独立的人能够肯定自我,不在乎外界的毁誉。
      由此可见,独立比依赖成熟得多,不过独立并非个人成长的极致。只可惜当前的社会价值观将独立奉为圭臬,大多数励志修身的书籍与文章都过分强调独立,仿佛沟通、团队精神并不重要。其实这多半是对依赖观念的矫枉过正,为避免受制于人而反抗。

  4. 每个人都是从初学者开始,慢慢积累经验,精通自己所在领域知识,然后经过长期的努力最后成为专家。这个过程根据每个人的意识和专注不同有长有短,还有的一直呆在原地止步为前。老师讲的非常好,想从小工成为专家,就得这样日复一日的坚持学习和思考。

  5. 复用层次看技术发展路线:1、函数/类:1-4年,将重复的代码用一个单独的单元或者类来归集形成函数/类的方式重用2、模块/引擎:5-6年,对工作流引擎,报表引擎等通用模块进行研究3、框架/平台:7-…年,对开发平台的思考。这是对开发技术和方法中重要的概念(复用)的一个理解过程,是开发技术上的一个进步,是技术人员可参考的。
    发展目标:聚焦于当下,掌握需要用到的知识、方法和技术,从依赖到独立,成为能承担任务的人,逐步到互赖期,承担更大的任务。脚踏实地,从无到有,从依赖转为独立后,自然会找到自己更远的目标和方向。

发表评论