根据我的经验:切勿为需要与之度过假期的家庭成员或想保留的朋友做花钱的工作。所涉及的一方总是会感觉到另一方要么收取过多费用,要么支付的费用不足,从而给了另一方以帮助。当最后期限到来时,他们通常是最不了解的东西,并且在beta测试期间通常是无聊的事情,因为如果您有一个bug(您愿意),他们将不会理解。总是一团糟。
我曾经是理想主义者,认为其他所有人只需要更好的人际交往能力,但是不,这就是事实。当不了解软件开发过程的人们在看到它们的第一刻就总会感到不满意。对于项目经理来说,与家人一样,这也是事实。问题是,您必须与家人和朋友保持关系,而事情从来都不是严格意义上的事情。
就是说,如果该项目将增加您的压力水平,并且您不需要钱,那为什么要花钱呢?尤其是如果您已经拥有要胜任的软件开发工作,我想说的是,您应该将自己的全部工作奉献给出色的日常工作,因为这最终将使您获得高质量工作的回报。
如果您确实需要钱,并且对家人的潜在损失没事,那么就接受这份工作。除了我之前提到的内容之外,可能发生的最糟糕的事情是,您了解自己的本领和不擅长的领域,或者您发现自己咬得太厉害,无法咀嚼,从而导致该项目很糟糕。由于您的经验不足而引起的头痛。我在目前的工作中做了两次,很幸运,我对雇主非常了解。虽然我在水里死了,这很痛苦,但是我出现了一个比以前更好得多的程序员,具有更广泛的技能。
没有演算来确定要放弃和保留的工作,只有经验和您的个性。您只需要决定自己的价值并追求就可以了。注意事项:
这是我会喜欢的项目吗?团队是我喜欢与之合作的团队吗?
他们将提供哪种付款方式?如果没有,我将获得什么专业发展?他们是否提供任何形式的分担风险(即股票期权,利润百分比)?这对我来说是很有说服力的。
无论如何,这些只是您决策中要使用的原则。这一切都取决于您的价值。例如,我重视与家人在一起的智力挑战和时间,因此我通常高度重视项目的内容和学习技能。但是,我也要确保事先声明我每周只工作2到3夜,这样我就可以整天工作,因此可以与妻子和孩子共度时光。我调整了截止日期以满足这一需求。如果他们不喜欢,那我就不接受这份工作。
无论您做什么,都要确保清楚陈述自己将做什么和不愿意做什么,并确保他们在上任之前明确陈述自己的期望。可能发生的最糟糕的事情是客户的期望值未声明,而您却低估了这些期望值。
附言:我真的希望我在职业生涯的早些时候读过本文。它适用于我的最后一段。http://www.joelonsoftware.com/articles/fog0000000356.html