一些客户喜欢对他们的项目袖手旁观。大多数的项目经理最初可能也喜欢这样——有自由发挥的空间以及工作时不受客户接连不断的电话骚扰,没有频繁的询问和要求。这一切棒极了——但是缺少用户的参与通常不是好事。下面一起来看这样做的潜在问题。 Continue reading »
让客户参与他们的IT项目
管理多个项目:项目管理真正的挑战
又到了每年的这个时候,在庆祝年终假期时,我们会发现自己进度滞后、预算超支并且没有完成期望的业绩。大部分的项目经理整年同时管理多个项目。讽刺的 是,许多项目管理书籍只研究单一项目的管理。这对我们来说是无福消受的奢华。无论这是数周之久的假前赶工,还是办公室里正在上演的事态,有几条技巧用在管 理多个项目上十分奏效。
职能经理不应该当Scrum主管
笔者经常遇到有人向敏捷开发转型。他们打算使用Scrum,因为它是一个十分有用的项目管理框架。OK,这都合情合理,但是之后他们决定不再需要项目经理,并且开发经理可以当Scrum主管。
Scrum主管不是一个管理职位,他保护开发团队免受外界干扰并且移除那些影响团队的障碍。对我而言,Scrum主管类似于项目经理(我从不信任指挥和控制型的项目经理)。
项目仍然需要经理,但是稍有不同。我认为职能经理不是必须的,而敏捷开发小组需要的是一个负责保障整个团队的经理。这意味着经理需要理解团队中所有职能部分,因而能够帮助每个团队成员。
但实际问题是,经理充当Scrum主管糟糕至极,因为:
- 1. Scrum主管是团队的一部分,而经理由于名义上的权利,永远不可能成为团队的一部分。
- 2. 人们不愿意在他们的经理面前冒险。(Bob Sutton在Weird Ideas That Work: How to Build a Creative Company一书中引用了相关数据。)
- 3. 经理设定大的方向,是战略性的。他们管理项目材料,审视团队的组成,并且调配人力资源。Scrum主管负责开发团队的日常工作,是战术性的。如果你要在战略性工作和战术性工作之间抉择,那个会占上风?(总是战术性工作会。)
那么当一个机构向敏捷开发转型的时候,经理职责何在?答案是:经理帮助团队自我组织、管理项目材料、提供反馈和指导、保障整个团队并负责人才招聘工作。
经理,负责管理工作;开发团队,包括Scrum主管在内,负责项目开发。这两项工作的交互凌驾于项目之上,而不是包含在项目之中。
译注:Scrum是一种迭代式增量软件开发过程,通常用于敏捷软件开发。它同样可以用于运行软件维护团队,或者作为计划管理方法。
——————————————————————-
版权所有:伯乐在线
本文链接:http://www.jobbole.com/entry.php/464
计算机科学专业应该传授的3件事
没错,只有3件事。我多么希望在大学期间学会很多件事,但是我深知没有任何专业会对你进行完整而透彻的教育。一门专业是为了传授你基本知识并且教会你 学习其他知识的技巧。然而作为一名软件开发员,随着经验的积累,我发现越来越后悔在工作之前没有学习深入理解过本文中列出的3件事。
我相信,任何计算机专业如果能够更多的关注这3件事,都会变得更有意义。如果工作之前更加深入的学习这3件事,相信我会更具实战经验,而不是去恶补工作所需的每件事。我会更加从容的应对工作上的需求并且成为IT界更加优秀的一员。
微软研究院面试过程概述
欢迎Prashanth Mohan,他此前曾在微软研究院(MSR)工作,目前在加州大学伯克利分校攻读博士学位。这次采访将涵盖一些应对微软研究院面试的技巧。
你好,Prashanth,可以简单介绍下你自己吗?
我本科毕业于位于印度钦奈的古因迪电气工程学院计算机科学专业。我先在微软研究院工作数年之久,然后跳槽到亚马逊短暂工作了一段时间。目前我在加州大学伯克利分校攻读博士学位,研究如何使用IT技术改进数据中心的能源使用。
平衡兼职自由职业和全职工作
做自由职业同时持有一份全职工作不失为一个好办法。这样做可以在全身心投入到自由职业之前先探一下路,也能节省开支。事实上,在建立信心和成功转为全职自由撰稿人的过程中,我兼职做自由职业有3年之久。
尽管这样做在经济上通常是明智之举,但是这显然不是一件易事。任何兼职撰稿人、设计师、程序员或者其他自由职业者都会告诉你,这需要严守纪律和高超的时间管理技巧。
Continue reading »
如何成为一名Java自由开发人员
编者按:原文作者Jenkov就是那位丹麦的资深Java开发人员,从事软件开发已有十多年。除了常有读者咨询他《如何成为一位专家级的开发人员?》之外,“怎么才能成为一名Java自由开发人员?”也是他收件箱中另一个常收到的问题。
自由职业者的工作是什么?
不知你是否知道,我是一名自由职业的Java开发人员,这意味着我从事咨询工作。我从2000年开始从事这份工作,它占了我职业生涯的大部分时间。我多数是在为大公司、软件公司、银行和运输公司等客户工作。
我每次参与的项目会持续3到12个月。在那段时间内,我出现在客户的办公室里,就像他们自己的员工一样。一些项目是构建新的应用程序,其他的则是为现有的应用程序添加一些功能。
我参与开发的许多应用程序都是内部应用,由客户的员工本身或者客户的客户使用。这些应用程序中,很多网络应用程序是利用Java servlets和JSP等构建的,或者是使用独立的服务端服务。客户还从未要求过我去开发任何图形界面程序。
以我的经验,自由职业者很少受雇开发Facebook那样的产品。公司倾向于用正式员工进行此类产品的开发。
公司为什么雇佣自由开发人员?
当大公司要在一定期限内开发一个项目,而他们又没有足够人手的时候,他们就不时地在外面雇佣顾问。这些公司在一定时期内雇佣顾问,然后等到项目结束时或者或任务不那么紧迫的时候就把他们炒掉。
如此一来,大公司就可以很容易并快速地雇佣和解雇开发人员,而又不必顾虑雇员会在合同到期时有所不满。
通常当新项目需要额外人手的时候,公司会再次雇佣同一个顾问,因此客户对顾问的个性和技能已有所了解。再就是客户不必就流程、开发工具和硬件设置等问题上再次对顾问进行培训。
怎样成为一名自由职业者?
正常来说自由职业者要通过咨询机构来找活干。咨询机构会和客户保持联系。
大客户不愿意直接和无数的自由职业者联系,也不愿意和他们每一个人单独谈薪水等问题。当额外需要人手的时候,客户只需和咨询机构谈即可。并且,如果你违约,提前解除了合同,咨询机构还能快速帮客户找到其他开发员。
所以,找到当地雇佣自由职业者的咨询机构,和他们保持联系。如此一来,你已进入他们的人才库。
做自由职业者有什么要求?
在接受你之前,大多数的咨询机构要求你至少有5年的开发经验。我很幸运,在干过1年网络开发和1年Java咨询工作后,我就进入了自由职业这一行,成 为一 家咨询机构的正式员工。只用两年,这之所以成为可能是因为2000年的互联网泡沫。当时每个人都在雇佣开发人员,因此市场不像今天这么不景气。
自由职业者的薪水如何?
在丹麦,顾问的薪水的一般都是正式员工的1.5到2倍。薪水的高低和技术水平以及教育背景有很大关系。在一些特殊的领域薪水可能更高,在一些大众化的领域(比如PHP),薪水要低些。
为什么要从事自由职业?
我喜欢从事自由职业这一行,因为恰如其名,相比正式员工,我自由了很多。
首先,我不用在同一个地方年复一年的工作。并不是在所有的公司工作都那么有激情。作为一名自由职业者,我可以到处走走,甚至是在一段时间后再回到一个公司工作。
其次,我可以选择性工作。这意味着我可以更好地控制我的职业生涯方向。当然并非总可以控制方向,但有时候的确可以。至少当一个项目与你的方向相差甚远时,你可以拒绝。
第三,高薪水允许我抽出一部分时间去旅游,或者开发我自己的小软件项目,又或者写写文章,比如这篇文章。 Continue reading »
程序员成功的秘诀
你阅读这篇文章是因为你想去发现程序员成功的秘诀。如果你只关心秘诀本身,那么直接向下滚动到页面的底部,秘诀就在那。
如果你仍在继续阅读本文,那么我会给你解释为什么程序员成功会有秘诀。
10款提高效率的iPhone应用程序
如果你浏览iPhone应用商店,你会看到数以千计的不同类别的应用程序。这其中包括了大量用来提高个人工作效率的应用程序。
本文介绍的这10款软件可以使用户在iPhone上快速而有效的完成工作,并且也可以在iPod Touch 或iPad上运行。这些软件既有免费的,也有收费的。
程序员常收到的四种邮件
导读:自从投身编码事业,经常会受到一些和程序相关的邮件。但只有少数邮件能清楚描述问题,而大部分邮件却令我们大费周折。
近期评论