惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Martin Fowler
Martin Fowler
大猫的无限游戏
大猫的无限游戏
J
Java Code Geeks
罗磊的独立博客
雷峰网
雷峰网
G
Google Developers Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
爱范儿
爱范儿
B
Blog RSS Feed
腾讯CDC
Apple Machine Learning Research
Apple Machine Learning Research
D
Docker
Recent Announcements
Recent Announcements
T
Tailwind CSS Blog
博客园 - 聂微东
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Vercel News
Vercel News
小众软件
小众软件
人人都是产品经理
人人都是产品经理
云风的 BLOG
云风的 BLOG
IT之家
IT之家
Blog — PlanetScale
Blog — PlanetScale
I
InfoQ
S
SegmentFault 最新的问题

浮华生

Elasticsearch 检索性能优化 - 浮华生 舆情监控系统综述 - 浮华生 2024 半年度总结 - 浮华生 2023 年终总结 - 浮华生 异地机器组网方案 - 浮华生 Kubernetes 部署 Elasticsearch 和 Kibana - 浮华生 2022 年终总结 - 浮华生 RabbitMQ connection channel 的关系 - 浮华生 Kafka Java 客户端 Producer 原理分析 - 浮华生 RabbitMQ 和 Kafka 应用原理简单对比 - 浮华生 阿里云 OpenSearch 介绍 - 浮华生 Golang Array 和 Slice 区别 - 浮华生 Mac OS 下打造 golang nvim 编程环境之基础配置 - 浮华生 电商搜索技术总结 - 浮华生 电商搜索业务总结 - 浮华生 2021 年终总结 - 浮华生 Cypress 实践总结 - 浮华生 年终总结 - 浮华生 关于我 - 浮华生 使用 cucumber 进行行为驱动开发(BDD) - 浮华生 微服务应用集成 SpringCloud 步骤 - 浮华生 电商搜索数据同步方案 - 浮华生 通过一道数值转换题重温计算机补码 - 浮华生 macOS 系统推荐的一些软件 - 浮华生 DevOps 实施规划(持续更新) - 浮华生 rabbitmq 如何提高可靠性并保证消费端幂等 - 浮华生 AMQ Model总结 - 浮华生 结对编程 - 浮华生 RSocket 介绍 - 浮华生 面向对象的理解 - 浮华生
技术选型怎么做 - 浮华生
浮华生 · 2019-05-23 · via 浮华生

技术选型包括哪些

从个人观点出发,技术选型包括框架、工具、语言。

需要考虑的点

  • 公司规模
  • 团队技术水平
  • 时间和成本
  • 生态
  • 风险

公司规模

小公司

对于初创公司或者小公司来讲,上级领导的意愿更多的是能够快速盈利,此时应该选择成熟便捷的框架, 尽量减少学习成本,这就属于经验优先,因为只有做出成品并且盈利,公司才能够生存。

中型公司

中型公司是由小公司慢慢发展的,此时技术有了一定的积累,并且也有能力自己去做一些定制化的开发,此时需要考虑的问题是自己开发还是使用现有产品

举个例子:目前公司内部需要搭建一套日志收集和监控系统,该怎么做? 很多人最先想到的是 ELK ,但这样是不可以的,选型的话你要了解市场上都有哪些日志的框架,结合实际的项目,找到最方便的那一个,不能说 ELK 用的人多你就用,项目部署在阿里云,那使用阿里云的日志服务是不是更方便快捷?

大型公司

大型公司就比较随意了,可能会花很长时间很多精力放在自研上

团队技术水平

如果一个技术恰好能够解决当前遇到的问题或者在重构时能够解决性能的瓶颈,但是,它可能是用 GO 语言写的,而团队用的是 Java,此时需要考虑的是如果引进来了,那么能够多久能上手呢?之前看到某公司招聘的 JD ,如果你自认为可以在一周内精通领域,那么上述的要求可以不用遵循。所以在面试新人时就需要从多维度去考察,在此不细说;如果成员已经确定但是技术水平不高,那么你就需要如何去提升团队的技术水平。

时间和成本

记住,如果你在公司工作,那你就是给别人打工的,你的职责就是让企业赚钱,领导不会关心你用什么技术,但他能知道你用多久去把业务实现,此时你需要考虑什么?理想状态是时间短高收益,这需要借助二八原则,用百分之二十的成本带来百分之八十的收益。

举个例子:领导规定三天时间日志服务搭起来,并且上生产环境,如果你用 ELK 那你需要很多配置,如果你用云产品,直接集成就能用。有人可能会想,用云产品不是得花很多钱吗?我最初也是这样想,但后来我是这样想,首先钱不用你出,而且你自己搭的 ELK 后期维护消耗多少算过没有,和你云服务比一比看看哪个多。

风险

风险其实一般很难发现的,比如安全问题,只有漏洞报出来你才会知道,还有就是有 BUG 但项目不维护了,这就是最后要讲的生态。

生态

一个好的项目不是看多少人用,而是有一个成熟的社区,你提问题有人及时回,你提建议或者 BUG 开发人员会跟进,采纳后会加入下次发版,这比你遇到问题后去提 issue 人家不回你,问别人也不清楚,这样就是一次失败的选型。

总结

技术选型离不开业务,脱离了业务你的技术再高也将无法体现。选型重要的还是选择问题,这能映射成生活,权衡一件事,要从多个角度去思考。