最近一直有一件事困惑着我——怎么样才能高效的让团队只专注于业务或者说产品。
当然这是一个很大的话题。所以我先找到了一个切入点:怎么样使用软件才能更高效。希望先把客观存在的问题先解决。
首先,软件是为了解决真正问题而存在于团队的。所以哪些软件才是团队真正需要的,必须先从团队真正存在的问题来说起。
每个团队的定位不同,所以必然导致使用的软件不同。这里我以我们现在的团队为蓝本进行尝试解惑。
我们团队的定位是:专注产品、快速响应的团队。我们是一个解决问题型团队,不是一个学习型团队。所以不会兼顾太基础或者说成体系的技术积累,也不会涉及太多太新潮或者研究性的技术积累。
基于上面的定位,软件可以分为下面这几个部分:
- 搭建技术环境。
- 项目管理。
- 团队的技术知识积累。
搭建技术环境
目的:把一个产品通过技术手段变成一个用户可使用的产品。即可以通过客户端来访问。
这个环境不需要每个人都熟悉一次。只要有一个稳定的版本就可以了。不需要花费其他兄弟的精力在这上面。这套东西必须是可以自动化持续集成的。
这个环境每个人的职责定义可能不同。我就抛一个我们现在在使用搭建方法。
项目管理
目的:以最优的方式去实现产品。减少不可确定性。
这里是以敏捷开发为模型的项目管理。我们这里使用的worktile。所有的工作内容重心都围绕着产品的项目来实现。
团队的技术知识积累
目的:减少使用开发软件的时间成本、减少遇到开发软件问题时解决问题的时间成本。
我们这里,只专注于团队里使用的软件。
综上:
- 环境搭建的软件我们不希望其他成员分心,一般都已经做自动化搭建。
- 项目管理的软件,我们把所有工作重心都放在上面,专注用户故事、专注迭代,尽可能的减少项目周期。
- 技术知识的积累围绕着团队正在使用的技术去积累。主要是为了减少时间,也希望通过反复使用熟悉这些正在使用的技术。也许以后有一定感悟,可以以博客的方式,把更高层次的技术展示出来。
最后强烈推荐两款软件:为知和worktile