技术选型

面试了一些公司,感觉有些公司还是偏向保守。

自己简单总结,不代表面试官能认可。

1.搜索热度。

热度正常来说还好,十几年前选数据库的时候往往我们会看阿里再用什么,阿里当时从oracle切到mysql后带动了一大片公司用mysql。但是拿大公司标配说服领导应该没啥问题。

2.评测指标

对于数据库,无非就是cpu 内存 磁盘占用 ,读写速度这些指标对比。官方自测的指标只能做参考。自己复现和根据实际场景测的还是最重要的。

3.集群支持

小公司不可能永远是小公司,要扩展的时候如果当初选型不对只能换数据库了。

4.生态

像现在正处于jdk8到jdk11的过渡期,目前jdk11的生态建设并没有100%无缝切换,所以大多数公司还在用8。生态的完善程度也需要考量。

5.上手程度

从springmvc到springboot,少了很多pom和配置项,提升了不少体验,上手速度更快了。springboot之前,当时的快速开发平台jfinal也再一定程度缓解了这种情况,但springboot后这种情况就不复存在了

6.公司角度

是做项目还是做产品,做项目大可直接用jfinal,APIJSONGraphQL rubyonrails这种一把梭。做产品就得考虑后期维护。要不然最后只有极少数人懂这个系统,只有那么一两个人才能改动代码

7.个人角度

从一线程序员角度,肯定是技能越通用越好,像一些公司的自研框架,比如比较有名的普元,亚信Appframe 永兴元LEAP 这些框架虽然原理通用但不利于面试找工作。

从管理人员角度,啥都是越快越好。最好一人搞定所有包括需求开发测试交付。

8.国产化

某些行业对国产化要求比较严格,就按要求来吧,选来选去就那么几个。如果是套壳的先按具体哪个壳开发再做适配。适配工作量不小就是了。

一些标准化回答

1.技术特性对项目的满足度,哪些特性满足项目需求,技术所支持的能力,采用的算法,所使用的编程语言,支持的系统扩展性,社区活跃度,市场占有率等。

2.团队人员的综合素养和人力成本,大家是否都熟悉这门技术,是否需要花费时间去学习,学习周期是否很短,引进这项新技术带来的人力成本是多少。

3.公司的经济实力,公司引进这项新技术所需要投入的经济成本来考虑,如果小公司引进这项新技术需要额外增加服务器,势必会增加这家公司的运维成本,那引进这项新技术的经济成本就会很大。想法如果公司财大气粗,预算充足,追求长期效益,那么经济成本就不会成为是否选择这项技术的重要因素。而更有财力的公司甚至会根据自己公司特殊的业务场景自研产品来引领潮流。

4.适用性、持续性、可用性、经济性。

一些实际情况

1.新CTO为上位鼓吹某项技术。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注