公司现状
1. 技术人员水平限制: 基础研发人员技术细节,性能处理能力不足,技术视野不够开阔;甚至一些高可用,高性能方案的概念都未听闻,更别提发展方向和思路了,令人痛心。
2. 技术反馈渠道限制: 公司业务线暂不多,基础服务的应用面尚属狭窄;基础服务和镜像各种环境的适应性和性能不足以及时凸显暴露出来,框架bug和问题使用反馈周期太长,不足以快速跟进和改善基础框架。
3. 人员招聘渠道限制: 高技术人才未中长期储备, 各招聘渠道未能招募到合适的技术人员。临时招聘也不能在中短期内补充恰好求职的合适人员。(.net 行业大环境下人员本身也很紧缺)
4. 人员成本预算限制: 因公司业务的发展与现实情况,基础研发人员数量有限,人员成本预算有限;(即便遇到非常合适者,薪资情况仍需各方努力达成。)
5. 基础开发人员培养: 基础研发不同于业务线研发, 难以通过业务发展提升自身满意度,技术成就感,对性能和技术的追求。需要通过内在和外在的压力,才能推动研发人员不断讨论,不断汲取学习,思考和沉淀技术,微创新,将基础服务真正用心做好。
解决方向
在考虑公司各方面的资源限制和现状,以及人员的限制和培养,基础服务的性能要求和稳定性等综合的考虑,采用开源战略方向,形成开源->反馈->交流->改进的生态圈有利于缓解以上公司的现状问题。
若能形成开源生态圈,则可以促进开源项目稳定性,优化开源代码,根据反馈不断的提升自身的基础服务产品,吸引相关的高级技术人才维护检验项目,减少项目的开发维护成本,同时提升公司在技术领域的影响力,提升开发人员的成就感。(目前淘宝,当当网,蘑菇街,大众点评,携程,小米,58同城等都有部分项目开源)
目标原则
融入开源社区,借助开源的生态能力,在有限资源条件下更有效率验证基础服务的性能,稳定性,推动其发展。
组织形式
公司开源技术委员会(虚拟)
开源生态孵化规划
1. 开源计划
基础服务开源计划: @车江毅【开发细节收集,改进】
延伸阅读
学习是年轻人改变自己的最好方式