第一轮

1. 笔试 30 mins

一共六道大题,前两题有4-5个小题。

第一道大题主要是考察Java Collections:

a. LinkedList和ArrayList的区别

b. Set和List的区别

c. equals方法和hashCode方法的区别与联系

d. LinkedList更适合implement Queue

等等

第二道大题主要是考察Java Concurrency:

a. Volatile关键字的作用

b. notify和notifyAll区别并举例适用情况

c. ReadWriteLock的性质

d. Implicit lock和explicit lock比较

等等

第三道大题

写一个method比较两个double值的大小,关键在于不能用 == 而是用equals

第四道大题

以下程序的输出是什么

public class Demo{
public static void main(String [] args) {
print(3.14);
} private static void print(Number n) {
System.out.print("Number: " + n);
} private static void print(Double n) {
System.out.print("Double: " + n);
} private static void print(Integer n) {
System.out.print("Integer: " + n);
} private static void print(Float n) {
System.out.print("Float: " + n);
}
}

答案是 Double: 3.14

主要考察java中3.14这种写法默认为double类型

第五道大题

给了一个程序让指出程序的缺点。程序是用hashmap实现的,可以put整数然后get最大值。缺点两个1.线程不安全 2.getMax()效率低,因为用Collections.sort来找出最大值,可以用PriorityQueue优化。

第六道大题

给了一部分程序,实现空白的部分。主要是考察对Obsever设计模式和多个listener添加删除时的线程安全问题。用ConcurrentHashMap实现。

2. 面试 30 mins

一个面试官问一些Java基本问题,abstract vs interface,工作中interface的适用场景等。

然后问了下金融软件的系统设计的问题,比如如果客户看到的股票价格会过一会儿才显示正确值,可能是什么原因等(High Throughput causing delays)。还有如何优化系统效率,如何在多线程情况下保证正确率,如何用map-reduce方法优化系统等等。

最后问了下对Java系统怎样做high volume测试,有一个问题我没有回答上来的是“相比其他语言,Java high volume testing的最大缺点是什么”,我答了内存限制、gc的缺点等但是面试官并不认同也没有告诉我正确答案。

第二轮

1. 技术面 40 mins

一个面试官拿着第一轮笔试的卷子前前后后问了很多延伸问题比如HashMap工作机制,daemon threads vs user threads,怎样stop一个线程,double类型为何不能用==比较,ConcurrentHashMap工作原理,ArrayList、LinkedList、HashSet工作原理,线程中如何处理异常等等很多问题。

2. CV面 25 mins

一个面试官拿着简历问各种问题。主要是看对自己做过项目的理解。

3. Manager面 25 mins

Team Lead也是招聘组的头头问一些非技术问题比如为何离开原公司,对系统的理解,对金融的理解等等

4. Manager面 25 mins

上一轮组长的boss,主要介绍一下部门情况和将来的工作状况。也问一下为啥离开原公司等

第三轮

1. HR面 25 mins

主要是问以下签证情况,薪资要求等然后介绍一下公司福利和待遇

2. Manager面 45 mins

主要是跟技术组合作的金融业务组的大boss来问问题,他对我简历上一些金融数据分析的经历很感兴趣,大部分时间都是问的这些项目经历。也问一些奇奇怪怪的问题比如我感觉国内大学和英国大学各自的优缺点等。

面试全都过了,口头Offer也拿到了,不过公司并不太想提供签证所以一直拖着不给书面Offer,所以对公司感官很不好,应该是不会去了。

