如何委派不断增长的编程需求列表

发布于 2024-09-15 18:41:43 字数 1431 浏览 1 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

衣神在巴黎 2024-09-22 18:41:44

是否有这样的人执行此类职能?如果有,他们叫什么?

项目经理。雇一个。现在。


雇佣一名项目经理和一名程序员,然后再雇佣更多程序员是否可行?

这是你的预算。把钱花在你认为合适的地方。

项目经理是否必须非常擅长自己编码,或者只是擅长项目规划?

有些是有些不是。你必须雇用他们。您决定他们需要什么技能。

您需要一位深入了解技术并且编码的经理。他们是否编写代码取决于您和您的产品经理的工作内容。

他们是一个人。你可以和他们交谈。

Are there people like that who perform such functions and if so, what are they called?

Project Managers. Hire one. Now.


Is it feasible to hire a project manager with just one programmer and then perhaps hire more programmers later?

It's your budget. Spend the money as you see fit.

Also do project managers have to be really good at coding themselves or just good at project planning?

Some are some aren't. You have to hire them. You decide what skills they need.

You want a manager who deeply understands the technology and can code. Whether or not they do code depends on what you and your PM work out.

They're a human being. You get to talk to them.

苏佲洛 2024-09-22 18:41:44

暂时不要聘请专门的产品经理。

如果你只有一名开发人员,那么聘请一名专门的项目经理似乎很愚蠢;小公司的每个人都必须扮演多个角色才能使公司运转良好。

对于您雇用的下一位开发人员来说,如果他们有能力领导开发团队,那确实会有帮助;听起来您还没有这种能力,并且您可能(或可能没有)有时间即​​时学习。如果您能找到可以为您完成此操作的开发人员,那就非常高效了。

了解项目管理。

与此同时,我可能会购买一份 McConnell 的“软件项目生存指南” ”,并读一读。它解释了管理软件项目的基础知识,并且在易于阅读的同时做得很好。

作为一个团队设定最后期限。

为了设定最后期限,通常可以让开发人员与经理合作,设定每个人都知道并同意的合理最后期限。如果是开发商定的,时间会非常非常长;如果它们完全由管理层设置,则会导致许多开发人员感到沮丧。

优先考虑需要做的事情。

我会立即开始编写高级需求(“我们需要一个更好的登录系统”),并将它们划分为不同级别的优先级:

  • 1 - 系统宕机,出现一个问题,这需要在人们离开之前完成。
  • 2 - 这将为我们带来一份新合同/这将使我们免于失去合同
  • 3 - 想要拥有
  • 4 - 想要拥有
  • 5 - 目前不会。

有了这个清单,你就可以更好地弄清楚把时间花在哪里,以及委派什么事情。如果你委托某件事,结果有时会不像你想象的那样;或者,您必须执行以下一项或多项操作来保持您的愿景步入正轨:

  • 雇用更多与您志同道合的开发人员,
  • 给出更详细的要求,
  • 找到在开始编码之前提出更多问题的开发人员,
  • 放弃部分团队其他成员的愿景。

Do not hire a dedicated PM yet.

If you only have one developer, it seems silly to hire a dedicated project manager; everyone at a company that small must fill multiple roles for the company to work well.

For the next developer you hire, it would really help if they have the ability to lead a development team; it doesn't sound like you have that ability yet, and you may (or may not) have time to learn on the fly. If you can find a developer who can do this for you, that's efficient.

Learn about project management.

In the meanwhile, I might buy a copy of McConnell's "Software Project Survival Guide", and give it a read. It explains the basics of managing software projects, and does a good job of it while being easy to read.

Set deadlines as a team.

For setting deadlines, it usually works to have developers work with managers to set reasonable deadlines that everyone is aware of and agrees to. If they're set by the developers, the schedule will be very, very long; if they're set entirely by management, you get a lot of frustrated developers.

Prioritize what needs to be done.

Immediately, I'd start writing high-level requirements ("we need a better login system"), and prioritize them into various levels:

  • 1 - System is down, there's a showstopper, this needs to be done before people leave for the day.
  • 2 - This would get us a new contract/this would save us from losing a contract
  • 3 - Would love to have
  • 4 - Would like to have
  • 5 - Not going to get to at this time.

With that list, you can figure out better where to spend your time, and what to delegate. If you delegate something, it's occasionally going to come back not-as-you-envisioned; alternatively, you have to do one or more of the following to keep your vision on track:

  • hire developers more on the same page as you,
  • give more detailed requirements,
  • find developers who ask more questions before starting to code,
  • give up part of the vision to the rest of the team.
献世佛 2024-09-22 18:41:44

另外,我发现我们所有的项目都不断延迟,因为我们没有设定任何截止日期(我们为自己开发),如何避免这种情况,程序员在截止日期前工作得好吗?

