我们的系统pipe理员/运营团队今天既进行开发,也开展正常运营。 但是当有任何需要完成的操作任务时,开发任务总是会受到影响。 为了弥补这一点,我们正在考虑分成两组 – 开发和运营。
我们会非常小心,不要把任何可以编码的操作系统都浪费掉,因为我们认为系统pipe理员也是非常重要的程序员。 但是我们需要首先奉献一些人,然后开始聘请专门的程序员。
但是我需要一些关于如何构造这个的build议。 关于我们应该如何进行拆分的任何提示/最佳实践,特别是关于操作和开发之间的接口应该如何?
小心!
你需要非常清楚你想要完成什么。 如果这是为了用相同数量的员工来完成更多的开发工作,那么更改标题就不会有效。 要做到这一点,您需要减less操作工作和/或提高开发效率。
在这一点上,我会避免重组或改变angular色。 相反,我会在减less运营工作和提高开发效率方面做出改变。
我可以build议…
1-测量时间在哪里。 在这种环境下,通常有三种“口味”:紧急支持,小发展(即小增强)和纯开发。 你需要知道在这些上花了多less时间。 不要相信你自己的估计..他们可能会离开。
2-指定一个主要的支持angular色,并让这个angular色在员工之间轮换。 目前的“首要”任务是解决支持问题并处理这些问题,让其他人员可以自由地从事项目工作。 这个想法是给员工更多的不间断的发展时间,这应该有助于生产力。
3-如果您还没有票务系统(如问题跟踪系统),请执行此操作。 让用户和您的团队使用它,并让团队保持更新。
4-与你所支持的组织保持开放和清晰的关于你在做什么,为什么你这样做。 推回他们不必要的事情和夸大的紧迫感。
一旦你有更多的数据,并做了一些改变,那么你可以做出更好的决定“结构”的变化。 如果你决定拆分你的团队,你可能会有更多关于哪个人属于哪一边的数据。
尽你所能保持这些团队之间的协同作用。 确保你在工作之外计划一些好的团队build设活动。 注意会导致团队陷入孤岛的行为(比如“那些水坝开发者”)。
我会为团队制定一个良好的沟通计划,为两个团体定义angular色和责任。 它还将定义团队应该如何沟通(即团队meeatings,部署,文件,…)。
尝试确定这些团队之间的所有关系,并确保有适当的stream程。
拆分团队是最好的 – react native操作工作对开发生产力非常有害。 开发商的库存是不间断的集中,混合的操作工作量对开发工作的影响是不成比例的。
有些方法可能会鼓励团队凝聚力:
保留ops团队的一些开发资源,负责自动化,在熟悉的系统上进行一些bug修复工作,以及可能的更小的更改或开发项目。
保持团队在同一个实体区域,以便他们一起社交。
定期交换队伍之间的人员 – 每个队伍中的一些人应该在对方中度过至less1 – 2年的时间。 例如,试着让开发人员做一些DBA的工作(如果他们正在通话,给他们一个电话上的津贴 – 你可以被认为是使用一个初级开发者作为一个便宜的DBA!)。
build立一个拥有两个团队成员的架构工作组。 这个团队并不一定是全职的,而是像构build和configurationpipe理基础架构,DB架构/开发工作一样处于开发和运营DBA工作和Web /应用服务器configuration之间的灰色地带,尤其是在影响开发的情况下。
鼓励(并让时间)人们就感兴趣的话题(如他们已经build立的应用程序或与开发有关的networking基础设施方面(例如,如何用反向代理build立Weblogic服务器))进行研讨会或论文。
试着让这两个团队参与同行评审stream程。
诚信,正直,诚信。 任何事情,以避免指责文化。 例如,在有严重问题的地方进行某种事后或根本原因分析。 如果合适的话,请有人就解决scheme进行技术研讨会。