一、组建团队的过程吧。组建团队,首先要根据项目,考虑开发语言,然后看业务的展示形态,和项目的大小。我这次组建了一个20人的团队。前端要求公众号,H5页面,App都要有,后端用java。当然,还要考虑成本。创业最大困难就是钱,没有钱,啥都白搭。除了要能赚钱,还要能省钱。

1、人员配置:最好有1--2个高级技术人员,可以带人的那种,中级初级各半。我们团队有9个java。2个高级,3个中级,4个初级。由高级人员带下面的人。

2、前端H5,2个,android和ios各2个,还有2个测试。

3、设计人员,2个,本来一个就可以,但是我们公司还有一些线下物料设计,广告设计等工作。

4、运维1个。

其中,java里,有几个都是朋友介绍或者之前认识的人,比较了解,纯社招的有4个,其中一个对公众号的后端非常熟悉。

二、团队搭建的过程中,对技术架构进行选型。

之前打算是用dubbo的,团队成员也都有过dubbo的经验,但是对dubbo和spring cloud对比了一下,感觉spring cloud配置起来更简单,也更容易上手,大家讨论以后,决定用spring cloud。spring cloud团队里只有一个人用过,不过目前的文档比较多,大家也就1周时间,就上手了。

三、工具的使用。

1、发布工具:Jenkins,必备。这个要提一下,我们的开发人员,居然只有一个用过Jenkins,让我很诧异,就详细了解了一下,原来现在很多小公司,都还是纯手工上传发布,效率十分低下。我觉得这个与管理人鱼和开发人员都有关系。管理人员经验欠缺,或者只是做外包服务,做完一个项目就完事,没有持续集成的需求,只要实现功能,客户满意,打包交付就完事了。其次是开发人员也有责任,开发人员自己不学习,不多了解其他方面的技术,这样的技术人员,不但自己做的累,对自己今后的发展也是障碍。

2、bug管理:jira,因为招的测试人员用过,就直接装了用了。

3、文档管理:confluence,文档的整理和收集必备工具,当然用其他的也行,我们就是随笔找个差不多的用。能管理文档就行。

4、sawgger:Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。呵呵,从别的地方copy过来的概念,是一个java开放提到的工具,对API文档的管理相当好,前后端的沟通效率也提高了很多。强烈推荐。

5、版本管理工具,svn,git:我们选择了git,但是后来有点后悔了,团队了,大部分人都不熟悉git,导致开发过程中,代码被覆盖等现象发生,其实还是svn更普及,也更简单,只要能实现版本控制就可以了,没必要追新。尤其是在项目工期紧张的情况下,更应该选择一个大家都熟悉的工具。

四、一些和开发相关的制度和规定。

团队刚组建,很多人相互之间还需要磨合,不过技术人员大部分都比较单纯,没有那么多勾心斗角,相处非常融洽。我也是制定几个一般技术团队都有的规定。

1、周报:每个稍微有点规模的技术公司应该都会有这个制度,每周写周报,让技术人员对自己的工作做个总结,并计划下一周的工作。

2、周例会:每周一早上,集体总结上周工作,并分配下周任务,有问题可以在会上提出来,一起讨论。

3、技术分享会:每周安排一个人讲一些技术上的知识点,任何只是都可以,没有硬性规定,主要锻炼技术人员张开嘴去说的能力,还能让大家开拓一下眼界和思路。

4、晨会:这个规定,只有在项目紧的情况下实施,项目结束后,可以暂停,效果非常好。