正如 S.Lott 上面所说,您需要有人承担项目经理的责任。同样重要的是您选择项目方法。有几种可供选择,但一些已被证明非常有效的方法是敏捷开发或
瀑布项目。通过使用项目方法,它将帮助您组织、优先排序和规划您的开发。

以下是帮助您入门的链接:敏捷软件开发。我并不是说敏捷是最好的选择。为了发现这一点,我建议您花一两个晚上坐下来阅读一些可用的方法。

Also, I've found that all our projects are constantly delayed cos we don't set any deadlines (we develop for ourselves), how to avoid that, do programmers work well with deadlines?

As S.Lott said above you'll need someone to take the responsibility of a Project Manager. Equally important is that you choose a project method. There are several out there to choose from but some that has proven to work very well are agile development or
waterfall projects. By using a project method it will help you organize, prioritize and plan your development.

Here's a link to get you started: Agile Software Development. I'm not saying agile is the best way for you to go. To discover that, I suggest you take a night or two to sit down and read about a couple of available methods.

与往事干杯 2024-09-22 18:41:44

您绝对需要一名项目经理。经验丰富的交互式产品经理至少会知道各种技术是什么以及它们应该和不应该用于什么用途。有编程经验者优先,但不是必需的。强大的沟通和组织能力、外交能力、积极主动的态度以及对规划和记录的热情是绝对必要的。

我强烈建议不要让你的产品经理做任何类型的实际生产工作。毕竟,这就是让你陷入不愉快境地的原因——在管理者和创造者之间来回切换是非常困难的,并且通常会导致项目管理不善。

You definitely need a project manager. An experienced interactive PM will at least know what the various technologies are and what they should and should not be used for. Prior programming experience is preferred, but not necessarily required. Strong communication and organizational skills, diplomacy, a proactive attitude and a passion for planning and documentation are absolutely required.

I would strongly recommend AGAINST having your PM do any actual production work of any kind. After all, this is what got you into the unpleasant place you are--it's very difficult to switch back and forth between manager and maker, and generally results in under-managing projects.

挽容 2024-09-22 18:41:44

如果我的理解是对的,那么你有两个主要问题:

  • 你发现很难构建软件设计
  • 你的员工只用很少的时间

软件开发已经成为一个有意义的地方: 开发项目有很多模型:
http://en.wikipedia.org/wiki/Software_development_process
但大多数共享以下阶段(分析-->设计-->实施--测试)

首先您必须进行分析 - 您必须定义项目的范围,其中包含哪些内容以及哪些内容不包含在内。您可以从系统设计师那里获取注释。这部分对于估计所需的时间资源等至关重要。

在分析项目并清楚地了解您想要什么之后,您应该进行系统设计,并且...信息系统专业人士或类似人员应该帮助您 - 他们的工作是了解您的需求并构建任何优秀程序员都可以进行的设计遵循(搜索 UML/DFD)。

然后找到一个可以阅读这些设计的程序员(确保您和系统设计师都认为该员工适合这项工作)。有了好的设计,程序员就可以完成 80% 以上的工作,而无需进一步解释。

关于时间和项目经理,我相信一旦每个人都知道自己在项目中的位置(你将与系统设计师一起工作,他将与开发人员一起工作——不是你)——你会离项目越来越近计划。

如果您在没有系统设计师的情况下设法生存 - 在您的项目变得更大之前不要接受 PM(除非您有大计划和大预算)

聘请专业人员 - 他们花费更多一点,但可以节省时间,奇怪的是甚至可以节省金钱!

祝你好运

If I got you right you have two main problems:

  • You find it hard to build a software design
  • Your employees use very little of their time

Software development has become a place which make sense: There are many models for developing a project:
http://en.wikipedia.org/wiki/Software_development_process
but most share the following stages (analysis-->design-->implementation--testing)

First you have to do the analysis - you must define the scope of the project what's in and what is out. You can get notes from your system designer. This part is crusial to make estimation of the time resources needed and more.

After analyzing the project and having a good idea what you want, you should make a system design and... Information System professional or alike should help you - their job is to understand what you are after and build a design that any good programmer could follow (search UML/DFD).

Then find a programmer that can read those designs (make sure that both you and the system designer think that this employee is good for the job). Having a good design the programmer could do more than 80% of the work with no further explanation.

About the time and the project manager, I believe that once every person will know his place in the project (you will work with the system designer and he will work with the developers-NOT YOU) - You will get closer and closer to the project plan.

If you managed to survive with no system designer - don't take a PM until your project get bigger (unless you have big plans and big budget)

Get professionals - they cost a little more but save time and curiously even money!

Good luck

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文