如果不能降低周转率,是否有可能管理高营业额的开发商?

时间:2009-02-12 15:43:40

标签: project-management

我带领一小群程序员进入大学,去年刚刚进入这个职位。虽然我们的大部分团队都是全职员工,但我们有几个传统上是研究生助理的人。

这些助学金的竞争非常激烈,因为他们在获得工作的同时可以获得免费的研究生学费。我们要求他们注册至少一年,但我们认为如果他们留两个人就很幸运。在那之后,他们获得硕士学位,继续学习更大更好的东西。

您可以想象,招聘和重新培训这些职位需要时间和资源。更糟糕的是,到目前为止,他们通常是唯一一个从事各自项目工作的开发人员,我担任顾问和监督职务,因此当我们从开发人员转为开发人员时,争论项目本身以对抗熵是一项任务对自己。

我很想向管理员提出雇用一名全职(和长途)开发人员取代这两个职位的可能性,但是对于一所处于预算危机中的学校,需要支付两名半职的研究生助理比一个全职开发商支付要便宜得多(就工资和福利而言)。此外,由于我是这个职位的新手,我想避免看似好像我无法处理我注册的内容。对于可预见的未来,我认为聘用短期研究生助理的做法不会改变。

我的问题:考虑到员工在工作一年之后可能会离开,我该怎么做才能创建一个有效的培训计划?

  • 我应该花多少时间来培训它们,多少只是浪费时间?
  • 他们需要多长时间才能获得对我们的流程和项目的赞赏?
  • 是否有任何特定的培训方法或技巧可以帮助解决这种情况?
  • 之前有没有人处理过类似情况?
  • 我是否担心太多或不够?

顺便说一下,为了记录,我们在Perl中完成了绝大部分的开发工作。很难找到知道Perl的研究生,而另一方面,每个人似乎至少对Java有学术上的理解。因此我问过this question

8 个答案:

答案 0 :(得分:5)

为什么不问学生他们觉得哪些困难,并为他们遇到麻烦的工作部分制作备忘单,讲座等?也许你需要创建一些介绍Perl讲座或购买一些死树。 O'Reilly的Safari订阅怎么样?不过,在开始培训项目之前,我会问学生他们更喜欢学习什么。每个人都有不同的学习方式。

我还会花一些时间和资金在工作中创造专业软件开发的文化。这将是艰难的,因为学术程序员经常是新手,并习惯于解决问题(我是一名学术程序员,顺便说一句),但从长远来看,学生们会感谢你。也许你们每周都可以出去吃午餐,讨论编程和其他主题。您可能还需要花些时间进行代码审查,以便人们可以相互学习。

营业额高,您肯定需要确保知识转移。确保您使用源代码控制,并确保您的学生理解正确的评论。我还会让学生为后代创建简短的文档。如果他们获得了学分,请让他们在一学期内写下他们的进度。您可以将它放在项目存储库的目录中,以供继承它的任何人使用。正如其他帖子中所提到的,组wiki可以真正帮助进行知识转移。我们在我们的小组中使用Mediawiki并且喜欢它。

我要补充的最后一件事是,我发现为新开发人员保留一个相对简单且可在一个月左右完成的项目列表会有所帮助。它们是让新人适应您的开发环境的好方法。

答案 1 :(得分:3)

  1. 这是一个相对的问题,应该根据具体情况进行。如果新员工已经了解Perl,那么您不需要进行这项培训(是的,您可以将Perl作为强制性先决条件,但这会极大地限制您的申请人资格),他们的第一次培训应该是类似于修复现有应用程序中的错误或者通过他们将维护的应用程序。虽然开发人员只有一年的时间,但我认为开发风格会有所不同(如果不是很多)。
  2. 只要您的流程正常运行,让新人快速了解您的流程非常重要。在这种高周转率环境中,您应该非常重视流程中的文档。对于此文档而言,Wiki是一件好事,因为它是集中式的,任何开发人员都可以访问它。让他们试图找出一个项目如何自己工作(几乎没有文档)是浪费他们的时间和时间。

答案 2 :(得分:3)

您是否考虑过像Macdonalds和许多其他高转换行业制作“三环活页夹”?有一个文件夹可以打印出来并交给新员工,这表明新员工在您的环境中使用Perl启动和运行一些基础知识。这应该是一个“hello world”,加上一些基本的正则表达式和数组操作。最后,你的手册应该继续展示你发现自己一直在做的5件事。

