中小微公司,尤其是初创型公司,一定要记住: “move fast"!
在国内,由BAT"巨头垄断"的大环境下,我们中小微公司要想在夹缝中生存和发展起来,
一定要快,在快中寻找机遇,在快中寻找突破,或许,一不留神,你就成了。
所以,今天聊聊,在快速发展中,中小微企业该如何技术选型呢?有没有更好的选择?
因为业务领域不同,在技术选型上肯定大有不同,但是,选择的思路和原则肯定是一致的。
这里,我们列举了我们开发电商系统是如何技术选型的,仅供参考:
1、开发语言 PHP、JS
为什么我们选择PHP:
1)web开发的成熟语言
2)简单,灵活
3)随写,随测,随调,随时上线,开发效率高
4)PHP不是性能差,是你没用好
2、前后端分离
1)前后端协同开发,效率高
2)Resultful API,标准化API接口
3)便于以后服务化或技术迁移,比如迁移Java或go
3、开发工具 sublime、netbeans/phpstorm、vim、Git、postman、API契约测试Pact
开发工具尽量趋于个人习惯,但是好的工具应该纳入公司首选和推荐中。
4、数据存储 MySQL、redis
1)MySQL没有你想想中的那么慢,你真的用好它了吗
2)缓存,缓存。良好的缓存机制,可以让你的系统飞一样的快
5、开发框架及工程工具 JQuery、Vue.js、bootstrap、laravel、composer、webpack
框架要轻,要成熟,要实用
6、开发环境和运维 Vagrant、virtubox、Linux、Jenkins、Docker、ansible、Nagios、Fluentd
1)用vagrant构建一致的应用环境(开发、测试、预发、生产),不要把时间浪费在怀疑环境的问题上。
2)CI/CD(可选),如果有能力还是要建立CI/CD,让开发只关注代码开发,让自动化一切可以自动化的。
3)Docker (可选),docker的轻量和效率是有目共睹的,但是,如果用不好,会给团队增加复制度和不必要的麻烦。
- 阿里云平台,使用方便,相对还是可靠的。
5)轻量稳定的监控系统Nagios、日志采集分析工具fluentd
7、敏捷开发
1)快速迭代、协同作战、高效沟通
2)做好阶段性回顾总结,让团队持续推进,
3)从每日站会、需求管理、看板、代码审查、需求验证、持续集成、持续反馈中,寻找团队节奏,持续演进。
8、协同工具 钉钉、Tower
1)选择钉钉,初衷是想将工作(钉钉)和生活(微信)分开。
2)Tower,你需要一个简单好用的项目协同工具,这里还包括trello、Worktile、teambition
总之,我们在做技术选型时,遵循以下原则:
1、简单、轻量、高效
2、能用开源的,不自己造轮子
3、能用钱解决的,不要耗费人力时间
4、自动化一切可以自动化的(只要错误在可控范围内)
中小微公司,和大型公司不一样,我们是在技术、人力、成本的平衡中去做选择,可能不是最好,但一定要是最适合发展的,快速争取时间和赢得市场,你说呢?
如果你有更好的选择和建议,欢迎拍砖和探讨。
【Laoyang技术工作室】用心做好技术,快速实现价值。http://laoyang.tech
欢迎加入【中小微互联网公司技术联盟】,加入请留言,或联系QQ: 285435042