野村证券伦敦分部面试 - Java岗位的更多相关文章

  1. 2014广州Java岗位面试汇总

    本文记录了最近一些朋友提供的面试经历,真实数据,仅供广州求职的朋友参考.为行文方便,一律用主语”我“进行.部分词语可能造成读者不良反应,敬请留意. 1  广州沣首信息科技有限公司 公司所在区域相对较偏 ...

  2. Java岗位面试题分享:jvm+分布式+消息队列+协议(已拿offer)

    个人近期面试情况 今年二月以来,我的面试除了一个用友的,基本其他都被毙了,可以说是非常残酷的.其中有很多自己觉得还面的不错的岗位,比如百度.跟谁学.好未来等公司.说实话,打击比较大. 情况基本上是从三 ...

  3. 分享系列--面试JAVA架构师--链家网

    本月7日去了一趟链家网面试,虽然没有面上,但仍有不少收获,在此做个简单的分享,当然了主要是分享给自己,让大家见笑了.因为这次是第一次面试JAVA网站架构师相关的职位,还是有些心虚的,毕竟之前大部分时间 ...

  4. 7年.NET面试Java的尴尬历程

    先简单介绍LZ 现如今的情况,LZ 1992年出生,2012年实习,大专学渣一枚,实习期直接被校企合作直招到公司做.NET开发,现如今在某三线城市做后端技术经理,7年开发经验(5年.Net,2年.NE ...

  5. 最近面试 Java 后端开发的感受!

    阅读本文大概需要 4.3 分钟. 首发:cnblogs.com/JavaArchitect/p/10011253.html 上周,密集面试了若干位Java后端候选人,工作经验在3到5年间.我的标准其实 ...

  6. 最近面试java后端开发的感受:如果就以平时项目经验来面试,通过估计很难——再论面试前的准备

    在上周,我密集面试了若干位Java后端的候选人,工作经验在3到5年间.我的标准其实不复杂:第一能干活,第二Java基础要好,第三最好熟悉些分布式框架,我相信其它公司招初级开发时,应该也照着这个标准来面 ...

  7. 面试 Java 高级后端开发,要准备哪些知识点?

    其实公司肯花时间让你去面试,前提条件一定是通过你的简历,一定发现了你和公司的匹配点,也就是说,一定是有录用意向的. 在技术面试的时间段里(最长1个小时),你如果能展现你的优势那是最好的,但如果你做不到 ...

  8. 最近面试 Java 后端的感受!

    来源:cnblogs.com/JavaArchitect/p/10011253.html 上周,密集面试了若干位Java后端候选人,工作经验在3到5年间.我的标准其实不复杂: 第一能干活,第二Java ...

  9. 苏州市java岗位的薪资状况(1)

    8月份已经正式离职,这两个月主要在做新书校对工作.9月份陆续投了几份简历,参加了两次半面试,第一次是家做办公自动化的公司,开的薪水和招聘信息严重不符,感觉实在是在浪费时间,你说你给不了那么多为什还往上 ...

随机推荐

  1. neutron flat和vxlan网络访问外网流量走向

    OpenStack版本:Mitaka 物理节点: Hostname Management IP Tunnel IP Role test-ctrl-01 192.168.100.11 192.168.1 ...

  2. JavaScript Style Guide中文总结

    github原址:https://github.com/airbnb/javascript 类型*基本类型:包括string.number.boolean.null.undefined,存储的是值本身 ...

  3. 兼容ie浏览器的placeholder的几种方法

    项目中遇到的问题,试了几种方法,今天整理出来,如果有不合适的地方,希望大家多多提意见. 第一种方法是:使用html新增的属性 “data-”来实现的,实现的时候,input框没有使用placehole ...

  4. 在windows环境下利用virtualenv搭建Python虚拟环境

    安装Python 安装时只有一点需要注意,一定一定要将Python添加到系统环境变量那一项勾选. 安装 virtualenv 加入系统目录之后,命令行(CMD)下就多了一条命令:pip.用pip可以自 ...

  5. 第一天上午——HTML网页基础知识以及相关内容

    今天上午学习了HTML基础知识以及相关内容,还有DW的基本使用方法. HTML(HyperText Markup Language):超文本标记语言,超文本:网页中除了包含文本文字之外,还包含了图片, ...

  6. sleep()

    sleep() 方法可以使当前线程(即调用该方法的线程)暂停执行一段时间, 让其他线程有机会继续执行, 但它并不释放对象锁: 所以当sleep()方法结束时: 当前线程还是拥有对象锁: 当线程拥有对象 ...

  7. css样式,边界和边框,格式和布局

    1.大小:width:宽:heigh:高 2.背景:1)background-color:背景颜色 2)background-image:背景图片url路径 3)background-repeat:图 ...

  8. Log POST Data in Nginx

    先编译Nginx的echo module: ./configure --add-module=./echo-nginx-module-0.54 make make install 可以在github上 ...

  9. socket套接字编程

    一.概述 1.socket是一种进程间通信方式,既可以用于一台机器,也可以用于网络.常用语C/S模型. 2.可以跨越Windows和Linux操作系统,可以跨越不同语言. 3.注意网络字节序和主机字节 ...

  10. vue-router如何根据不同的用户给不同的权限

    闲聊: 小颖去年在上家公司用的vue1.0之前在做路由这块用的router.map,但是现在vue2.0里已经不能用了,所以之前解决权限问题的例子,小颖也参考不了呜呜 之前看一个美女写的:elemem ...