示例代码可能是针对外部安全系统对用户进行身份验证,遍历记录集或使用ghostscript创建PDF。无论它们是什么,它们应该涵盖80%的时间里你遇到的基础知识。更重要的是,这些示例应该向用户显示您希望如何编写代码以便清晰(例如:命名和方法),并让他们深入了解正在使用的服务器和软件以及通用书籍不会向他们展示的其他实用性。 / p>

你不会第一次获得正确的活页夹,但由于你有很高的工作人员翻身,你将有足够的时间来测试和改进它。

除此之外,我会选择一本Perl编程书,并为新用户提供他们自己的三环活页夹副本,以及“Programming Perl”以保留第一天。每次租用50美元,我相信它比替代品便宜很多,你会让它们翻转汉堡......我的意思是立即切割代码。

答案 3 :(得分:3)

也许我对这个问题的解读太多了,但是如果你的大学教java,你为什么要用Perl?使用学生已经知道的工具会不会更有意义?仅这一点就会大大减少学习曲线。 [一旦你消除了遗留代码]

除此之外,试试:

  • 将项目分成月份大小
  • 将实习重叠至少2个月,如果不是6个,那么这个新人可以与老人一起工作并接受培训
  • 记录您拥有的任何可重复的流程(正如Mark Nold所建议的那样)
  • 如果研究生比全职专业人士便宜,那就退出了;-)如果没有,那就去找专业人士。

答案 4 :(得分:2)

我最初的想法是你应该:

  1. 雇用这个职位,即它以Perl为中心,所以要把它作为先决条件的重要组成部分。这样你也不需要那种训练。
  2. 在入职流程中投入时间,也许可以使用维基,以便您可以轻松更新它以帮助将其带入船上。
  3. 编辑:一些额外的观点:

    1. 也许有聊天,看看Perl是否可以被引入课程?如果没有,那么在广告提出前六个月告知申请人需要知道Perl。通过这种方式,您将获得具有Perl经验且积极展示其动力的人。
    2. 你可以打开一些小项目,以便在这六个月内可以由潜在的候选人完成吗?
    3. 接近您的大型项目的设计,以便他们可以以一顿饭的方式完成。这是The ACE Components完成iirc的方式。
    4. 允许一段特定的时间进行文件记录并审查即将离任的研究生所做的工作。
    5. 允许新毕业学生可以与即将毕业的研究生一起工作至少几周的重叠时段。他们可以学习开发环境,他们可以成为你的wiki更新的几内亚猪。
    6. 还有更多......

      HTH

      欢呼声

答案 5 :(得分:1)

这是一个泡菜,但它在商业领域并不像你想象的那么罕见。我曾经听过一个统计数据,一个程序员在整个行业的平均任期大约是18-24个月。通常情况下,我建议让更多有经验的程序员需要更少的加速时间,只需要接受有关问题域/技术更新的培训,而不是基础知识

我认为你最好的选择就是要求大约30-50%的研究生比实际执行工作所需要的学习和加速时间,并投入一些额外的资源进行测试环境是错误的一个因素,因为每个人都在学习工作。此外,考虑到学术时间表,这可能很难,但尽可能地错开开始日期以最大化员工之间的重叠。新员工/老员工的配对编程团队也可能有助于提高一致性并补充培训,而不会牺牲太多的生产力。

答案 6 :(得分:1)

  • 我应该花多少时间来培训它们,多少只是浪费时间? 答案:这不是时间量或浪费量,而是方法。是否有可能进行视频培训 - 视频自己培训一​​个人并将其作为后续学生/开发人员的培训。您可以随着时间的推移添加,但它确实减少了完成相同过程所需的时间。

  • 他们需要花多少时间才能对我们的流程和项目赞不绝口? 答案:这完全取决于此人...分钟。我估计最多2-3周的平均值。

  • 是否有任何特定的培训方法或技巧可以帮助解决这种情况? 答案:视频培训(自制),让当前的学生/开发人员创建/更新所需信息,兴趣点等维基。

  • 以前是否有人处理过类似情况? 答案:使用12-18个月平均值。营业额 - 我认为它现在已经改变了(更长),但每家公司都有转变,但由于资源是学生,可能不会像你那样被迫。

  • 我是否担心太多或不够? 答案:过渡失去的知识是一个关键的风险领域......

答案 7 :(得分:0)

应用程序是否可以考虑开源?