本帖最后由 逆风TO 于 2018-4-26 14:34 编辑
公司名称:西安全景金融数据有限公司
公司地址:西安雁塔区安软件园唐乐阁E101
公司规模:50-150人
主要业务:正在研发自己的产品新财富官网
公司环境:如下图所示
面试之前:
按照套路填写之前上班的公司,这个不用多说该怎么做你们心里没点逼数么,,,,之前公司的联系人,之前公司的薪资,期望薪资,等等一系列
人事面:
Q:一位漂亮的小姐姐迎面走来,你好 A:你好 Q:你之前了解我们公司吗? A:了解了解(解读,能说不了解吗,一定要说了解啊,不然你干嘛来公司面试啊),我之前在网站看了贵公司的产品,主要是在做舆情监测系统,我之前做的是风控相关的系统 和贵公司的部分业务相同,另外我看了贵公司发布的需求中使用到的技术,我之前开发中也在使用,所以,来贵公司上班可以很快的上手项目。 Q:你之前和团队是怎么沟通的? A:哦,这个,我们每个周都有部门例会,如果是项目中的问题,我们有问题服务器,开发人员需要每天去服务器看自己负责模块的问题,及时的去解决 Q:你觉得给之前的公司创造了多大的利润? A:(看着挺漂亮的小姐姐...........),这个我没办法去估量,我只能给你描述我之前负责的模块全部做完了,至于创造了多少利润,我不知道 Q:你打算在西安待多久? A:我打算在西安长久发展,我家也在西安这边。 Q:好了,我觉得你还行,稍等一下我联系一下我们的技术,让他给你面试
A:好的,谢谢
笔试题:
没有笔试题,如果有题咱也不要怕,告诉你们一个经验,把笔试题拍个照片发到咱们的班级群里,依靠大家的力量,我相信你可以做完的
面试题:10分钟左右,一位屌丝走来,,,,
Q:你好
A:你好
Q:你java基础怎么样?
A:还好,还好
Q:你给我将一下java中有哪些锁?
A:java重要有这些锁:偏向锁、轻量级锁、重量级锁、读写锁、重入锁、共享锁、独占锁、自旋锁、公平锁、非公平锁、死锁、活锁
Q:还不错,那你给我具体的讲讲什么是重入锁吗?
A:可以可以,我给你举个例子可能更容易理解,如果线程A获取到了锁S,线程A再次进入的时候任然可以获取到锁S,只不过是获取锁的次数会增加1,java中的Lock锁的实现类ReentrantLock就是一个可重入锁,它具体的实现是更具AQS框架来实现的,AQS实现锁的本质是通过CAS算法实现的,CAS的优点是减少线程时间的切换,提高了效率,缺点是会出现ABA问题
Q:那你说说ABA问题怎么解决
A:(面试官成功入坑),哦这个,ABA问题是指在CAS操作时,其他线程将变量值A改为了B,但是又被改回了A,等到本线程使用期望值A与当前变量进行比较时,发现变量A没有变,于是CAS就将A值进行了交换操作,但是实际上该值已经被其他线程改变过,这与乐观锁的设计思想不符合。ABA问题的解决思路是,每次变量更新的时候把变量的版本号加1,那么A-B-A就会变成A1-B2-A3,只要变量被某一线程修改过,改变量对应的版本号就会发生递增变化,从而解决了ABA问题,(幸亏我之前背过,吓尿了都)
Q:谈谈你对spring的理解?
A:spring刚开始它的设计目的就是帮助我们管理系统中bean的生命周期,所以我们可以把bean的创建全部交给spring来管理,之后它有提供了和其他框架的整合,发展到现在,它不仅仅是一个框架了,我觉得他是一个生态群,例如现在的springdatajpa,springmvc都是spring生态圈的东西,可以无缝和spring进行整合,大大提高了开发的效率,目前我们使用的是spring-core、spring-bean、spring-aop、spring-web、spring-tx、spring-mvc这些模块
Q:假如现在有10万条电话号码的数据,怎么能导入到redis服务器中?需要考虑什么问题吗?
A:这个必须要考虑内存溢出的问题,我们可以不考虑效率,因为这些数据都是提前导入到系统中的,考虑到内存溢出,我们可以创建一个阻塞队列,把数据读入到阻塞队列中,然后从阻塞队列中把数据在导入到redis服务器中Q:我看你写的期望薪资是10k?
A:是
Q:这个薪资我们可以给到,你还有其他的问题要问吗?
A:你们其他待遇有吗?
Q:五险一金了啥的都有,有时候需要加班
A:好的,没有其他问题了
Q:我们需要下周入职
A:好的,好的
面试总结:
总的来说面试的的比较深,但是我们要保持一个态度,知道的东西一定要回答的比较全面,情景题不管怎么滴都要给面试官提供一个自己的解决方案,不管对错,按照自己的理解去说,面试过程中一定要保持好必要的礼貌
|