花旗银行面经

本文作者回忆了2019年在花旗银行的面试经历,详细描述了面试过程中的技术问题,包括分布式协议、数据库管理、Java基础等。面试官对技术基础和业务理解进行了深入探讨。尽管最终选择了eBay的offer,但这次经历让作者反思了传统金融机构与互联网企业在技术栈和工作方式上的差异。
摘要由CSDN通过智能技术生成

缘起

2019年从网易出来,一天,华钦猎头在领英上私信问我,有意向去花旗银行吗,我的思绪回到了久远的过去:

依稀记得大概在05年夏天的时候面过花旗,也是在上海张江,我女朋友(现在已经是孩子他妈了)陪我从杭州坐火车去的;坐地铁2号线到张江高科下,2号线到张江高科有一段是地上运行,这个场景记忆深刻(2号线是2000年开通的)。面试的manager也是从国有银行干了4年跳槽过去的,印象中主要面了项目经验,工行技术栈jsp+servlet,一些数据库方面问题,并没有印象深刻的技术问题。倒是工资,对方问的非常清楚。我表示更考虑前景,工资不是首要,结果对方manager说“出来干活,工资是最重要的,一定要谈清楚”😅。

他们流程好长,很久没消息,当时我都以为挂了,一个月后一位花旗新入职的hr在中午电话我,口头offer给了6500元每月,在当时也不是很有竞争力;另外张江高科那时候是蛮荒之地,比起来,工行开发中心在市中心,就拒了,没有去。不过这个结果当时还是有意义的,因为有offer在手,有底气,加上业余时间的学习,那段时间是我从业以来,技术上第一个跃进,并成功实施了抵押物评估项目和担保合同整合项目,居然成为工行新人口中小小的“牛人”,给了我信心继续打磨技术。后来还争取到了一个外派的机会,在加拿大工作学习了一年(当然后续形势变化加上不思进取,回国后在工行困住,那是后话)

思绪回到2019年当下,我开始了在花旗的第二次尝试。

一面(7月9日)

面试地点是陆家嘴广场,因为他们是暂时办公室装修搬到陆家嘴广场(他们本身办公楼还是在张江)。

我提前1个小时到了现场,对方还是比较重视的,三个人面试我(说是节约我时间),

主面试官A(也是浙大毕业,之前一直在Oracle,裁员事件后到花旗)。主面试官B,是部门经理,刚从大连调入过来。还有一个C在新加坡电话拨入。
一上来介绍,C打断我,问能否用英文,我想那就英文呗,很流畅,给了他们震撼级别的表现,后来我解释了下去过加拿大。

基本上聊项目经验为主,我介绍了网易圈圈,对方问了2PC分布式协议(部门经理问的),以及为什么3PC比2PC好?花旗和银联的面试特点是(相比互联网企业),面试官挖的不会太深,因为面试官的配备主要还是team leader,工作重心可能已经转向管理,不像互联网企业,一面一般是同行评审,级别和你相近的工程师,技术上就会深挖细节。

接下来在新加坡的C问了具体的业务相关问题,贷款管理系统,评级如何实现,授信如何实现?有个问题是,评级系统中法律文档的数字化,和工行一样,oracle中只存储meta数据,然后影像他们是存在emc的documentary系统中,容量问题?他们不在乎,因为现在存储很便宜了。另外他问了金融市场,这块我老实答复没接触过。

全程A听得很仔细,还不时问我几个补充的问题。他应该是比我毕业早几年,我观察到他头发已经斑白了。IT业费脑力啊。

另外,从面试中感觉到,工行,花旗,银联的比较大的问题就是只做应用,底层,框架,技术解决方案,完全完全依赖供应商。这点上和互联网企业不同。

二面(7月15日)

晚上7点,花旗印度人电话面试(实际大概接近一个小时):2位面试官,一位应该是国内的,英语比较清晰,7点准时到了;印度人口音比较重,有事耽误7点15分到的。

先是介绍自己:我在工行,连连,网易的项目经验;他问了在网易的圈圈应用的情况,我介绍了技术栈和基本的架构设计,以及采用什么微服务架构平台

然后是java基础:

  1. LinkedList和ArrayList的设计,ArrayList的Capacity概念。这个回答得我感觉不太到位,没有回答出capacity的具体作用。我还提到了线程安全,他说他没问这块。

  2. Hashmap的设计使用,hash类数据结构的要点,如何通过hashcode定位,如果hashcode有重复会怎么样?这块我感觉回答还可以,因为之前对这块梳理过。

  3. Spring Transaction。关于Transactional注解的使用,还有isolation level,后者我回答还好,但是对他给的例子,class1调用class2,如何在2种场景下写具体注解,在整个transaction是加在class1的,这个应该没问题;但是如果是2个新transaction,class1和class2分别加上啥,我回答上有一点是没把握,可能有误。

这些问题非常基础和细节,可能之前准备方向上更多是架构设计或者系统设计上了。如果把java api文档多看下会好点。

另外口音上确实是问题。如果工作中真是和印度对接,那怎么清晰沟通和表达是个挑战。

三面(7月21日)

L总直接面试,人还是挺nice的,放开了讲

面的java基本还是属于基础部分

  1. HashMap hashCode的编写,hashCode和equals的注意,看得出,他对java还是比较顺手的

  2. Base64的实现原理(Base64和Base58.md),我临时根据一个256的不可打印字符进行归纳,编码,大致推理,但是这块我之前确实没有深究;然后我谈起还有base58等其他编码格式,L总一口咬定没有这个编码,但是我当时印象中base58是看见过的。回来后查了,base58是新出来的,为了比特币钱包用的,编码更小,去掉了容易混淆的1和l,o和0等。L总之前是个技术牛人,可惜没空跟踪新技术

  3. 线程模型,他提到deamon线程和非deamon线程,我问是否reactor模型,大堂经理和业务窗口?他说不是,这个话题没有深入下去

  4. OpenApi

  5. 单元测试

后面2个都是和企业软件工程管理的痛点相关

我问为什么要扩招?答复是3年前这个部门被裁撤了,因为老大觉得性价比不高,整体搬迁到印度;后来老大走了,新老大接手,觉得还是上海团队竞争力高,所以又搬回来了。

评价:花旗的模式和工行软开很像,一家软件开发公司只为少数客户服务(甚至只为母公司服务),实践中这种模式会有问题,表现为企业议价能力很弱,员工技术视野不够宽阔。

总体上面试官还是非常nice的(除了跟印度人那次),后来也很快给了offer,花旗薪资总体和互联网差不多,但是没有股票期权这块。后来我选了eBay的offer。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值