携程后台开发两面

一面:

一面主要围绕项目问了问
1.分布式锁(项目里提到了)
2.秒杀流程
3.你这里内存标记是什么意思,解决了什么问题,时间复杂度?
4.为什么使用rabbit mq?
5.redis分布式
6.redis有哪些数据结构
7.hashmap
8.cms
9.其他and闲聊

二面:
本来安排的现场二面,我说买了两点的高铁。后来安排了电话面。晚上八点准时收到电话面试,大约只面了16分钟吧。面试官气势很足,开场就说明我们聊十五分钟左右,可能比较忙吧。
1.redis数据结构了解哪些(这个我不怎么了解,只用过string)
2.redis分布式用的什么算法,怎么添加一个新的redis进来?(一致性hash,后面一个我直接说项目里没用到不会)
3.hashmap concurrenthashmap
4.线程池
5.分布式锁
6.我问问题(阿拉巴啦),闲聊。


两面都没有手撕代码,基本上都是按照简历来问的#携程##面经##校招#
全部评论
同一个世界,同一个秒杀
点赞 回复 分享
发布于 2019-08-22 23:02
你秒杀用到分布式锁了嘛
点赞 回复 分享
发布于 2019-08-22 23:03
秒杀加1
点赞 回复 分享
发布于 2019-08-22 23:36
秒杀+1
点赞 回复 分享
发布于 2019-08-22 23:42
无二面是代表见光死吗?
点赞 回复 分享
发布于 2019-08-22 23:50
秒杀+1
点赞 回复 分享
发布于 2019-08-23 09:37

相关推荐

头像
10-16 08:50
已编辑
北京理工大学 算法工程师
我遍览群书,发现关于程序员的面试技巧,好的建议其实并不多。1.给自己写一份非常专业的简历我的建议是,如果你想增加自己的入选机会,那最好还是花点钱制作一份专业的简历。相较于你将来可能得到的巨大收获,这真的只是一个小小的投资。2.研究面试官当我联系程序员来面试的时候,我总是会事先发电子邮件给他,并附上我的名字和博客地址。但是让我惊讶的是,当我给他面试的时候,他竟然对我还是一无所知。再举个正面的例子,我在面试时也碰到过这类开发人员,甚至能对我以前写的一篇博客或者做的教学视频上面的内容侃侃而谈。你说我会推荐哪个?面试官也是人,也会有人性的弱点和特点。Dale Carnegie曾说过,要让别人对你感兴趣,最简单的方法就是你先表达出对对方的兴趣。不管这种方法是否有欠公正,但是如果你想面试成功,那么我建议你事先最好先好好研究一下你应聘的这家公司和面试官(如果知道的话)。当今社会的信息是如此的发达,我们完全可以在Facebook、Twitter、微博、博客上找到任何人的资料。即使你只是大致浏览一番,也会让你受益良多。3.获得内部推荐知道找工作最简单的方法是什么吗?那就是获得内部推荐。这不但可以增加面试机会,还能提升40%的录用几率。前阵子,我找到了一家心仪的公司。然后直接投简历?NONO,猜猜我是怎么做的吧?首先我找到一名和我有共同想法和意见的开发人员,然后开始关注他的博客。接着我在他的博客中留言、发表建议,并且表现出对他的工作和公司非常感兴趣的想法。最后我成功拿到了这个宝贵的内部推荐资格。很多程序员会说,“可是,某某某公司里面的人我一个也不认识啊”。如果你想就此放弃,那当我什么也没说,如果你愿意试试,我敢打赌,你总能想出一种方法达到你的目的。不过这有个秘诀,那就是首先你得在网上创建自己的“名片”——让别人有了解你的机会,所以do it now吧。4. 写好算法这是每一个开发人员都应该具备的重要技能,而且真要掌握起来也并非那么难。在很多面试中,都会有这样的问题,要求你在白板或者电脑上解决编程问题,但是许多程序员,即使是那些非常优秀的程序员,都会一下子大脑一片空白,完全理不出思路来。如果你能花时间学会如何解决这种类型的面试问题,那么下次再碰到这种场景,就不会这么紧张了。我们会紧张其实和怯场无关,主要是因为我们不熟悉这些问题,也没有自信能解决这种问题。在这方面建立起自信之后,你就再也不会紧张了。5.活力洋溢地回答问题只用一个字或者一句话,照本宣科平平无奇地回答问题,或许在技术上是正确的,但是你忘了应该借此机会好好展示自己的激情——这才是一个开发人员能带给团队的最大正能量。举个例子说,如果我问你什么是多态性,我不是要你按照课本中的定义重复给我听,我希望你能就这个主题阐述一下,然后我们可以更深入地聊一聊。6.小心“陷阱”问题你为什么换工作?说说你最大的优点和缺点。最近一次你是如何解决和同事之间发生的技术分歧的?在回答问题之前,你最好明白面试官问这些问题的目的,掌握如何回答这类问题的技巧。就先说说第一个问题吧“你为什么换工作?”在大多数情况下,面试官想知道的是你是否是一个爱说三道四、惯于诽谤抨击雇主的人。所以千万不要上当。7.永远不要撒谎最糟糕的事就是在面试的时候撒谎。知之为知之,不知为不知,如果你确实不知道,千万不要自作聪明来编造问题的答案。相反,你应该诚实地说,你不知道或者你并不是100%肯定,但是你愿意尝试一下,然后再讲讲自己的想法。讲完之后也可以问面试官正确答案是什么,以显示你对此非常感兴趣。实话告诉你,大多数面试官问的问题都是他们知道的问题,不然如果你滥竽充数给你通过的话就会显得他们像个傻瓜。所以千万不要抱着侥幸心理,一旦发现你在撒谎,面试官马上就会质疑你的人品。8.不要太诚实很多程序员会过多地透露自己的信息,不要以为诚实和完全透明就是最好的政策,殊不知过犹不及。第7条所说的不可撒谎诚然不错,但是我们也没必要将自己所有生活的细节和所有缺点都告诉给面试官。有个性是好的,但是如果暴露了性格缺陷就坏事了。试想一下,要是你说自己喜欢赌博或者沉迷于魔兽世界,我敢打赌,面试官肯定会重新审视你。所以在说自己信息的时候一定要慎重,因为这不但会暴露你的缺陷,还会显得你缺乏应有的判断力。9.基础知识必须牢固是的,很多程序员在面试的时候,甚至理直气壮地说,他们不知道链表和堆栈,因为他们没有受到正规教育或者早就还给老师了。我也承认我们在工作的时候是用不到那些深层次的计算机科学概念的,但是作为一个专业的软件开发人员,你至少应该知道一些基本知识。最后呢祝各位同学工作顺利,关注我分享更多面试知识,嵌入式c++的同学可以看一下大佬总结的面经  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
点赞 评论 收藏
分享
评论
点赞
45
分享
牛客网
牛客企业服务