如何成为技术领袖_第1页
如何成为技术领袖_第2页
如何成为技术领袖_第3页
如何成为技术领袖_第4页
如何成为技术领袖_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.我很清楚地告诉大家,要成为技术领袖,技术是必要条件,但不是充分条件。如果 一个人技术基础不够扎实,他几乎等同外行,领导其他技术人员不说没有可能,但至少会 相当困难。另一方面我们在国内外都能看到不少拔尖的技术人员,有的是一流的科学家, 有的是一流的技术专才,可一旦把他们放在领导岗位上,却都以失败告终。他们虽然技术 出色,但是没有当领袖的能力,工作中四处碰壁,缺乏凝聚力,不得人心。 2.要成为技术领袖就要清楚公司的业务,知道技术应当如何配合业务需求。作为技术 领袖,只有做到这点,才能使公司业务有大的发展,才会得到高层领导的认同。如果你只 懂技术而不懂公司业务,或者你在大学工作而不懂领导教学科研,是没有办法胜任技术领 袖的。我们钻研技术的朋友往往忽略了这一点,对某项技术非常专注,但是两耳不闻窗外 事,没有把注意力放到公司的发展需求上来。 为了更好地协调个人职业发展与企业业务发展,需要处理好工作的优先级,分清主次。 在日常工作当中,我常常为同事画下面这幅图,帮助他们进行分析。 如果有一项工作摆在面前,我们如何定义它的重要性,应该花多少力气去做?我们可 以通过象限分析找出答案。第 I 象限表示此项工作对企业业务发展和个人职业发展都很重 要,这是最完美的结合,优先级应该放在最高级。我们在企业中应该多做此类工作。第 II 象限表示此项工作对企业业务非常重要,但是对个人目前的职业发展看似并不特别重要。 我们要以企业的利益为重,所以优先级应该放在第二位。第 III 象限表示此项工作对个人 职业发展很重要,但是对企业业务发展不那么重要,我们应该把它放在第三位。第 IV 象限 表示此项工作对企业业务发展和个人职业发展都不重要,优先级应该是最低的。对这类工 作,自己最好不做或者少做;就是做,也应该尽可能少花时间去做;或是请其他同事去做, 因为对你的个人职业发展不重要的工作不等于对其他同事的个人职业发展也不重要,换言 之,此项工作可能对其他同事的个人职业发展很重要呢。 许多企业都在创造一种文化,希望能将企业业务发展和员工的个人职业发展紧密结合 起来,尽管有时候很难兼顾。作为一名领袖人物,他一定更多地在关注大局,而不是仅仅 看到自己。关注大局的人会处处从公司的业务、公司的需求出发。在实际工作中我们常常 可以看到,一个真正把大局放在第一位的人,即便今天不是领袖,明天也一定非他莫属。 现在的领导不欣赏,将来必会为其他领导所赏识。 3.一个能把握大局的人需要具备很多能力,其中非常重要的一项就是我下面要谈到的 第三点决策力。作为技术领袖,要有坚强的领导能力,敢于面对各种困难的挑战,敢 于决断。有些人天生就有准确的决策能力,而更多人需要靠后天来培养。 在我的孩子还小的时候,我就给他灌输这种思想,培养锻炼他。如果他要问我,我就 让他自己做决定,不论决定是对是错、是好是坏,在我看来都是正确的。因为最大的错误 是该做决定时你举棋不定。再举一个例子,美国前总统布什刚刚上任的时候,很多人批评 他没有总统的风范,但是经过几年的洗礼他的确拥有了总统的气质。原因又是什么呢?因 为那个职位训练了他,很多情况他必须要做出决策。 对于程序员来说,虽然无法像领导那样做重大的决定,但仍然可以在自己的范围内做 出决策。例如使用什么样的技术手段, 采用何种算法实现, 选择哪种数据结构,如何撰 写文档,同谁一起合作,这些并不一定非要等老板或者构架师来判断。大家应该有意识地 锻炼自己,慢慢成长,直到将来能够领导大的项目。每个人不可能一开始就能对一个完整 的系统做出决策,可是如果不从当程序员的时候就开始锻炼自己,将来也做不了。 面对决策失败可能带来的后果,我们应该学会坦然面对,学会承担。如果不去做决策, 不愿承担责任,就永远无法取得进步,无法获得做技术领袖的能力。 4.要想成为技术领袖必须有远见,有智慧。有远见有智慧的人才能有承担。我有一个 在加拿大的同事,开始的时候只是一般的技术人员,很短的时间内就变成经理,再后来没 有经过多长时间又被提升为主管。原因很简单:他有远见,并且有足够的智慧知道应该如 何去做。像他这样的员工虽然刚开始的职位很低,但是公司领导觉得这样的人才对公司将 来的发展大有帮助,另外,如果这样的员工离职,不但是公司的损失,还会助长竞争对手 的实力。所以公司一旦有职位就会提升这样的员工。我们作为技术人员也是一样的道理, 面对一套大的系统方案,只有穿透障碍看到未来,才有机会获得提升,成为技术领袖。 5.成为技术领袖需要自信、自觉和自律。自信,这和领导能力有关,没自信怎么来领 导别人呢?自觉包含两个方面的内容:自我感知和自我解嘲。自我感知是要对自己有一个 正确的评价,“人贵有自知之明”我们老祖宗都这样讲。有些人不知道自己的情况, 要么估计过低,要么估计过高,对自己没有一个公正的评价。很多事情要靠下意识的感觉, 你可能并不知道具体发生了什么事情,但是凭感觉就能判断出对错。自嘲是能给自己台阶 下,这很重要,往往很多人都做不到,一不小心就陷入骑虎难下的境地。另外对自己有一 个正确的评价,才不会弄得自己下不来台。 自律就是要约束自己,保持良好的品行。自律不是做给别人看,也不是做给领导看, 而是为自己而做。每个人心中都应该有把标尺,衡量什么事情该做,什么事情不该做。自 律很关键,年轻人尤其应该加以重视。有好的人品才会得到大家信任,如果不自律,没有 良好的品行,有谁会对他心悦诚服,又怎样来做大家的榜样呢? 6.勇于承担,敢于付出。也就是说一个人的工作既不是为了金钱,也不是为了名誉, 单单只是为了实现自己人生的价值,获得成功。自己驱动自己,不畏艰难险阻,不达目的 誓不罢休。不愿意承担,不愿意付出,处处计较得失的人是没有办法成为领袖的。 这里所说的成功,并非单纯的职位上的成功,还包括技术上的成功,做人的成功等。 其中做人的成功最重要,往往却被最多的人所忽视。职位只不过是领导给的一个头衔,技 术领袖所具有的影响力并不是单单靠领导所给的头衔就能获得的。不管大公司小公司,很 重要的一点就是先做人。我认为衡量一个人是否成功,首先看做人,然后看技术,最后才 是职位、名誉、金钱。而且往往人和技术做好了,金钱名誉就会随之而来。正如诺贝尔奖 得主们无一人不是勤勤恳恳做事,假使一开始就想着名誉、奖金,或许他们永远都无法取 得举世瞩目的成就。 成功是一个很宽泛的概念,如何衡量成功是因人而异的。一般来说,成功是一个正态 分布的频谱,不是一个单脉冲。有些人拥有很高的职位、很丰厚的收入,但却没有家庭、 没有生活,因为他们把所有心思都放在了工作上,最终获得了事业上的成功,一个脉冲式 的成功。相对他们的度量标准来说是成功了,然而对另一些人来说,他们并不成功、或者 不值得效仿。因为事业成功只是一方面,除了工作,我们还有生活,还有家庭的维系、子 女的教育、八小时后的个人爱好。一个和谐的成功是一个频谱式的成功:也许没有哪一方 面是特别突出的,但是有几个方面是相当好的,其他方面也还可以,这样综合来看是最好 的。 7.能领会别人的感觉和想法,会与他人相处。一个拥有领袖潜质的人,往往能够很快 感知周围的氛围,别人的感受,他能够通过简单的语言、位置调整,使大家轻松舒服地投 入工作。 8.能把大家团结起来,人气旺。很多时候,某个人并不是领导,但是大家都愿意听他 的话,成了无冕之王,这样的人即便现在不是,将来也必然会成为领袖,这只是时间的问 题。 读者朋友们大多都是技术人员,但是大家不要被技术所束缚。我年轻的时候也走过弯 路,希望这些心得体会能对年轻的朋友们有所帮助。成为技术领袖并非遥不可及,只需要 比别人多付出一点坚定和执著,多注重先做人后做事。 真正的程序员真正的程序员 (一)国际:如何识别真正的程序员: 1,激情。2,自学好学。3,聪明 4,隐性的经验 5,技术多样性 6,资格证书 (二)一个真正的程序员是什么样子的: (1) 真正的程序员没有进度表,只有讨好领导的马屁精才有进度表,真正的程序员会让领导提 心吊胆。 (2) 真正的程序员不写使用说明书,用户应当自己去猜想程序的功能。 (3) 真正的程序员几乎不写代码的注释,如果注释很难写,它理所当然也很难读。 (4) 真正的程序员不画流程图,原始人和文盲才会干这事。 (5) 真正的程序员不看参考手册,新手和胆小鬼才会看。 (6) 真正的程序员不写文档也不需要文档,只有看不懂程序的笨蛋才用文档。 (7) 真正的程序员认为自己比用户更明白用户需要什么。 (8) 真正的程序员不接受团队开发的理念,除非他自己是头头。 (9) 真正的程序员的程序不会在第一次就正确运行,但是他们愿意守着机器进行若干个 30 小时 的调试改错。 (10) 真正的程序员不会在上午 9:00 到下午 5:00 之间工作,如果你看到他在上午 9:00 工作, 这表明他从昨晚一直干到现在。 看看这些文章,比较一下吓我一跳,原来以为自己可以成为一个真正的程序员,其实很多都达 不到。不过还是不甘心,心想真正的程序员有这么多要求吗?判定起来这么麻烦吗? 这么多文章来阐述这个问题,而各不一样,既然大家各有说辞,而 wikipedia 上也没有明确定 义,说明这个问题没有真正的定义,所以我看是一个智者见智,仁者见仁的问题了。 我窃喜:说不定自己还是个真正的程序员呢。我得找一个利于自己情况的定义,终于想到了一 个定义: 成为软件高手的几个忌讳成为软件高手的几个忌讳 1 1) 不会英语不会英语:CS 源于美国,重量级的文档都是英文的。不会英语,那么你只能忍受拙劣的翻 译和大延迟的文档(翻译出来的文档几乎都是很久以前出版的东西)。 2 2) 急于求成急于求成:什么都没学习就开始编程是最大的机会。写 C+程序语法都能错,数据结构连 线性表都不知道,数据库不知道关系模型,TCP 编程不知道 socket,还是先坐下来学习几年再 说(如果说工作急需,我只能说:早干嘛去了) 3 3) 过于好问过于好问:勤学好问是一种很好的品质,但是如果把勤学丢了,只留下好问,就是一个恶 劣的素质了。事无巨细都去请教别人,一则会让人厌烦,二则由于没有系统学习过程,也是不 可能学习好的。 4 4) 只会艳羡别人和说别人不该拿那么多钱,而自己却收入微薄只会艳羡别人和说别人不该拿那么多钱,而自己却收入微薄:老实说,绝大多数情况下, 收入的高低和你的水平是有正相关关系的。不是否认有关系的存在,但是绝对不会 10 个人中 9 个人有关系而独独你没有。少抱怨一些多学习一些,提升自己才是最重要的。 5 5) 过于不求甚解和过于求甚解过于不求甚解和过于求甚解。了解为什么是很重要的,但是要学习的东西很多,如果什么 都弄明白,那么估计头发白了还没有找到所有答案。当然如果什么都不想细致了解,那么只能 去做蓝领了。 6 6) 过分崇拜他人过分崇拜他人:我想信很多人都是很厉害的,值得大家崇拜,但是如果过于崇拜,把他们 的话当成圣经就没有必要了。你需要突破他们,而不是崇拜他们。 7 7) 不想吃苦不想吃苦:IT 业高收入和高竞争是联系在一起的。没有付出永远别想进步。 优秀程序员的优秀程序员的 1010 个习惯个习惯 1.1. 学无止境。学无止境。就算是你有了 10 年以上的程序员经历,你也得要使劲地学习,因为你在计 算机这个充满一创造力的领域,每天都会有很多很多的新事物出现。你需要跟上时代的步伐。 你需要去了解新的程序语言,以及了解正在发展中的程序语言,以及一些编程框架。还需要去 阅读一些业内的新闻,并到一些热门的社区去参与在线的讨论,这样你才能明白和了解整个软 件开发的趋势。在国内,一些著名的社区例如:CSDN,ITPUB,CHINAUINX 等等,在国外,建议 你经常上一上 去看看各种 BLOG 的聚合。 2.2. 掌握多种语言。掌握多种语言。程序语言总是有其最适合的领域。当你面对需要解决的问题时,你需要 找到一个最适合的语言来解决这些问题。比如,如果你需要性能,可能 C/C+是首选,如果你 需要跨平台,可能 Java 是首选,如果你要写一个 Web 上的开发程序,那么 PHP,ASP,Ajax,JSP 可能会是你的选择,如果你要处理一些文本并和别的应用交互,可能 Perl, Python 会是最好的。所以,花一些时间去探索一下其它你并熟悉的程序语言,能让你的 眼界变宽,因为你被武装得更好,你思考问题也就更为全面,这对于自己和项目都会有好的帮 助。 3.3. 理性面对不同的操作系统或技术。理性面对不同的操作系统或技术。程序员们总是有自己心目中无可比拟的技术和操作系 统,有的人喜欢 Ubuntu,有的人喜欢 Debian,还有的人喜欢 Windows,以及 FreeBSD,MacOSX 或 Solaris 等等。看看我的那篇其实 Unix 很简单后的回复你就知道程序员们在维护起自己 的忠爱时的那份执着了。只有一部分优秀的程序员明白不同操作系统的优势和长处和短处,这 样,在系统选型的时候,才能做到真正的客观和公正,而不会让情绪影响到自己。同样,语言 也是一样,有太多的程序员总是喜欢纠缠于语言的对比,如:Java 和 Perl。哪个刚刚出道的程 序员没有争论去类似的话题呢?比如 VC+和 Delphi 等等。争论这些东西只能表明自己的肤浅 和浮燥。优秀的程序并不会执着于这些,而是能够理性的分析和理心地面对,从而才能客观地 做出正确的选择。 4.4. 别把自己框在单一的开发环境中。别把自己框在单一的开发环境中。 再一次,正如上面所述,每个程序员都有自己忠爱 的工具和技术,有的喜欢老的(比如我就喜欢 Vi 编辑程序),而有的喜欢新的比如 gedit 或是 Emacs 等。有的喜欢使用像 VC+一样的调试器,而我更喜欢 GDB 命令行方面的调式器。等等等 等。程序员在使用什么样的工具上的争论还少吗?到处都是啊。使用什么样的工具本来无所谓, 只要你能更好更快地达到你的目的。但是有一点是优秀程序员都应该了解的那就是应该去 尝试一下别的工作环境。没有比较,你永远不知道谁好谁不好,你也永远不知道你所不知道的。 5.5. 使用版本管理工具管理你的代码。使用版本管理工具管理你的代码。千万不要告诉我你不知道源码的版本管理,如果你的 团队开发的源代码并没有版本管理系统,那么我要告诉你,你的软件开发还处于石器时代。赶 快使用一个版式本管理工具吧。CVS 是一个看上去平淡无奇的版本工具,但它是被使用最广的 版本管理系统,Subversion 是 CVS 的一个升级版,其正在开始接管 CVS 的领地。Git 又是一个 不同的版本管理工具。还有 Visual SourceSafe 等。使用什么样的版本管理工具依赖于你的团 队的大小和地理分布,你也许正在使用最有效率或最没有效率的工具来管理你的源代码。但一 个优秀的程序员总是会使用一款源码版本管理工具来管理自己的代码。如果你要我推荐一个, 我推荐你使用开源的 Subversion。 6.6. 做一个优秀的团队成员。做一个优秀的团队成员。除非你喜欢独奏,除非你是孤胆英雄。但我想告诉你,今天, 可能没有一个成熟的软件是你一个人能做的到的,你可能是你团队中最牛的大拿,但这并不意 味着你就是好的团队成员。你的能力只有放到一个团队中才能施展开来。你在和你的团队成员 交流中有礼貌吗?你是否经常和他们沟通,并且大家都喜欢和你在一起讨论问题?想一想一个 足球队吧,你是这个队中好的成员吗?当别人看到你在场上的跑动,当别人看到你的传球和接 球和抢断,能受到鼓舞吗? 7.7. 把你的工作变成文档。把你的工作变成文档。这一条目当然包括了在代码中写注释,但那还仅仅不够,你还需 要做得更多。有良好的注释风格的代码是一个文档的基础,他能够让你和你的团队容易的明白 你的意图和想法。写下文档,并不仅仅是怕我们忘了当时的想法,而且还是一种团队的离线交 流的方法,更是一种知识传递的方法。记录下你所知道的一切会是一个好的习惯。因为,我相 信你不希望别人总是在你最忙的时候来打断你问问题,或是你在休假的时候接到公司的电话来 询问你问题。而你自己如果老是守着自己的东西,其结果只可能是让你自己长时间地深陷在这 块东西内,而你就更本不可以去做更多的事情。包括向上的晋升。你可能以为“教会徒弟能饿 死师父”,但我告诉你,你的保守会让你失去更多更好的东西,请你相信我,我绝不是在这里 耸人听闻。 8.8. 注意备份和安全。注意备份和安全。可能你觉得这是一个“废话”,你已明白了备份的重要性。但是,我 还是要在这里提出,丢失东西是我们人生中的一部份,你总是会丢东西,这点你永远无法避免。 比如:你的笔记本电脑被人偷了,你的硬盘损坏了,你的电脑中病毒了,你的系统被人入侵了, 甚至整个大楼被烧了,等等,等等。所以,做好备份工作是非常非常重要的事情,硬盘是不可 信的,所以定期的刻录光盘或是磁带可能会是一个好的方法,网络也是不可信的,所以小心病 毒和黑客,不但使用软件方面的安全策略,你更需要一个健全的管理制度。此外,尽量的让你 的数据放在不同的地方,并做好定期(每

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论