面试一个5年经验的java,不知数据结构,却大谈分布式,这样的候选人能要吗?

1

我估计你是问了人家 jdk各种数据结构底层实现原理,其实我一直很纳闷啊,知道底层实现原理 这当然很OK 很加分,但若是不是那么知道,那又怎样呢?人家知道哪些数据结构适合哪些场景并能熟练使用它们,这...不够么?对你们公司的用人需求不够么?难道你是指望他给你们公司创造一个新的数据结构?又或者觉得jdk已经实现的数据结构性能遇到瓶颈 指望求职者给你再实现一遍一模一样但性能比jdk提供的还优秀的数据结构啊?

2

那要看你们工作需不需要经常用到算法,有的人喜欢往深入研究,有的人喜欢往广度研究,没有什么优劣之分,将军一定要比士兵打枪准吗?

3

我来谈下看法:

一、大学数据结构课程能考90分以上的很多,尤其是女生,是否可以认为他们的工作能力比五年经验的程序猿强?

二、大学很多老教授、女讲师,专门教数据结构,但从没企业和软件项目开发工作经验,他们的数据结构功底吊打99%的程序猿,是否企业可以高薪挖这些数据结构专家来做架构师,五十万不够就一百万,比学校一年十多万的死工资来说,吸引力还是很大的。

三、我大学数据结构课程全专业考试第一,实验课满分。但工作十几年后,在软件开发中已经非常习惯于各种数据结构编码,但是你再让我像大学那样做题,我可能不及格,这说明我数据结构没学好吗?如果一个人能记住十几年前学习的课程的一半以上,这种人应该可以作为心理学专家一个研究课题。

四、分布式设计真的很重要,如果不是外包项目,而是一个可能有业务增长的产品平台,就必须考虑未来一两年业务的发展,现在比较成功的互联网产品一两年十几万用户很正常,这时候如果还是单体架构,研发一定会成为公司发展的瓶颈,而单体架构演进的第一个目标就是分布式。而分布式又是一个很复杂的体系,这方面比较优秀或者有很多经验的程序猿,往往比较受发展迅速的互联网公司欢迎。所以需求导向,现在程序猿不会点分布式相关知识,都不好意思去面试。

4

说什么都没用,整个项目让他试试就知道了,实践是检验真理的唯一标准

5

这得看你提供的岗位是面向业务的还是面向技术的。面向业务的,就算只会CRUD,人家业务思路清晰,能快速给你分析出业务实践方案,那就是合格的;如果是面向技术的,比如中间件开发之类,那也得看面向哪个方向,所谓全都懂的开发,基本只存在于网络上(或者你给的钱够多)。现在程序员面试,一个很不好的风气就是动辄问算法问数据结构,然而实际工作不过CRUD,何必呢?真的精通数据结构和算法的,你给的起钱?

6

个人觉得不行,数据结构是基础,程序是什么,是算法和数据结构,连基本的数据结构都不懂,你敢让他在软件大厦上做事情?只知道调接口的程序员风险很大。

7

我就说一下我的经历吧!

我12年毕业以后,干了两年实施和1年的开发,当时时间比较多,我就把Java 流行的框架都学了一遍,每个知识点都知道一点,都不精通,然后觉得自己了不起了,就出去找工作了,当时也大概5年经验,面试 了几场,直接被灭了!连最基础的Java知识点都不知道!


后来,就痛下心来,醒悟过来,终于认识到没有基础,那就什么都没有,于是我就把Java的知识点打牢,主要是java基础、并发编程、设计模式、JVM、数据结构。SSM的使用和源码,然后才开始学习分布式。

后来公司招人的面试中,很多人都存在这样的状况,简历上什么知识点都是精通,然后一问三不知。连最基础的Java知识点都不会。

8

CPU什么原理

9

数据结构那么多内容,不可能在工作中全部都会用到,没有用到的有些遗忘是正常的事情。但是对于数据结构的一些基本概念,基础知识还是必须的。

其次,既然谈分布式,个人建议你面试的重点要放在他实践的分布式开发,架构方面的内容,问深问细。类似分布式事务的处理,高可用,CAP,分布式缓存,数据一致性等方面展开问。

10

四年java,发表一点个人看法。敲代码是什么?是像很多人说的,我知道怎么用就行了,还是另一部分人说的,必须得了解底层?其实大部分情况是面试造航母,上班拧螺丝,对于初级和中级,会用就行是OK的,但是15k以上,你就得懂点底层了?底层的重要性是发生了重大bug,懂底层的能更快更准确发现bug,并分析产生的原因,这样才能有方向怎么改,对不对?而不懂,放在你面前的一行错误代码你也发现不了,这就是底层碾压……九层之台,起于累土。千里之堤,溃于蚁穴。有时间还是建议各位code好好分析一下底层,借鉴别人的思路和写法,你会发现,撸代码是如此有趣[大笑]

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章