⑴ 如何建立一支功不可战无不胜的团队
个人与团队的关系
个人与团队是相辅相成的,团队的发展能拉动个人的发展,同样个人的发展也是推动团队前进的重要源动力。这是每个人要时刻记起的,团队不是团伙,我们选择了在一起是要成就一番事业的,是要成就每个人的梦想的,而不是聚集到一起为了赚生活费的。这就使得我们这个团队一定不是靠江湖义气才聚集的,历来没有靠江湖义气能够成就伟大事业的,水浒传的故事就是最典型的案例。
团队与个人知识的积累和完善是重要实践历程
毋庸置疑,知识的积累和完善是需要学习的,但是这种学习一定不是说大家去看某一本书或者某种教条就能实现的。当然,读书学习是我们这辈子作为受过教育的人一辈子的事情,也是不想在这个知识爆炸时代掉队必须要做的事情。更重要的是,要从实践中去检验我们所学的是否正确,最简单的每个做开发的人都会发现有些教程上给的实例落后了或者根本就是错误的,做设计的人发现课本上学的东西做出来的页面没能完全符合开发的需求。这都是在实际的动手过程中才发现的。
当然,我们也不是要用一个“看书+动手+总结”这样一个简单的模型来指导自己的学习,这个模型太过于狭隘了。我们要建立学习型的组织,其中“动手+总结”这部分是不需要修整的,而需要扩充“看书”这部分的内容。首先,我们说的“看书”就是指学到最基础的原理,这是我们给看书的定义。事实上,在实际的工作过程中我们需要基于前辈的成果上去运作的,像牛顿说的那样:我们的高度真正取决于我们站在哪个巨人的肩膀上,而不能完全靠一己之力。这有个前提,我们需要知道前辈取得成就的真正原理,并有一定的实验求证。那么真正用的多的模型是“拿来+求证+发展+总结”。而要做到这一点,是需要我们时刻保持谦卑的心态的,要不得半点骄傲的。
我们之前也谈过:人类之所以有今天,就是因为善于实践、归纳和借鉴。打个比方说:很小的时候,吃过一次糖之后,那就能知道甜是个什么味道,就会能对被称为甜食的食品中做出大概的判断。能做这种判断的前提就是我们进行过“吃糖”的实践。这个过程中,“吃糖”就是实践,“甜”是归纳的结果,而对甜食的判断就是“借鉴”。“吃一堑长一智”这句古语也是阐述这个道理的。“吃糖”的的例子很容易被人理解,但我们要知道这种层次的学习方法是低层次的,是初级阶段的。我们更多的所需要的通过实践才能获取的知识是间接获得的,比方说我们知道一加一等于二,至于说为什么等于二不是每个人都要考虑的事情,这是不需要我们求证的真理。再比方说,一个优秀开发团队是有大量可复用程序和组件的,一个优秀的程序员是要熟知和掌握大量这样的知识的,这是对经验的归纳和应用。对于经验的归纳和应用是需要测试和求证的,否则会付出代价的。
说到的这些问题正是我们团队内正在发生或可能会发生,具体的就可以说我们要原创还是要抄袭。不管对于设计还是开发都面临这个问题。在以上我给出了建议的工作方法,简单概括就是:我们需要知道基础的原理,并对这些原理做过大量的实验,做到精通;对于项目,要学会借鉴和使用成熟的知识。也就是不要犯不知道一加一等于二的错误,也不要犯去求证为什么一加一等于二的错误。同理,随着我们团队知识体系的完善,不要每遇到一个项目都要从第一行代码写起和从一个基础的页面元素设计还要做创意工作,也不要做完一个项目了还没有完全掌握下载的源程序和不理解别人的页面元素为什么那么设计。
以上说的是个人的知识积累和完善,个人的知识积累和完善顺利的进行了,那么团队的知识和积累就变得超级简单了,算法也很简单:每个人知识相乘起来就是我们团队的知识,特别需要注意的是这里不是一个相加的结果。
项目从小到大是在持续的实践和总结中发展得来的
我们的项目正经历着从无到有或者从小到大,从低级到高级的发展过程中。这个过程中我们不断在实践,不断在总结。这是一个循序渐进的工作,是需要我们经历一个从感性的认识到理性归纳的过程,然后循序渐进的向前发展。
我们每个人加入这个团队从第一天截止到今天,所了解到的是这是一个开放的团队,我们每个人都很有战斗力,团队很有战斗力。这就是感性的认识,这点说明我们的项目还处于萌芽状态,我们的团队还处于初级阶段。我们的项目需要壮大,我们的团队需要向高级阶段发展。这要求我们要实事求是的做到理性的归纳。
首先,战略的目标认识是否清楚是决定我们能做多大的基础。比方说,发诱网这个项目的战略目标是帮助因头发问题而烦恼的人找回美丽和自信,让他们不再为此烦恼;再比方说,铁搭档的战略目标是帮助机械行业的人解决工作上的一切问题。我们能否时刻牢记我们的目标呢?又是否意识到我们所从事的事业将会改变很多人的命运呢?
其次,我们要清楚的知道单靠感性的认识和一时的冲动难以把事情做好,真正想做好就要把眼光放得长远一点,要正确的设计里程碑。例如,到今天我们都知道了项目阶段性收官的繁琐,设计上不再有出效果图时的那种成就感,程序上不再有做出大流程时的那种兴奋。我们所进行的工作看起来就是修修补补,中间涉及到一个问题就是我们感觉这个阶段进行的工作是重复性工作,不停的调试代码然后刷新查看效果是否合适。为什么会因此感到烦恼呢?是我们的里程碑设置出现了问题,我们的里程碑是做出一个产品,如果换一下思路:做好一个产品。那还会为此烦恼吗?我想不会的。这就像一个铸剑师,如果把圆钢材放到火里烧透了,然后抡起大锤一通猛砸,打出剑锋与剑刃,然后蘸火再打磨一下,一把剑也就出来了,但这一定不是一把好剑,而这个铸剑师也一定不是合格的铸剑师,仅仅是个铁匠而已。铸剑大师一定是会把把一节圆钢材放进火里烧透了,拿出来打造一番,还要再放回去烧,再拿出来打造,这个过程要重复很多次,直到足够精致了,才会精心的进行蘸火的。经过这样的工艺才有可能出来宝剑。
再次,理性的归纳才能总结出来可以知道我们今后工作的理论。感性的认识到的东西我们并不能马上理解它的本质,感性认识到的仅仅是表面现象。比方说我们都认识到了这个团队是个开放的团队,是个有战斗力的团队。但具体的,快乐和富有战斗力对我们的目标有什么影响呢?具体又会体现在哪些方面呢?就不得而知了。只有上升到理性层面,从表面现象中归纳总结出有意义的理论来,充实到我们团队的知识库里,并用来指导我们实际的工作时才算找到了它的本质。知道了这一点,解释我们的开放和富有战斗力就简单了:我们是有理想的团队,脱离了低俗的追求,我们清楚的知道为什么而奋斗,开放会为我们带来快乐,快乐也是源于奋斗的过程的,同时这种快乐更好的激发了我们的激情。我们这个从小到大的过程中,很多事物都是要经历这样从感性的认识到理性的归纳的,并且要充实我们自身和团队的知识库。知识库一定是实实在在的,比方说,开发有没有建立起完善的文档体系以及工作的规范?设计有没有想法总结和制作设计和制作的标准?物流有没有完善管理?行政有没有着手迎接更多新同事的准备?这些今天看起来无关紧要的事情做好总结归纳了,明天一定是我们事业发展的重要知识。
最后,需要深刻理性的知道,我们的项目在划定的圈子里称第一有很大成分上是我们自封的,还没有充分得到市场的认可。首战必胜也还只是我们的目标,并没有实现。我们和这些常被用来鼓励自己的目标尚有差距,差距需要靠坚决的实践能力脚踏实地的走过去。要做到让众多和我们接触的人和了解我们的人真正对我们竖起拇指,做出发自内心的鉴定:这群人,能成!要做到让同行传播我们是第一!再此之前,我们不能妄称第一。
绝对正确是存在的
在传统的知识结构里,正确总是相对于错误的,也就成了相对正确,所以做事过程中我们习惯了把相对正确作为标准和目标,而忘记了对于我们的人生还有绝对正确的存在。事实上,每个事情都是有绝对正确的,而对于一家企业最求这样的目标要付出实实在在的努力的。比方说Google一个“不作恶”的绝对正确目标要付出多大的努力和代价。
首先,做相对正确的事情时要选择正确的相对的标准,这个相对的标准就是我们战略总目标。现实中,我们看到很多项目最后失败了,但参与的每个人都觉得自己负责的模块做正确了。这种案例中参与的人大部分在评价自己的工作时都是采用了错误的相对标准。还拿我们熟知的发邮件案例:我们告诉了同事帮忙发一个邮件,同事进行了发的操作,但是收件方最后没收到邮件。这个失败的结果下,我们可以说我某某帮我发过邮件了,而同事也可以说我是发过了啊,乍一听起来双方都没错误,都做对了,那只能归结到网络问题的不可抗因素上,双方的正确是典型的相对正确。事实上真是不可抗的因素造成失败的吗?答案肯定不是。原因就在于用错了相对的标准。
其次,明白无数的相对正确叠加到一起就是绝对正确。而这个绝对正确就是我们的战略目标。这个目标也一定是靠我们各位的努力实现的。实现这个总目标的道路上是需要建立一个个的里程碑的,而构筑每个里程碑又是由每天的小目标来实现的。对于小目标的实现就要建立标准,做正确了做好了才算实现了,这个正确就是相对正确。“每天进步一点点”就是这个道理。
最后,认识到绝对正确的存在性,我们才能在实践和完善理论的道路上走得足够的坚决,不至于迷失自我,失去斗志。追求我们的绝对正确是有助于实现我们个人的梦想和价值的。每个人都是有梦想和自己的价值观,实现了梦想和价值对我们个人而言就是绝对的成功。
总之,我们每个人要在实践中摸索可为与不可为的经验,积累和完善个人与团队的知识体系。最终,要用我们自己独有的知识体系指导我们这个团队的行动,又在行动中积累和完善我们的知识体系,实现良性的循环。在这种实践过程中,我们要有一种“不入虎穴焉得虎子”的实践精神,就像追求首战必胜和首攻必克一样,要用众多的胜利铸就我们的常胜团队!
⑵ 如何打造高效的研发团队
高效的软件开发团队是建立在合理的开发流程及团队成员密切的合作的基础之上的,成员共同的迎接挑战、有效的计划、协调和管理各自的工作以至完成明确的目标,高效的开发团队具有如下特征:
1、 具有明确且有挑战性的共同目标
一个具有明确的而且有挑战性目标的团队比目标不明确或不具有很大的挑战性目标的团队效率高得多,通常技术人员往往会因为完成了某个明确的任务,而且这个任务的完成具有挑战性的意义而感到自豪,反过来团队成员为了获取这种自豪的感觉而更加积极的工作从而带来团队开发的高效率,如作为系统设计人员很清楚的知道在什么时候要做到什么,什么时候开始做,什么时候必须完成,为了完成工作必须面临哪些挑战,怎么解决这些困难等为设计出一个高质量的软件项目提供了重要保证,而模模糊糊的去设计一个系统或模模糊糊的就去编写代码是非常危险的,而且会为此付出高昂代价,因此高效的软件开发团队具有挑战性的共同目标。
2、 团队具有很强的凝聚力
在一个高效的软件开发团队中,成员们凝聚为一个整体共同进行工作,他们是相互支持、互相交流、互相尊重的,而不是相互推卸责任、保守、相互指责的,在一些散乱的开发团队中往往存在这样的问题,一些程序员是比较保守的,明明知道另外的模块中需要用到一段与自己已经编写完成但有些难度的程序代码,他也不愿拿出来给其它程序员共享,不愿与系统设计人员交流,这样给项目的进度造成了些不可度量的因素。
⑶ 刚毕业的程序员该如何融入到团队中
首先你得有一台配置很高的电脑,充分发挥你的聪明才智,平时多与同事们沟通交流,不是说程序员就是不用说话,那当然不是的了,在出色做好自己工作的同时多多和其他同事交流。
⑷ 如何带领好一个软件开发团队
我记得10年前在cisco的一个面试, 几个问题记忆尤深:
1) How do you recognize the contribution of your team member?
2)Can you remember the name of your team member's other part?
还记得大胡子CEO讲的一句话,一个团队重要的是公平, 我觉得追求公平这是
人的天性。 我个人经验, 公平是目标, 平衡是手段, 沟通是工具。
软件开发团队的难点在于你如何评估每个人的贡献, 不容易。 单纯的代码量是没意义的。
一个简单的修改后面可能是几天, 几星期, 甚至更长时间的辛苦工作。 我曾经听到过抱怨,
老板问改动了多少, 哥们回答道1行, 老板问要这么长时间?
所以好的软件部门经理或项目经理, 要有sense,这是行业经验积累来的。 还有就是沟通,
全面的沟通, 超出工作范围的沟通, 沟通是弥补行业经验的手段。
软件开发团队人的因素很强, 每个人就是一部”生产机器“,很多脾气很大, 不好沟通。作为leader重要的是从哪里, 哪方面为他们提供帮助, 我想除了技术之外还有很多, 你可以从这方面作为出发点。比如职业规划, 比如人际关系。
一点拙见, 希望有帮组。
⑸ 怎么做一个好的程序员
想成为一名优秀的程序员,往往需要具备以下特质:
1、始终保持工作热情
只有热爱才能做好一件事。尤其对于技术人员来说,程序员经常对着电脑一坐就是七八个小时,有时候赶项目还得在公司熬夜加班。如果不是真的热爱这份工作,光靠赚钱这个驱动力肯定是不足以支撑下去的。如果你每天都是一副上班比上坟还沉重的样子,哪怕你的技术水平再高,你的状态也很难好到哪里去,更不可能做出一个好的产品来。
2、提高学习能力,不断提升专业水平
新技术层出不穷,每个程序员都必须坚持学习。只有不断学习才能不断提升。在空余时间多掌握一些工具,多学习一些技术语言,技多不压身嘛。而且技术都是相通的,多学习一些新东西,会让你更融会贯通。这样既可以提高自己的工作效率,也能提升自己的职场竞争力。
3、加强沟通能力,避免无效的工作产出
下手写代码前必须明确产品的目标和需求,如果有不理解的,一定要及时跟上级进行沟通,必要时还可以从技术层面给产品和老大提出优化意见。切忌光敲代码不思考,这样很容易做无用功。
只要能做到以上三点,你未来的发展空间会更大,也相信你一定能找到适合自己的平台!
⑹ 如何做好软件项目的团队管理
决定项目成败的不仅仅是范围、成本、进度的计划多么完美,而是团队是否能高效的工作。说到项目管理,很多人都会记得范围管理、成本管理、进度管理,这些都是衡量项目成败的要素,重视对这些要素的管理,无可厚非,但却忘了一个根本的问题,那就是:所有的这些目标都将是团队来完成的。计划做的再好,没有人去实现,或者没有忠诚的成员去实现,那岂不是空谈。
或许跟其他的项目不同,软件项目彻底是"以人才为核心"的项目,项目的主要成本来自于人力成本、项目的进度完全由成员决定,因此,在软件项目中,对团队的管理不仅仅是对进度的保障,更是对项目质量、项目成本的保障。团队管理才是软件项目管理中的重中之重。
然而,软件项目中的项目经理往往缺少团队管理的意识,这可能跟他们的发展历程有关。软件行业中,很多项目经理都是从程序员做起来的,我们都知道,程序员的职业发展规划路径都是"程序员--高级程序员--项目经理"。而串起这条职业路径的线,就是技术,这就导致了只要技术高,五六年自然都发展成为项目经理了。而软件的技术高手在沟通方面都普遍存在很大的问题,他们不善于跟团队成员交流、不善于人际关系、不善于鼓励与倾听,他们都喜欢独立的研究技术问题,在大家的记忆里,很多电影里,软件高手就是那种一个人可以破jie国家安全密码的人,他们往往不可能是整个团队的管理者。
⑺ 一名程序员如何融入一个团队
原因是:“平时只喜欢一少部分人,也只有一少部分人喜欢我”
说明:如果大部分人都喜欢你,愿意和你交往,只有个别人不乐意和你交往那么有可能问题出在别人身上;现在只有一少部分人喜欢你,那么问题肯定出在你身上的。所以你要做的第一件事情就是先主动和别人交往,在交往的过程中,你会漫漫感悟到其中的奥妙........
仅供参考,呵呵
⑻ 如何组建优秀的APP开发团队
组建一个优秀的团队,除了需要优秀的个人能力外,还要注重团队协作。提升团队短板,人员不要经常流动。
另外也可以使用一些办公软件来提高工作效率,敬业签是一款功能比较全面的桌面便签软件,分为个人便签和团队协作便签。
作为一名团队便签的成员,都可以很清晰的看到自己所在的团队便签中记录的内容,作为一名管理者,可根据需求的不同,将记录的内容指派给团队便签成员。
而团队便签的提醒功能可以团签成员在指定的时间接收到提醒,也可以在团签内容编辑好之后选择立即推送提醒、10分钟后、60分钟后和12小时后向指派成员推送给提醒。
为了方便查看工作进度,被指派者在完成任务之后,可以将内容标记为已完成,这样一来,工作流程和进度非常透明,省去了很多不必要的麻烦。
⑼ 公司大多数是程序员,该怎么让大家活跃起来呢
一个互联网团队中,企业的研发部大多都是男性,女性成员的加入可以调节和活跃团队氛围,并适当平衡团队中的男女比例。
经历过的所有大大小小公司,在同等甚至女的能力差男的不是太大,都是优先招聘女的,因为男的太多了…招女的也是活跃公司气氛的一种办法。一方面是男女确定有比较大的差异可以互补,另一方面男女搭配。
⑽ 将来作为一个程序员,如何让自己很好的融入团队中去
多和别人交流经验,学会分享和学习。