关于2022招聘季:面试官RocketMQ是什么它有什么特性与使用场景

哈喽!大家好,我是小奇,一位酷爱分享的程序员小奇打算以轻松风趣的对话形式来分享一些技术,如果你感觉通过小奇的文章学到了货色,那就给小奇一个赞吧文章继续更新,能够微信搜寻【小奇JAVA面试】第一工夫浏览,回复【材料】更有我为大家筹备的福利哟!回复【我的项目】有我为大家筹备的一些我的项目源码。一、前言作为一名Java程序员,RocketMQ底层的一些原理是咱们不用学会就能够搬砖工作的一种技能点,然而小奇为什么还要讲一下呢?难道就是为了节约大家1分钟的宝贵时间,一个人1分钟,50万人就是1年,5000万人就是100年,赚了,小奇以一己之力胜利搞挂一个人(血赚)。 当然不是,并且小奇的文章也没有那么多人看,最多也就节约个肾吧。 学习RocketMQ底层原理是因为面试官要问啊!,所以咱们就要学,什么?不实用的你不学?那街坊小奇可要使劲学啦,到时候面试官只有小奇不要你。 至于你问为什么面试官要问RocketMQ底层原理呢,这个。。。我把这次机会留给你,下次你面试的时候面试官问:“讲一下RocketMQ底层原理”。你:“面试官你好,请问为什么你要问RocketMQ底层原理呢,你给我台电脑,我五分钟给你搭建好图书管理系统他不香吗,咱们键盘上见真章”。这时面试官就会通知你答案,你就能够把答案打在评论区,让小奇以及泛滥小伙伴一起晓得一下到底为什么要问? 二、面试在一个晴朗的周日,我来到了一个生疏的园区(别问为什么是周日,问就是997,不过为了填饱肚子的打工人,只能明知山有虎、偏差虎山行),坐在生疏的会议室,期待HR小姐姐去叫面试官,此时我的情绪和各位小伙伴一样五味杂陈,放心面试官问的会不会很难?问到我的常识盲区我该怎么办?一会自我介绍的时候要不要吹一下我和小奇的关系? 一位英俊潇洒,眼神犀利的面试官走了进来,看到他那犀利、好像能看穿所有的眼神 ,我在想要不然一会就不要20k了,要8k得了,这个面试官一看就不好糊弄啊,然而我想起来我来之前刚看了小奇的趣学编程系列,我曾经齐全学会了小奇的精华,我登时就来了底气,决定一会要30k,不给就学小奇赖着不走(哈哈) 面试官:小奇是吧,带简历了吗? 我:没带,当初彩印两块一张,我简历五张,每次面试都要花费十块,我敌人说了还没工作就先让你掏钱的工作不要去。 面试官:。。。那你靠什么来驯服我,让我录用你 我:气质? (此时面试官并没有叫保安,而是从门后拿出了恭候我多时的棍子,我霎时怂了) 我只好从我的双肩包中拿出了我上午从其余公司面试官手中要回的简历,上午的情景是这样的。上午的面试官:明天的面试就到这吧,回去等告诉吧!我:面试官你好,如果贵公司不打算录取我的话,能不能把我的纸质简历还给我,我下午还有一家面试。上午的面试官:我说你的简历怎么皱皱巴巴,原来你始终在循环利用啊!这个症状呈现多久了?我:半拉月了。。。(当我把皱皱巴巴的简历交给面试官后,这场面试才得以持续进行。。。)三、RocketMQ是什么面试官:我看你简历上写的精通RocketMQ?(哼,面试官轻蔑的一笑) 我:原本不想写精通的,然而同行们抬爱,非逼着写,然而也无可非议,虽说没有达到炉火纯青,然而也差不多登峰造极了吧。 面试官:呵呵、那你先说一说RocketMQ是什么吧 我:RocketMQ是一个音讯队列中间件,通过将音讯放入队列中来实现解耦,削峰填谷等成果。 面试官:嗯,RocketMQ音讯模型是什么样子的? 我:RocketMQ中次要有三局部组成,别离是音讯生产端Producer、音讯存储端Broker、和音讯生产端Consumer。 面试官:嗯,RocketMQ有哪些音讯发送模式呢? 1、基本模式基本模式中咱们生产者能够通过三种不同的形式发送音讯,别离是同步发送、异步发送、单向发送,其中同步发送就是须要接收端响应接管到以后音讯后能力再次发送音讯,而单向发送是不须要等接收端响应接管到音讯就能够再次发送的。另外消费者生产音讯也有两种模式,一种是消费者被动去Broker上拉取音讯的拉模式,另一种是消费者期待Broker把音讯推过来的推模式。 2、程序音讯发送模式程序模式就是保障音讯发送到Broker的程序和消费者从Broker中生产的时候程序是有序的,那么如果只有一个Broker的话必定是有序的,如果多个Broker就无奈保障有序性,所以RocketMQ保障的是音讯的部分有序,并不能保障全局有序。 3、播送音讯发送模式播送音讯发送模式针对多个消费者来说并不是有一个消费者生产了音讯,这个音讯就没有了,而是每个消费者都会生产到这一条音讯。就像我用大喇叭在村里播送说张寡妇和王光棍的事件,我只说了一遍,然而村里的人都听到了,这就是播送模式。如果不必播送模式,那么我找到刘婶跟她说了张寡妇和王光棍的事件,那么也只有刘婶她一个人晓得(当然,刘婶晓得了前面全村最晚一夜之间就全晓得了) 4、提早音讯发送模式提早音讯就是生产者发送音讯后,音讯并没有被及时的发送进来,而是等过了一段时间才收回去。 比方我下面跟刘婶说了一个八卦,我让她不外传,那她必定做不到啊,我那只能要求她一个小时之内不容许外传,怎么也得给我预留一个小时让我逃跑啊 后果刘婶说一个小时她忍不住,最初协商她只能忍五分钟之内不说,那我也没什么好说的了,五分钟我能跑二里地了,总比没有工夫强。 我还没来得及跑呢,就看到刘婶拦住了骑大梁自行车筹备回家做饭的老林,老林从自行车上下来满是期待的表情问:“刘婶呀,什么事啊,这么神秘”。只见刘婶看了一眼本人手上镀金的小腕表来了一句:“再等我四分半钟,我给你说一个机密”。 我彻底服了,咱们村不愧是人才村,个个都是人才。。。 5、批量音讯发送模式批量音讯发送的意思就是将多条音讯合并成一个音讯,一次发送进来。这样的益处就能够缩小网路IO的次数,晋升了效率。 比方之前我在村里说八卦的时候,我见了刘婶我说:“哎呀刘婶呀,你可不晓得”。刘婶:“我的确不晓得呀,你啥都没说呀”。我说:“就咱们村的张寡妇啊,可真行”。刘婶:“张寡妇怎么了,哪里行,难道比我还。。。”。我说:“还有咱村的王光棍,独身四十多年了,没想到还有这本事呢”。刘婶:“啥本事啊,不是小奇你能一下说进去不,我快憋死了,快说到底啥事呀”。我说:“就他俩在村东头苞米地里那啥”。刘婶:“那啥呀”。我说:“我先回去吃饭了啊,吃完饭我再回来跟你说剩下的”。刘婶:“你这个兔崽子,你看我能让你吃饭吃安省不,吊我的胃口,你找死”。 明明能够一下说明确的事,我非要演上一部60集的电视连续剧,冯导听了都连连叫好啊。 6、过滤音讯发送模式在RocketMQ中咱们能够应用Message的Tag属性来过滤信息,就是咱们指定这个信息哪个消费者能够收到,那么它就能够收到,其他人收不到。 比方我发现村里的八卦了,我忍不住想让全村里的人晓得,那我就在村里的微信群里发一下不就行了,然而张寡妇和王光棍也在微信群里呢,我这么一发他们不就晓得是我说的嘛。 那我只好先将他们两个屏蔽了,而后把音讯收回去,而后霎时群里炸了锅,只有他两个人不晓得产生了什么。 7、事务音讯发送模式事务音讯是在分布式系统中保障最终一致性的两阶段提交的音讯实现,他能够保障本地事务执行与音讯发送两个操作的原子性。 这里保障的是生产者发送进来的音讯与生产者本地存储的音讯要统一,比方咱们购买商品下单,咱们来简略形容一下流程。 1、客户下单。2、程序生成一条订单信息(这个时候还没有落库)3、这个时候向快递服务发送了一条音讯,让快递服务筹备一下这条订单的货。4、这个时候将生成的订单信息落到订单服务的数据库中 下面是一个失常的流程,然而如果订单信息落库的时候失败了呢。这个时候曾经向快递服务发送了发快递的音讯了,然而订单服务落库失败,没有这笔订单,那就是白白发了一个快递。回头对账对不上,领导宰了你的心都有了。 这个时候咱们就须要进行一个事务的解决了,咱们能够进行一个两阶段提交来保障事务。 面试官:小伙子真厉害啊,我这边没有什么要问的了,你还有什么问题要问(面试官两眼放光) 我:额。。。面试官我当初能够走了吗,我一会还有一个面试呢。 面试官:还面啥别的公司啊,就来我这吧,条件轻易开 我:那就100k吧(此时面试官又拿起了他筹备好的棍子) 面试官:你要是不来就给我举荐一下,让他人来我这面试一下 我:你先好好学习一下RocketMQ吧,明天幸好只是我来了,如果是小奇的忠诚读者来了,你将会被虐的很惨的。(我将我的博客地址留给了面试官,转身留下了帅气的背影,而面试官落寞无神的呆呆的坐在那里,好像一个亿离他而去。。。)四、总结这里对于RocketMQ还没有整顿结束,文章前面继续更新,倡议珍藏。 文章中波及到的命令大家肯定要像我一样每个都敲几遍,只有在敲的过程中能力发现自己对命令是否真正的把握了。 如果感觉我的文章还不错的话就点个赞吧,另外能够微信搜寻【小奇JAVA面试】浏览更多的好文章,获取我为大家筹备的材料。回复【我的项目】更有开源我的项目继续更新分享给大家。

May 9, 2022 · 1 min · jiezi

关于2022招聘季:面试技巧无领导小组面试怎么面

@TOC 一、什么是无领导小组面试1.1 概念无领导小组面试,是群面或者说小组面试最罕用的一种形式,其让肯定数量的面试者依据同一问题进行探讨,最终得出小组的对立论断。 1.2 意义这种面试形式,能够在短时间内疾速测验出一个候选人的团队单干、逻辑思维和临场反馈能力,也能用来做出迅速的淘汰判断。 在面试低压的气场之下,一个人还能临危不乱,放弃沉着业余的工作状态,根本能够由此判断出他入职之后,也能很快地融入团队和胜任工作。 并且,群面所代表的会议场景,是实在的职场中每天都会产生的,一个人在群面中的体现,根本也就可能反映他退职场中、团队中的角色, 因为面试官不光是在为职位筛选适合的人选,更是在为他们本人筛选将来的共事呀! 1.3 模式无领导小组面试分为单组面试,和多组面试。绝大多数状况下,都是单组面试。 多组面试,顾名思义,就是有多个小组同时进行面试,试题是对立的,然而每个小组的角度会有所不同,须要各个小组从本人小组的角度进行阐释,并对其余小组的观点提出质疑和对其余小组的质疑进行解答,前期的模式相似答辩。 二、无领导面试的流程2.1 面试前同组面试者陆续达到,并汇集在一个房间内。 房间内可能不只是一个小组,如果同一时间有多个面试者应邀离去面试,那么就能够思考本场面试是不是无领导小组面试了。 此时是同组成员意识、理解的机会,在正式面试前面试官也会询问本组面试者是否曾经在房间内进行了沟通,有初步的相互意识。 如果未曾进行沟通,那么接下来的环节就是自我介绍,并发问组内成员对其余面试者的意识。 2.2 自我介绍这个阶段属于热身阶段,其目标是给每个应聘者自我展现的机会,更重要的是让大家通过自我介绍相互相熟,为 小组活动奠定根底。 在做自我介绍时不要缓和,声音要清脆,以面试官及其他小组成员能听分明为准则,表白要尽可能清晰晦涩。 当小组其余成员在自我介绍时,应该认真凝听,预先判断小组其余成员在自我介绍时的背景、性格特征以及劣势等等,为本人在后续探讨环节中找准角色定位作铺垫。 2.3 规定阐明在正式开始小组面试前,面试官会首先交代整个小组面试的大抵程序和规定,包含分组的形式、分组后果、面试过程中的注意事项等。 在这个阶段,咱们要认真凝听 并记录下相应的规定程序,避免在后续探讨过程中呈现违反规定的状况。 如果在后续面试过程中违反了相应的规定将使整个小组的成员处于极为被动的地步,给面试官留下不好的印象。 在形容完规定后,面试官个别会留下几分钟工夫作为面试者的发问工夫,如果对规定不清晰、不确定的,须要在此时进行确认。此时不可太顾及脸面或怕在这时候发问会被认为不专一,如果在面试过程中触犯了对于的规定,反而会留下更差劲的印象。 2.4 审题思考阶段该阶段不做交换,属于独立思考工夫。 此时,个别是每人一份试题(同一道题目)、一张白纸与一支笔。这个具体看面试官安顿。 在获知题目和拿到资料之后,个别会有 5 分钟左右的审题、思考工夫。在这短短的 5 分钟工夫内,要实现题目资料浏览以及对题目大抵的考核方向和范畴作判断等一系列思维过程。 对于题目以及相干资料信息的正确理解十分重要,这间接决定了你在后续探讨中的思路及表白的观点是否正确, 甚至整个小组对于题目的探讨及把握是否合乎题目设计的用意等。 在拿到题目和资料之后,肯定要从容,尽可能做到一边浏览一边思考:这类问题属于什么类型的问题,我拿到的这部分资料的主题含意是什么等等。 如果是面试软件工程师的话,个别题目就是我的项目案例:一个xx 的我的项目,呈现了xx 问题,某某某的做法是xx,后果是xx 。当然了,题目的形容必定不会写得这么直白,然而大体的逻辑就是这样子的。 题目具体考验的有项目管理思维、技术深度和广度等。当然了,作为毕业生,不会要求那么高,只须要有肯定的理解即可。 例如项目管理次要就是三要素【老本、工夫、品质】,在工夫容许范畴内用最小的老本,达到交付要求的品质。 留神了,品质方面不须要谋求完满,实现比完满更重要。实现意味着我的项目的可交付,而完满须要投入更多的资源,包含工夫与老本上的投入,这与项目管理的思维是抵触的。 技术方面须要对风行技术有所理解,能说出相应的优缺点,这一点须要平时多接触各种框架,但当涉猎,背八股文也是能够的。 如果是多组面试的话,题目的普适性比拟高,因而不会考查具体的技术,但此时考查的次要就是一个人的逻辑思维能力和应变能力了。此时肯定要坚守【富强 专制 文化 谐和 自在 平等 公正 法治 爱国 敬业 诚信 友善】社会主义外围价值观,不可有不当舆论。 2.5 小组讨论此阶段工夫较长,个别至多有30分钟,次要是用于小组内意见的对立。 在这个阶段会波及角色的划分,次要有 领导者:疏导和调整方向,激励发言工夫控制者:制订正当的工夫节点,计时揭示建议者:发表认识和倡议记录员:重要观点的整顿与记录总结者:向面试官陈说小组的整体观点理论中,工夫控制者比拟少在后期就呈现,大概率是某个成员在途中想起并担当,此时就只有计时和揭示工夫的作用。 当然了,这不代表其就不重要,工夫观点也是考核要点之一。如果你发现没人充当该角色的话,能够被动承当,并在适合的机会表明本人的角色和对剩下工夫的布局。此外,工夫控制者也应该在组内踊跃发言,提出本人的认识。 当小组呈现跑题、超时时,须要及时纠正。但不可针对发言的成员,此时最好用“咱们”、“咱们”这类的主语,放弃组内氛围的谐和。 2.6 总结总结者须要在规定工夫内晦涩、清晰、有条理、残缺地向面试官论述小组的探讨后果,要求口才好、逻辑比拟清晰谨严。 一般而言,领导者把握大局,而整顿出的笔记可能只有记录者能了解,因而此二类角色更适宜担当该项工作。如果有成员盲目更适合的话,也是能够被动争取。 在总结过后,可能会有一个成员补充环节,如果总结者有所脱漏或表述有误、不清晰的话,能够在这个阶段提出。 2.7 面试官发问常见问题: ...

April 22, 2022 · 1 min · jiezi

关于2022招聘季:程序员笔试和面试过程中有哪些是面试官眼中的减分项和加分项

笔者从 2007 年加入工作至今,从事了15年的企业级应用软件的设计和开发工作,期间也屡次负责公司的口试和面试官,这里分享一些我眼中的减分项和加分项。本文仅代表我个人观点。 简历环节程序员投递简历,通常面试官对简历外观的颜值(即字体,排版)等不会有太多要求,只有内容简洁,清晰,易读即可。尽量避免有任何错别字呈现。 但有一个减分项各位求职者需注意,在简历里呈现和本人求职的岗位相干的技术术语中,千万不能呈现拼写错误。比方有一次我遇到一个求职者,应聘 HTML5 前端开发岗位,但他简历中把 HTML5 误写成了 HMTL5. 等到他实现了整个面试环节后,要来到之前,我才善意地给他指出这个拼写错误。 或者在他眼中这只是一个小问题,不值一提,但在咱们面试官眼中,会感觉这个面试者粗枝大叶,不够谨严。 口试环节咱们个别会通过邮件将口试题发送给应聘者,给出一到两周的工夫实现答题。最初将解答的源代码提交到 Github 上。 应聘者在答题过程中,咱们能够顺带查看该应聘者在 Github 上的账号的其余代码提交记录。如果业余时间参加了其余开源我的项目,无疑是一个加分项。在应聘者提交口试题代码的过程中,咱们会通过应聘者 git commit message 的一些细节,察看应聘者的解题思路,和根本的编程素养。 如果应聘者直到 deadline 再一次性把所有的代码提交到 Github 上,咱们也会感觉这种行为稍稍有点减分,因为这种操作没有给本人留下任何的 buffer time 即回旋余地。如果是理论工作中,一个职业程序员偏向于邻近我的项目发版时,再一股脑把本地编写好的代码提交到 develop 分支,这会给其 peer 程序员们和 Quality Enginners 们带来多大的困扰? 面试环节如果是应届生求职,面试分为小组群面和1:1面试两轮。如果是社招,个别只有1:1面试。 有些应聘者可能会认为小组群面时体现的越踊跃,讲的话越多,给面试官留下的印象更好,其实不然。小组群面个别是每个小组被调配一个话题,在规定的工夫内开展小组讨论,最初选出一个小组代表进行 presentation. 如果小组代表做的 presentation 条理清楚,主题突出,无疑是加分项。然而面试官也会认真察看小组群面时,每位组员对推动话题探讨,乃至对最初生成的 presentation 的奉献水平,也就是后果驱动的考核形式。就算探讨过程中踊跃发言,然而如果思路和方向与最初的 presentation 南辕北辙,那也不会给面试官留下太好的印象。 在 1:1面试过程中,应聘者第一要留神的就是诚恳,比方把"参加了某我的项目"包装成"在某我的项目中负责外围的设计和开发工作",这种造假如果在和面试官的交换过程中被发现,无疑是一件很难堪的事件,也会成为减分项。在技术交换过程中,如果遇到本人不太熟悉的知识点,或者依据本人已有的常识体系去推理,向面试官讲述出本人的了解,或者坦然抵赖本人这一块以前没有理解过,这两种办法都是能够承受的。切忌不懂装懂,在谬误的探讨方向上越走越远,给面试官留下更蹩脚的印象。 以上是自己在工作过程中负责口试官和面试官的一些浅显感触,心愿对各位求职者有所帮忙。 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 16, 2022 · 1 min · jiezi

关于2022招聘季:如何在一票面试者中脱颖而出

大家好,我是程序员田同学! 入行以来,见过了太多的技术博主,大都以BAT这些大厂的程序员居多,领有大厂闪闪发光的经验诚然让人提神,然而不可否认的是:生存中大都还是普通人居多,学历一般、经验一般、公司一般。 曾亲眼目睹一个共事用六个月的世界,从一个应届毕业生到11K的月薪(应聘城市是郑州,一个没有互联网的城市),亲眼目睹了他的薪资和技术水平的飞跃。 以我为数不多的工作教训,集体感觉进步本人在面试中的筹码有三个方面,从硬实力、集体博客、开源我的项目三个方面着手,让本人在一票的应聘者之中怀才不遇。 一、硬实力先前找实习工作时,本人晓得技术学的磕磕巴巴,面试的时候心田很虚,即便会的知识点也答得不忍直视。 硬实力是你面试时候的底气,面对面试官提出的各种技术问题可能娓娓而谈,给面试官一种深不可测的感觉。 本文就不一一列举各种面试题,网上各种面试题形形色色,只在此搭建一套常识体系,读者能够选择性的学习。 去年找工作时总结了一套面试题,小伙伴们能够选择性的学习。Java常见面试题 1、计算机根底①数据结构数据结构的重要性显而易见,可能很多的开发小伙伴感觉本人开发素来没有用得上,然而在Java的源码中大量用数据结构,想要进一步晋升本人的技术水平,数据结构就是基石。 图、树 其中树比拟重要的是红黑树、B树、B+树。至多要晓得它们的构造和其余比照的区别。 排序算法 各种排序算法的工夫复杂度和各自的利用场景和优缺点。 ②计算机网络网络七层架构 从浏览器发一个申请到后端过程 Http申请详解 申请头、申请体、申请行蕴含哪些内容。 ③平安SQL注入 Xss攻打 CSRF攻打 2、Java3、JavaWeb4、、数据库5、、Spring、Mybatis、SpringMvc想要成为一名资深的研发人员,不能仅局限于利用框架,更多的是对源码层的了解。 6、利用组件(RabbitMQ、es等)7、SpringCloud8、Jvm集体认为是最难啃的一块骨头,内容切实是太干燥了,网上有一些针对性的面试题,能够选择性的啃这些面试题。 9、设计模式就不一一列举了,十种常见的设计模式,百度很多 二、保持写博客之前我对写博客也是提不起来精力,感觉写博客不仅浪费时间,而且看不到任何的收益,就这样一边激励本人一边开始写技术文章。 进步本身技术水平诚然重要,进步本人的软实力同样是至关重要的,有本人的技术博客,发表一些有深度的文章,将博客的链接放到简历上,让面试官感觉你是一个爱学习的人,薪资进步天然也不在话下。 写博客的益处很多,但肯定要先动笔,能力缓缓感触到这些益处。 三、领有本人的开源我的项目 共事用了六个月工夫做了一个开源利用框架,抽象的说,其实就是一套后盾管理系统,集成了各种组件。面试的时候他将开源产品放到了简历上,霎时勾起了面试官的趣味,他的高薪资与其开源我的项目的关系微小。 从往年二月开始我也着手开始了我本人的开源我的项目,小伙伴也连忙策动一个我的项目,放松开始本人的开源我的项目吧! 不得不抵赖做到以上这些很难,把这个大指标拆分成一个个的小指标,进一寸有一寸的欢喜。 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 14, 2022 · 1 min · jiezi

关于2022招聘季:面试官RabbitMQ过期时间设置死信队列延时队列怎么设计

哈喽!大家好,我是小奇,一位不靠谱的程序员小奇打算以轻松风趣的对话形式来分享一些技术,如果你感觉通过小奇的文章学到了货色,那就给小奇一个赞吧文章继续更新一、前言RabbitMQ咱们常常的应用,然而它有很多高级的个性咱们也须要纯熟的把握能力应答事实场景中简单的业务逻辑。二、面试面试官:小奇是吧,咱们开始面试吧 我:快点吧,早就饥渴难耐了 面试官:有用过RabbitMQ吗 我:用过 三、RabbitMQ发送音讯长时间没人解决过期怎么办?面试官:RabbitMQ发送音讯长时间没人解决过期怎么办? 我:音讯长时间没人解决过期了咱们为了不影响失常的交换机应用,咱们能够将过期的音讯放到一个死信交换机中,而后这个交换机绑定一个队列就是死信队列,而后通过一个专门的消费者来解决这些过期的音讯 面试官:只有音讯达到过期工夫没有被生产会进入死信交换机吗,还有其余的状况吗我:音讯成为死信一共有三种状况。1:队列音讯长度达到限度。2:消费者拒收音讯,并且不将音讯放入原来的队列中让他从新发送。3:原队列存在音讯过期设置,音讯达到超时工夫未被生产。 面试官:咱们怎么定义一个死信交换机和死信队列绑定呢? 我:咱们能够通过x-dead-letter-exchange和x-dead-letter-routing-key两个参数来配置好死信交换机的名称,和死信交换机与死信队列之间的路由键名称。 四、TTL是什么?面试官:TTL是什么? 我:TTL全称Time To Live(存活工夫/过期工夫),是mq中用来设置过期工夫的。 面试官:咱们个别怎么设置过期工夫,用哪些形式? 我:咱们有两种设置过期工夫的形式,一个是对单个音讯设置过期工夫,一个是对一个队列设置过期工夫,这样的话发送到队列中的音讯都遵循那个过期工夫。 1:队列设置过期工夫:x-message-ttl,单位:ms(毫秒),这样的话进入队列的所有音讯都遵循这个过期工夫。 2:单个音讯设置过期工夫:expiration,单位:ms(毫秒),这样的话只有这条音讯有过期工夫。 面试官:那如果我即给单条音讯设置了工夫又给队列设置了工夫会怎么样? 我:那样的话依据最短的那个工夫来。 五、RabbitMQ延时队列怎么设计?面试官:那你晓得延时队列吗,个别都用来做什么场景下的需要呢? 我:晓得,延时队列个别就是发送音讯到MQ中后,消费者不要第一工夫去解决,比方咱们点外卖的时候咱们下单胜利了,这个时候库存曾经减了,然而咱们还没有领取,如果咱们始终不领取的话,过30分钟订单就主动勾销了,而后库存又复原了。 面试官:那RabbitMQ有延时队列吗,如果让你本人设计一个延时队列怎么设计呢? 我:RabbitMQ中没有提供延时队列的性能,然而咱们能够应用TTL+死信队列来实现延时队列的性能。 面试官:能够呀小伙子,这块把握的不错 我:还行还行,都是日常的积攒 面试官:小伙子真厉害啊,RabbitMQ把握的十分棒,你面试通过了,今天上岗吧 我:啊,这么急吗,我前面还有好多货色没有讲呢。 面试官:不焦急,进来了当前缓缓听你讲,加班让你跟我讲 我:啊。。。这也太难了吧 六、总结这里对于RabbitMQ还没有整顿结束,文章前面继续更新,倡议珍藏。 文章中波及到的命令大家肯定要像我一样每个都敲几遍,只有在敲的过程中能力发现自己对命令是否真正的把握了。 如果感觉我的文章还不错的话就点个赞吧 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 13, 2022 · 1 min · jiezi

关于2022招聘季:面试官RabbitMQ怎么实现消费的可靠投递

哈喽!大家好,我是小奇,一位不靠谱的程序员小奇打算以轻松风趣的对话形式来分享一些技术,如果你感觉通过小奇的文章学到了货色,那就给小奇一个赞吧文章继续更新一、前言RabbitMQ咱们常常的应用,然而它有很多高级的个性咱们也须要纯熟的把握能力应答事实场景中简单的业务逻辑。二、面试面试官:小奇是吧,咱们开始面试吧 我:快点吧,早就饥渴难耐了 面试官:有用过RabbitMQ吗 我:用过 三、RabbitMQ怎么实现生产的牢靠投递面试官:RabbitMQ音讯生产者发送音讯后怎么晓得消费者有没有收到音讯呢 我:生产者能够通过setConfirmCallback办法设置回调函数,判断办法中的ack,如果ack为true则示意发送胜利,如果ack为false则示意发送失败,这里是生产者向路由器发送音讯的时候失败。 我:咱们还能够通过setReturnCallback办法设置回调函数,这里是路由器向队列发送音讯失败,比方该条音讯依据路由键没有找到要发送到哪个队列中去。 面试官:那生产端这里怎么判断是否收到音讯了呢 我:生产端这里能够通过channel.basicAck()办法来确认收到音讯。 面试官:那生产端这里解决收到的音讯的时候产生异样怎么办? 我:能够应用channel.basicNack()办法来回绝音讯,让MQ从新发送音讯 面试官:咱们生产端每次解决完音讯都须要手动确认音讯吗 我:能够配置手动确认,也能够配置主动确认音讯,在配置文件中配置 面试官:那一共有几种确认形式呢 我:一共有三种确认形式。1、主动确认:acknowledge=none2、手动确认:acknowledge=manual3、依据异常情况确认:acknowledge=auto面试官:能够呀小伙子,这块把握的不错 我:还行还行,都是日常的积攒 面试官:小伙子真厉害啊,一下子就把RabbitMQ怎么实现生产的牢靠投递讲明确了,你面试通过了,今天上岗吧 我:啊,这么急吗,我前面还有好多货色没有讲呢。 面试官:不焦急,进来了当前缓缓听你讲,加班让你跟我讲 我:啊。。。这也太难了吧 四、总结这里对于RabbitMQ还没有整顿结束,文章前面继续更新,倡议珍藏。 文章中波及到的命令大家肯定要像我一样每个都敲几遍,只有在敲的过程中能力发现自己对命令是否真正的把握了。 如果感觉我的文章还不错的话就点个赞吧 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 13, 2022 · 1 min · jiezi

关于2022招聘季:面试官RabbitMQ怎么实现消费端限流

哈喽!大家好,我是小奇,一位不靠谱的程序员小奇打算以轻松风趣的对话形式来分享一些技术,如果你感觉通过小奇的文章学到了货色,那就给小奇一个赞吧文章继续更新一、前言RabbitMQ有很多高级个性,个别我的项目用不到,然而总有面试官会问到,被问到的时候咱们要伪装这些对咱们来说就是小意思一样。 二、面试面试官:小奇是吧,你先做一个自我介绍吧 我:面试官您好,我毕业于XXX,我之前在XXX工作,我精通XXX,总之一句话,我就是优良,你问就完了。 面试官:行,你的自我介绍很强硬啊,那我看看你到底有没有过硬的实力 我:是骡子是马拉进去溜溜 三、RabbitMQ怎么实现生产端限流面试官:好,那我先问你一个场景题,比方咱们公司当初做了一个秒杀零碎,在流动当天用户下单太多了,造成生产端解体了,这种状况咱们该怎么解决呢 我:好说呀,多买几台服务器,多搭建几台生产端的服务,减缓服务端的压力,这样不就没有问题了吗。 面试官:额。。。你这么说的确能够解决,实不相瞒咱们老板特地抠。。。不舍得买更多的服务器,就想让咱们一台服务器搞定 我:???光让马儿跑,不让马儿吃草,那特么能行啊,跟你们老板说,让他本人进去顶着生产端的压力吧,他不是不舍得花钱吗,等秒杀的时候让他去用户那里捣鬼,让用户不可能同一时间下单不就行了。 面试官:哎呀不行呀,咱们也想过给用户捣鬼,然而老板不让,老板说必须让用户在最短的工夫内都实现下单 我:能够啊,那就应用MQ,让客户端下单后将下单信息放入音讯队列中,而后让生产端去解决呗。 面试官:哎呀咱们就是这么弄的,然而生产端总是解体 我:你们生产端服务器配置怎么样? 面试官:嗯。。生产端服务器配置是半核CPU、1G运行内存空间、10G磁盘空间 我: 半核? 你特么在逗我,另外半个CPU让他人掰走了? 面试官:嘿嘿,状况就是这么个状况,事件就是这么个事件,反正公司就是穷困潦倒,等你进来了我再缓缓跟你讲,你当初先帮我想一个解决方案,我用来应酬一下老板 我:那就在生产端实现限流吧。 面试官:怎么实现呢? 我:应用channel.basicQos(int prefetchSize, int prefetchCount, boolean global)办法来设置限流的配置。 prefetchSize:示意音讯的大小(0的话示意不限度大小)prefetchCount:示意音讯的数量global:true示意该通道下的所有消费者都实用这个策略,而false示意只有以后这一个消费者实用这个策略。 如图,这里咱们channel.basicQos(0,1,false);示意不限度音讯的大小,然而限度音讯的数量,一次只能给消费者发送一条音讯。 面试官:为什么不限流的话会将生产端搞挂掉呢 我:如果当初小明的妈妈有10个饺子给小明吃,小明叫来了9个同学,而后他们一共10集体,一人一个饺子都是一口就吃完了没有任何问题,然而明天就小明一个人,总不能10个饺子一下塞到小明的嘴外面吧,这样间接将小明噎死了。 面试官:那怎么解决呢 我:当初小明先吃一个饺子,等小明吃完了这一个饺子后通知他妈,说我吃完了,而后他妈再给他一个饺子吃,这样的话也是能够吃完10个饺子的,并且小明没有事。 面试官:我看限流的参数还有数据大小是干什么的 我:如果当初小明妈妈为了让小明一口就吃完十个饺子,他包了一个特地大的饺子,有一斤重,这个时候跟小明说还是一个饺子,一口闷吧,这个时候照样将小明噎死了,所以数据大小也是要限度的。 面试官:那队列怎么晓得消费者生产完了一条音讯,要给他再发送一条音讯呢 咱们要配置生产端手动确认,当咱们生产端生产完音讯后手动确认音讯,这个时候队列就认为整个生产流程走完了,就开始下一个信息的发送了。 开启手动确认配置 代码中手动确认。 这里手动确认有两个参数,第一个是tag编号,就是这个音讯的一个编号,第二个参数为是否确认多条,true的话就是确认多条音讯,false的话就是只确认这一条音讯,个别咱们都是false。面试官:能够呀小伙子,有点货色 我:请你不要迷恋哥,哥只是一个传说。。。 面试官:小伙子真厉害啊,一下子就把RabbitMQ生产端限流讲明确了,你面试通过了,今天上岗吧 我:啊,这么急吗,我前面还有好多货色没有讲呢。 面试官:不焦急,进来了当前缓缓听你讲,加班让你跟我讲 我:啊。。。这也太难了吧 四、总结这里对于RabbitMQ还没有整顿结束,文章前面继续更新,倡议珍藏。 文章中波及到的命令大家肯定要像我一样每个都敲几遍,只有在敲的过程中能力发现自己对命令是否真正的把握了。 如果感觉我的文章还不错的话就点个赞吧 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 11, 2022 · 1 min · jiezi

关于2022招聘季:面试官RabbitMQ有哪些工作模式

哈喽!大家好,我是小奇,一位不靠谱的程序员小奇打算以轻松风趣的对话形式来分享一些技术,如果你感觉通过小奇的文章学到了货色,那就给小奇一个赞吧文章继续更新一、前言明天又、又、又来面试了,还是老规矩,上来先做两张面试题,而后填半斤表,什么血型、什么星座的,话说我不晓得本人什么血型,只能空着了。。。 明天这公司环境还能够,大厅能够看到里面的世界,我曾经想好了当前该去哪里摸鱼了(前提是可能面试上)。。。 在用完了两根签字笔后,重要填写完了这半斤表,而后交给面试官,期待面试。。。二、面试面试官:小奇是吧,过去路上远吗 我:不远,也就二里地吧。。。 面试官:行,那咱们间接进入主题,我看你这简历上写着对RabbitMQ十分有理解是吗 我:何止是十分理解啊,那是相当的理解。。。 三、RabbitMQ工作模式面试官:哦~,那你先说一下RabbitMQ有哪些工作模式吧 我:RabbitMQ个别有五种工作模式。1:简略模式2:work工作模式3:pub/sub公布订阅模式4:Routing路由模式5:Topics主题模式 面试官:那你能说一下这些模式的原理与区别吗 简略模式:就是一个生产者一个消费者,两头通过一个队列间接连贯。 work工作模式:就是有多个消费者生产队列里的音讯,队列里的音讯只能被一个消费者生产,这样多部署几个消费者,就能够缓解压力,比方过年的时候抢票,抢票胜利后会给你发短信,这个时候就能够把发短信的工作放入队列里,而后有多个发短信的服务来解决队列里的工作。 pub/sub公布订阅模式:下面两种模式生产者的音讯只能被一个消费者生产,不合乎某些理论场景。 如果咱们有一个国家气象局天气预报零碎,这个时候他发送音讯,其余的服务商,比方百度、网易、腾讯等公司都要从国家天气预报零碎那里获取天气怎么办呢? 总不能百度获取了明天的天气其余公司就获取不了天气了吧,或者让国家天气预报零碎给每个服务商都发送一次音讯,那样显然是很麻烦的。 所以咱们须要用到一个Exchange交换机角色来帮忙咱们把音讯发给所有订阅咱们的服务商。 Routing路由模式:路由模式就是交换机并不是给所有订阅他的队列发送音讯了,而是依据路由键来确定应该给哪个队列发送音讯,队列和交换机绑定的时候须要通过路由键,而生产者发送音讯的时候也须要指定路由键,这样就能够确定给哪个队列发送音讯了。 这里咱们能够看到是给张三发送音讯,所以只会给路由键为张三的那个队列发送音讯。 Topics主题模式:主题模式就相当于含糊匹配,如果我想给姓张的发送音讯,那么我就能够通过主题模式给所有姓张的发送音讯。 面试官:你说的十分的全面,然而我记不住, 能用一个生存中的例子来形容一下吗 我:记不住就背,八股文哪有那么容易就记住的。。。 如果我明天去公司的会议室办公了,公司的会议室只有一根网线,那我本人一个人是不是就能够连贯这根网线应用了呢,这个就是简略模式,一对一。 到了下午了张三也来会议室工作了,就一个网线怎么办,这时我想到了一个办法,咱们两个一人插一会网线,比方我写邮件的时候不须要插网线,然而我发邮件的时候你就把网线让给我让我收回去,就这样我和张三每人用五分钟网线,这就是work工作模式,一根网线两个人用,其中一个人用了,另一个人就用不到了。 又过了一会李四也特么的来会议室了,这咋整,三个人用一根网线也太难了吧,然而聪慧的我又想到了一个办法,咱们找来了一个路由器,将网线接入路由器,而后咱们每个人的笔记本电脑都连贯路由器的无线网,这样咱们都能够上网了,这就是pub/sub公布订阅模式,所有订阅路由器的笔记本电脑都能够收到流量,都能够上网哈。 过了一会网越来越卡了,我特么一看后盾有8集体连贯咱们的无线网,原来咱们没有设置明码,隔壁摸鱼的小姐姐连贯无线逛淘宝呢,我一想不行啊,得设置一个明码吧,而后就设置了一个明码,所有晓得明码的人才能连贯路由器。这里就相当于Routing路由模式。 然而有人说明码太长了记不住,我特么说请把记住明码打上对勾谢谢,然而偏偏有人不打对勾天天问,我没方法了,我说不然就设置一个含糊明码吧,你们前三位都输出123,前面的数字轻易输出,我这里判断后面是123的明码我都算正确,都让你们上网。这就相当于主题模式,这里的主题就是123。 面试官:哇塞,听你这么一讲,我有点永生难忘啊 我:请你不要迷恋哥,哥只是一个传说。。。 面试官:小伙子真厉害啊,一下子就把这几种模式讲的栩栩如生,你面试通过了,今天上岗吧 我:啊,这么急吗,我前面还有好多货色没有讲呢。 面试官:不焦急,进来了当前缓缓听你讲,你不都曾经找好摸鱼的中央了吗,到时候咱们一块去那里聊天 我:这都被你发现了啊。。。 四、总结这里对于RabbitMQ还没有整顿结束,文章前面继续更新,倡议珍藏。 文章中波及到的命令大家肯定要像我一样每个都敲几遍,只有在敲的过程中能力发现自己对命令是否真正的把握了。 如果感觉我的文章还不错的话就点个赞吧 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 10, 2022 · 1 min · jiezi

关于2022招聘季:阿里三面Java的synchronized-能防止指令重排序吗

引言二狗:二胖你昨天销假了是不是又去面试了啊?二胖:别说了我就进来试试水,看看当初工作好不好找,顺带进来找找打击,而后能力好好静下心来好好学习。二狗: 那被打击的怎么样啊?晓得本人是什么样的程度了吧,坏笑。二胖:根底太差,一面就让回去等告诉了,我要好好学习了,不跟你瞎扯了。二狗: 都问了你什么问题啊,把你打击成这样?一起复盘下让我也好好筹备下啊。二胖:好吧,你既然这么好奇,那我就大略说下吧,你搬上小板凳认真挺好了哦。我要开始我的表演了。上面二胖第一面开始了。面试官:二胖是吧,先做个自我介绍吧。二胖:好的,我叫二胖,我来自长沙,往年25岁,从事java开发快3年了,当初在XX公司XX事业部负责高级java开发工程师,次要负责XX零碎。。。。。面试官:好的,我看你简历上写着熟练掌握并发编程你能跟我说说并发编程外面你都晓得哪些关键字。二胖: 这不就是要考我 synchronized 和volatile 这个我善于啊,我特意背过的,synchronized 是java提供的一个关键字它次要能保障原子性、有序性它的底层次要是通过Monitor来实现的。volatile也是java的一个关键字它的次要作用是能够保障可见性。。。。此处省略1000字。面试官:八股文背的不错,说了这么多,咱们来入手试试吧,写一个双重校验锁(dcl)的单例我看看。二胖: 从屁股口袋里拿出了笔三下五除二就把它默写进去了。面试官:你有说道volatile关键字和synchronized关键字。synchronized能够保障原子性、有序性和可见性。而volatile却只能保障有序性和可见性。那么,咱们再来看一下双重校验锁实现的单例,曾经应用了synchronized,为什么还须要volatile?这个volatile是否能够去掉?二胖: 让我想想,貌似如同的确能够去掉。面试官: 咱们明天的面试就到这里吧,后续有音讯人事会分割你,感激你明天来面试。 二胖很郁闷回去谷歌了下这个问题,stackoverflow上也有这个问题,看样子不只我一个人不晓得这个问题吗?看样子面试挂的不冤以上故事纯属虚构,如有雷同请以本文为主。 synchronized 的有序性?咱们先来看看没有加volatile 润饰的单例: 1 public class Singleton { 2 private static Singleton singleton; 3 private Singleton (){} 4 public static Singleton getSingleton() { 5 if (singleton == null) { 6 synchronized (Singleton.class) { 7 if (singleton == null) { 8 singleton = new Singleton(); 9 } 10 } 11 } 12 return singleton; 13 } 14 } 上述代码看下来是不是感觉没啥问题。首先咱们先来看下这一行代码到底干了哪些事件 ...

April 9, 2022 · 1 min · jiezi

关于2022招聘季:面试官ZAB协议是什么

哈喽!大家好,我是小奇,一位不靠谱的程序员小奇打算以轻松风趣的对话形式来分享一些技术,如果你感觉通过小奇的文章学到了货色,那就给小奇一个赞吧文章继续更新一、前言这天是越来越热了,然而还是有很多线下面试,我尽管很不想去,然而没方法,谁让咱是打工人呢。。。(淦。。) 明天面试的中央间隔小窝不远,我就骑上了我的小小自行车,人不知;鬼不觉就来到了十字路口。 看着熙熙攘攘、人来人往的街头,我犹如走到了本人的人生十字路口,我不仅感叹,世界这么大居然没有我小奇的容身之地,啊,苍天啊、大地啊 路人:后面那个骑自行车的人类,绿灯了,走不走啊,要作诗的话靠路边好不好。 我:走,必定走,不走就早退了。。。 终于来到了要面试的公司,嚯,这个公司挺派头,1、2、3、4、5、6、7、8、9,一共6层楼。。。 电梯门一开就有前台小姐姐接待,没有大家期待的打电话留门环节。。。 前台小姐姐:您好,您是? 我:我是来面试的。 前台小姐姐:您的联系人是? 我:范厨师 前台小姐姐:厨师? 我:不好意思,说串了,范厨师是我下午要去面试的饭馆的接待人,你们这里是马老师跟我分割的。 前台小姐姐:您还面试厨师呢? 我:没方法,谁让你们这个行业这么卷,还动不动就解雇人,我也得搞点副业呀。。。 前台小姐姐:有情理。。。先把这些表填一下吧。 嚯,给了我有半斤表,我是来面试的不是来练字的。 什么星座、什么血型、什么家庭、什么背景、什么去路、什么是高兴星。。。这都是些什么问题啊,我来面试的,怎么搞的我跟要收监一样。算了,写了两个小时终于写完了。二、面试面试官:小奇是吧,过去路上累了吧 我:路上不累,就是填了半斤的表有点累。。。咱们公司是不是纸多的用不完啊,用不完走的时候我拿点回家当手纸。 面试官:哈哈,你要是面试答复的好就让你轻易拿 我:行,那你问吧。 面试官:我看你简历上精通zookeeper是吧 我:都是各个面试官之间吹捧的,其实还好啦,个别个别,世界第三。。。 三、ZAB协定面试官:那你说一说什么是ZAB协定吧 我:“这啊八”协定是什么啊,我怎么没有据说过呢? 面试官:你不是精通zookeeper吗,zookeeper外面的zab协定 我:哦哦,那我明确了。 我:zab协定全称为:Zookeeper Atomic Broadcast(Zookeeper 原子播送协定)。zab次要是为了解决分布式一致性而设计的一种实现办法。 面试官:解决哪方面一致性呢 我:解决数据方面的一致性问题,咱们要保障Leader中的数据和follower中的数据保持一致。 面试官:怎么可能保障统一呢 我:在leader收到客户端发送的音讯后他并没有先保留下来,而是先发送给follower节点,当follower节点有超过一半给他相应胜利后,他才让follwer保留数据,而后本人也保留数据。 面试官:能不能形象一点呢,这个图我看不懂 我:看不懂出门左拐,慢走不送。。。 面试官:好,哎不对呀,我是面试官,你是来面试的呀,不应该我走呀 我:行,那你不走的话我就给你具体讲一下。 面试官:好 我:当初咱们来角色扮演一下,我演皇上,你演太监好吗? 面试官:好 我:明天中午御膳房送来了我最爱吃的硬菜木须肉,这个时候我必定不能间接吃呀,我必定先给太监也就是你尝一下有没有毒,如果没有毒了我再吃对不对。 面试官:对,那为什么肯定要半数以上的太监认为没有毒了你能力吃呢 我:笨啊,如果只有一个太监,那么他被收购了,我必定就悬了,必定得多个太监都说没毒才行。 面试官:对,那为什么不让所有的太监都尝一尝呢,半数的就够了吗 我:我有八百个太监,都尝一尝那我岂不是就没有饭吃了。。。 面试官:对对对,皇上英明 面试官:小伙子真厉害啊,让我身临其境的感触了一下原理 我:这不算啥,想感触等我入职了咱们接着角色扮演。 面试官:好,那你今天就来下班吧,不,当初就登基吧 我:这么忽然吗。。。 四、总结这里对于zookeeper还没有整顿结束,文章前面继续更新,倡议珍藏。 文章中波及到的命令大家肯定要像我一样每个都敲几遍,只有在敲的过程中能力发现自己对命令是否真正的把握了。 如果感觉我的文章还不错的话就点个赞吧,另外能够微信搜寻【小奇JAVA面试】浏览更多的好文章,获取我为大家筹备的材料。 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 9, 2022 · 1 min · jiezi

关于2022招聘季:面试周连续剧之尘埃落定

前言通过后面五天的辛勤付出,最终换来了播种的回报,拿到的offer数量还是比拟喜人的,尽管本人也不是什么技术大咖,程度也是平平,然而失去了老天的眷顾,让我在找工作的时候没有遇到太多的砍,总体上还是比拟逆风逆水的。本文就来分享一下本人如何抉择拿到的这些offer,以及最终做出最初的抉择的起因。正题我的这种状况应该和所有面试者一样,拿到很多offer之后不晓得怎么选,这些offer是对本人的认可,也是本人这几天面试的劳动成果,这就应了那句有付出就会有回报。然而面对这些offer,要想做出最好的抉择也不是一件容易的事件,因为面试的时候也只是依据交谈中来理解这个职位,两眼一抹黑,俗话说得好耳听为虚,而且还须要本人回顾过后面试的时候面试官介绍以后我的项目以及进度的信息,是一件十分苦楚的事件,好在本人的记忆不错,基本上能回顾到过后的情景以及相干信息,这样就能够筛选几个offer,做出本人的第一轮筛选。分享一下一个外资企业的面试要求,原本打算挑战一下本人的软肋,后果因为排期抵触最终没有去。 接着再从hr说的内容和公司信息中再来筛选一下对应的职位信息,hr说的内容其实十分重要,比方加班、福利待遇、工作性质等,仅通过这一点就能做出实质性的判断。通过公司信息来筛选,只是让你抉择你的工作畛域,比方是金融畛域、物联网畛域等,这也是本人做抉择考量的一个点。 还有就是依据这个职位招聘信息来看,比方写焦急招、反馈快等,这样能看进去一点文章,急招阐明你去就是间接干活,预计连适应的工夫都不会给你,扛大旗的角色,还有就是依据面试时候面试官说的我的项目的现状信息。这里举一个理论的例子,我手里的3个offer,有一个是对于供应链的管理系统,而且说的很缺人,要的很急,而且复试的时候一个面试官是搞后盾的,说漏了一句话让我间接pass了这个职位,这个面试官是这样说的,他说这个我的项目很急,设计图还没进去,只有几个原型图和设计流程,后盾还没有开发,然而前端须要在两周做完,而且这个管理系统的表格展现很多很简单,嵌套很多,这让我心里咯噔一下,在复试完结之后发offer之后,通过比照之后我就间接回绝这个offer了,因为这种我的项目啥都没有的状况下须要前端先做个样子,而后再改,是十分累的,而且还很赶,所以还是间接回绝比拟好。 我在比照职位的时候也征询了身边的亲朋好友(包含思否robin大佬,还有我的前领导,我的同学等等)做顾问,把待遇以及工作内容分享给他们,征询一下他们的意见,也听了他们的剖析。最终我做出了感觉是正确的抉择,抉择了一家证券公司的offer,也是我开始面试的第一家公司,尽管这个offer给我的工资待遇不是我拿到这些offer的最高的,然而上班时间是最爽的,上午8:30~11:30,下午13:00~17:00,午休一个半小时,而且遇到法定节假日调休的时候不必调休,也就是比其余公司多放好几天假,福利待遇也还能够,而且工作也不是太忙,加班有调休,可是试用期6个月,这是我所放心的事件,然而试用期不降薪,也就是依照实薪发放。总之,我感觉之所以抉择这个offer就是缘分到了,注定的事件,所以我就不假思索间接抉择这个职位。 然而下班第二天之后,上海新冠疫情越来越重大了,公司就让咱们居家办公了,而且有个插曲,我说的是3.9号去公司报道,然而HR告诉我说让我3.8号去公司报道,我就提前一天去公司报道,也就是3.8号去公司报道,上午见到前端负责人,而后给我安顿了电脑和工作账号,下午她就回家隔离了,而后上完三天班之后,就让居家办公,截止目前曾经居家办公三周了,负责人起初说我很侥幸,如果我不提前去一天,我的账号和我的项目都安顿不了,也就不能居家办公,也就意味着我啥也干不了,也就没有支出了,还好我提前去了一天,这是命中注定的,很感恩! 再分享一个插曲,在我去报道的前一天做体检的时候,一个hr间接给我安顿一个面试,我其实都不打算面试了,然而还是接了面试电话,那个面试官是银联总部的,看了我的简历问了我两个问题,因为是在地铁上,所以信号不是太好,面试官很好,尽管面试过程不通顺,然而面试官看了我简历上写的技术博客链接,看了我写的内容,而后说我始终保持写技术博客,也就没问我太多问题,间接就说我通过面试了,而后发offer,让hr谈薪,其实我也很打动和感谢,然而我曾经做好决定了就不想再轻易扭转了,最初还是回绝了这个offer。我分享这个插曲是为了让大家晓得,有时候写技术博客真的能够给本人加分的,不要有太大的功利性,就周期性的写技术文章就行,缓缓积淀,总有一天会给你带来设想不到的播种的,置信我说的话。 最初分享一下拿到offer的集锦,只是激励一下还在面试的开发者,没有夸耀的意思。如下所示:这家屌丝公司在后面的奇葩遭逢中提到过,最初也给我发了offer,果决回绝。 这个offer就是我最终抉择入职的公司。 这家公司给我的待遇是拿到所有offer中最高的,为什么没抉择去,就是因为我的项目周期太紧。 这个offer是我在签合同那天拿到的,合同都曾经签完了,所以也去不了,间接拒绝了。 这个offer是我面试第一天面的一家公司,到最初才给我反馈,我曾经确定公司了,所以这个offer早退了,间接拒绝。 最最初,再总结一下面试周我遇到的高频面试题目,但愿能给正在面试的开发者带来些许帮忙,如下: 1、v-show和v-if的区别,以及实用的应用场景; 2、形容一下Vue的生命周期,父子组件谁先加载谁后加载?实在demo是在vue的哪个周期中能够拿到? 3、组件之间通信,传值的形式; 4、网络申请中接口报404谬误是什么起因; 5、http和https的区别,为什么要用https; 6、谈一下webpack的应用,以及原理; 7、怎么实现class的垂直居中; 8、讲述闭包,以及应用场景; 9、浅谈vuex的原理; 10、介绍一下promise的应用; 11、Vue双向绑定原理; 12、数组去重的形式有哪些; 13、如何了解前端模块化; 14、讲讲JS的原型链; 15、你平时用到的web前端的性能优化有哪些; 16、js的数据类型有哪些?根本类型是?调用类型是? 17、vue中router的参数有哪些?history和hash的区别 18、cookie、session、location的存储形式异同点 19、flex的垂直居中怎么实现?flex:0 0 auto 的含意是什么? 20、rem适配原理 21、scope属性的用处 22、watch和计算属性的区别? 23、keep-alive的应用 24、vuex的应用场景 25、setTimeout和setInterval的区别? 26、js判断类型的办法?怎么判断一个数组 27、数组罕用的办法有哪些? 28、怎么画一个扇形? 29、介绍一下promise,及其底层如何实现? 30、讲讲ES6的新个性 31、在地址栏中输出一个URL,到这个页面出现进去,两头的过程有哪些? 32、什么是bom? 33、BFC是什么? 34、说说前端中的事件流 35、聊聊事件冒泡 36、扭转函数外部this指针的指向函数有哪些? 37、谈谈js的语言个性 38、谈谈深拷贝 39、怎么取得对象上的属性? 40、怎么去分是不是h5? 41、说一下事件委托 42、css选择器有哪些?以及优先级 43、sass和less是什么 44、Vue中的data属性值为什么是函数而不是对象? 45、讲讲html5的新属性有哪些? 46、原生和web交互的形式是什么? 47、谈谈vue的三大特点是什么? 48、v-for中为什么要应用key? 49、说一下css盒模型 50、css盒模型中规范盒模型和怪异盒模型的区别 ……下面只是汇总了我遇到的,高频面试知识点,没有写进去的前端常识不代表不重要,只是我这次面试周没有遇到而已,总之大家在面试的时候筹备的越充沛越容易上岸,最初也提前预祝正在找工作的同仁可能疾速上岸,早日转正! 结语尽管从我开始面试到当初曾经快一个月工夫了,然而我觉得很有必要总结一下,分享进去作为面试交换的教训吧,不免有不妥之处,还请大家包涵。欢送关注三掌柜的微信公众号“程序猿by三掌柜”交换,到这里我的面试周总结分享就完结了,尽管是依照记账式的模式来分享,没有滑稽风趣的语言,没有高端大气的局面,然而这是一个草根最实在的面试经验,但愿可能带给还在面试中的开发者一点点启发。 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。 ...

April 9, 2022 · 1 min · jiezi

关于2022招聘季:面试周连续剧之走马观花

前言在后面四天的面试中曾经适应了面试的套路和节奏,本人的常识储备也越来越欠缺,而且本人的要求也不是太高,集体认为本人是属于容易满足的那种类型,所以从面试的第三天开始就进行约面试了,然而好多招聘人事不知道在哪里搞得我的联系方式,间接就是安顿面试,有一种推着你往前走的赶脚,所以曾经开始回绝约面和电面。俗话说的好,手中有offer,心里不慌,那么接下来就开启新的一天的面试经验吧!正题个人感觉本人在找工作这块很侥幸,找工作的周期不会太长,而且本人在面试前也会预设一个找工作的周期,激进一点讲面试工夫最多不超过两周工夫,这样最好,太短容易找到不合情意的工作,太长的话老本和代价太高,两周工作日是比拟现实的面试找工作的周期,而且找工作也是看缘分的,缘分到了的话也可能一天就找到工作了,缘分这个货色因人而异吧,然而你不信缘分不行的。 话说工夫来到了当天的早上,通过前几天的摸索以及相熟,曾经不会再坐错地铁和方向了,巧就巧在这天终于提前到了面试地点,而且提前到了四十分钟,后果人家上午工夫才下班,而且又是“海龟”守业型公司,下班格调和欧美的差不多,比拟自在。惟一一次提前到的面试地点,后果面试官早退了四十分钟,好气,然而又不敢说太多。面试官也没问什么太多问题,次要是考查自学能力和综合素质,不过本人之前在美资企业待过,这些货色都很好把握,所以面试过程很欢快,最初没后果,起因是因为我成心问面试官一些本人不会的内容,体现进去不能胜任,因为他们是做区块链相干的,我是不感兴趣,所以间接没有下文了。 下午的面试很有戏剧性,因为后面我曾经面过了一个该公司的职位,后果另外一个人事约我去面试另外一个项目组的职位,而后下午去签到的时候被之前的人事看到了我的名字,他认为是重名了,后果一看我的简历确定是同一个人,而且最狗血的是下午的这个面试我也通过了,面试完结之后,后面分割我的那个人事间接找到我说:哥们,太巧了,而后我就给他聊了一会儿,顺便回绝了之前的那个offer和当天下午的这个offer,因为工作间隔太远,我也不想搬家,所以就间接交个敌人算了,不谈工作。 因为曾经差不多确定要去的公司,在4个offer中抉择,而且后面说的我第一个面试的公司曾经明确通知我上班时间,所以我不能再得心应手的面试了,我须要收收心,筹备一下下班的状态,所以就把之后约的面试都整合了一下,主旨是不放鸽子,不过起初打算有变,还是放了两个职位的格子,起初我也赔罪了,也解释了,hr也示意了体谅。 而且也把那两个外资企业的线下面试安顿也推了,而且新冠疫情曾经开始变重大了,有两个线下的面试间接让我线上沟通了,也省去了我持续奔走的操劳,也是在当天的下午实现,基本上这一天把前面的面试都解决完了,坐等筛选offer了。 在短时间内把剩下的面试解决完,尽管很累,然而本人根本做到了信守承诺,说到做到,没有放hr的鸽子,本人也给本人的面试周交了一份称心的答卷,这也给本人一个饭后谈资的资本。尽管是蜻蜓点水式的态度,然而本人还是播种了很多经验,也去了本人没有去过的中央,又一次坚固了本人的常识把握水平,何乐而不为呢? 最初再总结一下当天的面试常识,分享一下: 1、v-show和v-if的区别,以及实用的应用场景; 2、形容一下Vue的生命周期,父子组件谁先加载谁后加载; 3、组件之间通信,传值的形式; 4、flutter开发中怎么实现数据本地存储? 5、http和https的区别,为什么要用https; 6、谈一下webpack的应用,以及原理; 7、怎么实现垂直居中; 8、讲述闭包,以及应用场景; 9、浅谈vuex的原理; 10、介绍一下promise的应用; 11、Vue双向绑定原理; 12、数组去重的形式有哪些; 13、原生和web交互的形式是什么? 14、讲讲JS的原型链; 15、web前端的性能优化有哪些; ……结语在超忙的节奏下,面试第五天就这样完结了,总共拿到了6个offer,然而推掉了3个,留三个offer做抉择。欢送关注三掌柜的微信公众号“程序猿by三掌柜”交换,整顿了手中的offer,以及评估了剩下的三个职位的信息,解决了剩下的面试预约,基本上本次的面试工作曾经实现。剩下了最初的offer筛选的步骤,其实offer筛选也是有很大学识的,那么下一篇文章会具体分享。 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 8, 2022 · 1 min · jiezi

关于2022招聘季:浅析Kafka面试题

1,浅析音讯队列面经这里咱们通过解说一些常见的面试题和其变种的问法来相熟音讯队列中的一些外围的概念,而后深挖其中知识点,以此来进行拓展,在这个文档中最好只是做简略但确的总结性质的语言来讲述,其余残缺的答复,依据相应的模块整顿起来即可: 1.1,音讯队列利用场景? 为什么应用音讯队列?应用音讯队列有哪些益处和害处?音讯队列的优缺点?1.2,常见的音讯队列有哪些,以及他们的比照? MQ的技术选型?1.3,音讯模型有哪些?1.4,MQ框架是如何实现高吞吐量的?2.1,如何解决MQ的音讯失落?2.2,如何解决音讯的反复生产? ExactlyOnce语义?音讯的幂等性?反复呈现的起因是什么?2.3,如何保障MQ的音讯是有序的?3,如果呈现音讯积压,应该怎么办?4,如何保证数据的一致性问题?5,事务音讯是如何实现的?6,MQ框架如何做到高可用?(1),音讯队列利用场景?音讯队列中的一些其余的特点等信息须要查看另外的文档,做了具体的整顿。异步解决:将一个申请链路中的非核心流程,拆分进去,异步解决,缩小主流程链路的解决逻辑,晋升吞吐量。限流消峰:能够通过音讯队列长度管制申请量;能够缓解短时间内的高并发申请。广泛应用于秒杀或抢购流动中,防止某一刻流量过导致利用零碎挂掉的状况;利用解耦:多利用通过音讯队列对同一音讯进行解决,防止调用接口失败导致整个过程失败;音讯通信:音讯队列中内置了高效的通信机制,因而也能够用在纯的音讯通信。比方实现点对点音讯队列,或者聊天室等。日志解决:解决大量的日志传输(2),常见的几种音讯队列,以及技术选型?常见的音讯队列: RabbitMQKafkaRocketMQ... ...技术选型,次要能够通过以下几个维度: 以后零碎中次要技术栈,以及团队中对哪个框架更加相熟;数据的吞吐量(Kafka)对事务支持性(RabbitMQ)社区的沉闷水平... ...(3),如何解决音讯的反复生产?1,首先剖析音讯队列自身都是保障的"至多一次(At least Once)"的语义,所以如果要通过MQServer配置和业务代码配合来解决。 另外其余几种常见的语义,咱们须要保障Exactly Once语义。 最多一次(At most once)至多一次(At least once)仅一次( Exactly once)2,剖析呈现反复生产起因 (1),生产者发送了反复的音讯: 个别为了保障音讯的可靠性,生产者在发送了信息后须要期待Broker的响应,此时如果呈现网络稳定等状况,响应超出了工夫之后,会导致数据的反复发送, (2),消费者在生产音讯的反复的: 当消费者在生产音讯的时候,尽管根本的业务逻辑曾经走完了,然而在提交Offset的时候,消费者服务挂了,那么这条被生产然而没有被提交的音讯会发送到其余消费者中,导致这条音讯被反复生产。 (3),补充“幂等性”的概念:艰深的说,同样的接口或者数据去调用同一个接口的时候,无论反复调用多少次,总能保证数据的正确性,不能出错,这里特指的是接口的幂等性。3,解决反复的生产的问题 (1),基于业务侧的调整: 生产者:能够在发送音讯的时候,增加一个惟一的字段,在插入数据的时候在数据库中进行惟一校验即可;然而这样在肯定的水平上会影响数据库的性能,个别是须要强测验的场景中会应用。消费者:首先是开始手动提交Offset,独自创立一个生产记录表,将提交Offset、执行插入动作的sql和插入生产记录表惟一key的操作都放在同一个事务中,那么当插入之前先判断这个惟一的key是否曾经在生产记录表中,只有不存在的才持续生产。(4),如果呈现音讯积压,应该怎么办?1,剖析:呈现音讯积压个别是是音讯的生产速度比不上生产的速度,从而导致了音讯沉积。 (1),导致呈现音讯积压的状况可能有以下集中状况: 磁盘写满了,导致数据写入磁盘的时候无奈写入,进而导致的音讯的积压。数据写入MySQL,然而此时MySQL的服务呈现了异样,也可能间接服务down掉等等,导致的音讯积压。有可能是因为程序中某步操作时时候,线程耗时过长,导致的音讯沉积2,解决办法: 消费者: (1),能够适当减少消费者组的机器数量,以晋升整体的生产能力;如果是线上的紧急任务,咱们能够通过创立一个Topic,Partition是原来的十倍,而后长期写一个Consumer程序,并启动多个线程去进行生产,生产的数据只是长期存储,期待解决生产完积压的数据之后,复原原先部署的架构,从新用原先Consumer机器来生产音讯。 如果能够的话,尽量保留局部现场环境,便于排查生产能力降落的起因。 (2),排查出问题之后,咱们不仅要解决问题,也要对集群的生产能力再进行一次评估,防止是因为生产能力不够引起的音讯沉积,尤其是针对一些顺发的流量,比方大促流动之类的。(3),优化每条音讯的生产过程,从业务的角度思考优化。生产者:生产者要能及时感知到消费者的能力有余,呈现音讯积压的时候,能够适当放缓音讯放入的速度,能够间接给前端页面提醒排队等等。3,补充:数据积压的工夫太长了,导致是音讯队列中设置了过期工夫的的数据失落问题 答:如果呈现音讯的失落问题,想方法找到失落的局部数据,从新发送到MQ集群里。 (5),如何保证数据的一致性问题?对于数据的一致性问题,这里通过“解耦”场景举例:比方电商场景中,下单胜利之后,再告诉库房扣减库存。 那么这个时候,咱们在同一个事务空间中,先解决下单的数据库操作,而后发送MQ音讯;剩下的扣减库存的操作交给消费者进行。 另外在生产的环节,也可能会呈现数据不统一的状况,那么咱们能够采纳最终一致性准则,减少重试的机制。 (6),MQ框架是如何实现高吞吐量的?音讯能够批量解决对音讯体进行压缩,从而节俭传输的带宽和存储空间程序写入磁盘(Kafka):每个分区内是有序的。零拷贝(Kafka):间接在内核层将音讯的内容传递给网络Socket,从而防止了应用层之间的拷贝。采纳页缓存(Page Cache),应用操作的零碎的内存,而不是应用JVM的内存,可能防止占用堆内存和GC问题。采纳分区的设计,在每个分区中放弃是有序的,另外每个分区能够针对不同的机器生产信息,能够用于并发解决。(7),MQ事务音讯是如何实现的?这里的实现形式相似于“两阶段提交”,在MySQL的事务中也是解决的。2,浅析Kafka面试题(1),Kafka为什么不反对读写拆散?如果应用读写拆散的策略,必然会有主和正本之间数据同步,要保障其一致性,另外正本在同步的时候如何保障实时性。 数据一致性:如果采纳一主多从的形式,Leader正本的数据在同步到Follower正本的时候会存在肯定的提早,那么Follower正本的音讯位移也不一样,然而消费者须要通过生产位移来管制音讯拉取的进度,多个正本之间要保护对立生产位移的一致性。那么如果要解决这个问题,就须要引入分布式锁,保障锁的平安,十分消耗性能。实时性:如果网络提早比拟大,在同步的过程中难免会影响效率,从而可能无奈满足实时性业务的需要。(2),MQ如何实现高可用?这里间接以Kafka举例的,其余根本是相似的。简略来说,就是几个节点之间,选举出主节点(Leader),那么这个时候如果主节点宕机了,能够从其余的节点中进行从新选举。另外每个节点在保留的数据的时候,会在从节点(Follower)中保留相应的正本,通过多正本机制,又是另一个高可用的体现。 (3),如何保障MQ的音讯是有序的?这里的解说次要是以Kafka为例进行解说的。形式1,能够强制只有一个分区,那么在一个分区中就是有序的,那么整体就是有序的。然而只有一个分区kafka的吞吐量就不高了。形式2,从业务的角度思考,能够通过自定义分区的策略(org.apache.kafka.clients.Partitioner)将满足指定规定的数据存储在同一个分区中,从而实现有序: (1),比方,同一个订单的不同状态的音讯存储在同一个分区中(2),或者,同一个登录的用户的各类操作存储在同一个分区中(4),如何解决MQ的音讯失落?这里是针对Kafka进行剖析的,其余的框架也会有相似的:1,剖析可能呈现音讯失落的几种状况: (1),音讯队列自身:在写数据的过程中,咱们如果只保障写入Leader节点,而不论正本是否同步胜利就算写入胜利的话,这种状况下是存在单点故障的,即如果Leader节点挂了那么就会呈现失落数据的状况;(2),生产者:因为网络的提早,导致数据呈现发送失败状况,也能够了解为数据失落的一种状况;(3),消费者:应用主动提交Offset的形式,会呈现数据在解决实现之前就把Offset提交了,这样也会呈现数据失落的状况;2,针对以上几种状况提出具体的解决方案: 生产者: (1),配置acks=1 或者 acks=all参数,在Leader节点写入胜利之后,将音讯同步到正本列表中(2),数据发送失败了之后,能够指定重试(retries)的次数,在一些强校验的场景下能够设置为Integer.MAX_VALUE能够从Broker的角度思考: 保障消费者生产到数据之后,再删除Broker中的暂存的信息。 如果是kafka的话,在Broker层面,应用到了ISR列表 + HW高水位 + Leader Epoch 来避免数据失落。消费者端: 敞开主动提交,依据回调函数正当解决音讯,并手动提交Offset。 (5),补充一些常见的面试题这里次要是题目形容一下,而后简答写一些答复的关键字。 墙裂举荐大家仔细阅读,并能够关注其公众号。:从面试角度一文学完 Kafka 1),什么是分布式消息中间件?简略说是一个音讯流的管道。2),消息中间件的作用是什么?解耦、异步、削峰。3),消息中间件的应用场景是什么?除了上述抽象的说法,从理论的业务中形容的话,能够用在一些秒杀的场景中、两个零碎的耦合性太高的话,能够去做拆分。4),消息中间件选型?次要看业务场景是谋求数据的可靠性(事务),还是谋求吞吐量。5),简略讲下 Kafka 的架构?生产者 --> Broker集群(Topic、Partition(Leader、Follower)、Zookeeper集群) --> 消费者6),Kafka 中 Zookeeper 的作用?起到一个注册核心的作用,其自身也是一个分布式的集群管理工具,次要的作用便是治理集群、负责Leader节点的选举; ...

April 7, 2022 · 2 min · jiezi

关于2022招聘季:面试周连续剧之奇葩遭遇

前言接着上一篇文章持续聊面试经验,通过前三天的面试经验,梳理总结一下,尽管拿到了三个offer,然而约过的面试还要持续,这是本人的准则,不能轻易放他人鸽子,要有面试节操。在分享明天的面试经验的同时,顺便总结一下这几天面试遇到的各种奇葩遭逢,没有别的意思,只是单纯的分享一下,那么马上开启面试周的第四天吧。正题其实在面试的时候,本人的心理状态是依据面试的后果来决定的,比方在没有拿到offer的时候,去面试的心态就很渴望每次的面试都能胜利,比拟看重每次的面试机会;当拿到offer之后,再去面试其余职位的时候,本人心态就大不一样,没有那么大心理包袱,就是很坦然的去面试,当天的面试就是在这种心态下开始的,十分轻松。 上午坐了快2个小时的地铁,走了1.5公里,赶到了间隔住的中央很远的面试地点,这是一个工厂性质的企业,有员工宿舍,后期给我沟通的那个人事姐姐很好,第一轮面试就是她来近程面试的,所以赶到之后就给她分割了,到了公司之后稍作期待之后,就安顿了他们的技术开发团队的人给我面试,接下来就是见证奇观的时刻。是这家公司哦! 这个所谓的技术开发一组的小组长来给我面试,从刚进会议室门之后,他看人的表情就是那种高傲自大的样子,而后我进行自我介绍,后果自我介绍还没做完他就打岔了,而且用很不耐烦的语气来问前端知识点,而后开始了他的装逼之路,刚开始就拿着tcp协定的三次握手和四次挥手来切入正题,我答复了一下原理,然而他还是在问一些你没有答复的其余边角知识点,目标就是把你问的无话可说,这也就忍了,接着是问https协定的某些小版本的性能点,说实话我没记住,我就说了不晓得,而后他就又问一个vue的生命周期,后果我还没有答复完,他就又开始打岔,我就晓得他要干嘛了,就怼回去给他说:等我说完,而后把这个问题答复完之后,我就没有给他好语气了,他起初又问了几个问题,我都是间接语气很不好的答复完,最初他很识趣的问我的沟通能力怎么样,还有就是团队单干这块,我说我没问题,我比拟敌对和很好相处,只是力是互相的,他人对我态度敌对我会以礼相待,他人不敌对我会还回去。最初他本人晓得他的问题,完结了面试,我就间接给约我面试的人事姐姐发了音讯,因为正好是中午,我就间接走了,起初这位姐姐还特意加了微信问了一下事件通过,尽管这位面试官让我感到恶心,然而这位人事姐姐还是十分不错的,所以这次面试就当减少本人的经历吧。 坐了一个半小时的地铁间接赶到下午的面试地点,因为间隔太远了,来不及回去午休了,间接去战场。因为约面试的时候记错工夫,造成下午有两个线下面试,不过还好把工夫错开了,然而下午面两个线下面试真的很累。首先赶到第一个面试地点,这是一个对于企业培训的公司,第一轮面试我的是一个老乡,她问了很多问题,问的也很细,有几个知识点答复的不是很好,不过也就无所谓了,接着是他们的负责人面试,这个负责人尽管是男的,然而一看就是那种连女的都不如的人,有一个俗语叫:捏做人,这个词汇形容他再好不过,而后讲了一些公司的骚操作,比方每个小时都要提交一次代码,因为他们是依照无效时长来计算无效工作时长,也就是每个工作日有8小时,你要提交八次代码,领导审核你的代码品质是否合乎这个小时的产出,如果不通过相当于你这个小时就等于白干,美其名曰避免摸鱼,我本人都笑尿了。还有就是一年12个月有6个月须要加班,而且是996没有加班费那种,霎时我就吃了一只鲸鱼,这么厉害的上海竟然还有这种屌丝公司的存在,而且我看面试我的那个老乡技术很能够为啥还能在这个公司呆的死心塌地,很是不解。起初我就草草的完结了面试,在心里默默通知本人这家公司给多少钱也不来,永恒封杀。 完结了第一家面试之后就去赶第二家的面试,这家公司很厉害,规模很大,尤其是前台小姐姐长得很棒,然而就是有点高冷,爱搭不理的,量完体温,填完表格就是期待面试官,面试官人很好,问了大略15个问题,然而有几个问题本人把握的不牢,答复的不好,面试官会间接给我说答案,甚至间接验证给我看,让我受益匪浅,而后完结面试之后,hr间接就给我查问最终面试后果,意料之中的面试未通过。尽管面试没有通过,然而非常感谢面试官,让本人又一次发现了本人的软肋在哪里。 完结完线下面试之后,又面了三个电话面试,面试的过程也是可圈可点,根本实现了当天的面试工作。在面试第三天的时候也遇到一个屌丝公司,就是负责人预计找借口压我工资待遇,最初也给我发了offer,然而我连回复他们都没有,不带犹豫的间接封杀这家公司。 分享这些奇葩遭逢首先不是为了夸耀,也没有看不起的意思,就是感觉这种公司文化和面试官的做法跟我的三观不合罢了,不抉择他们就能够了。而且客观唯心主义的实践有这样一句话:存在即正当,也就是说这些公司的存在有它存在的合理性,这种面试官存在也是有它的合理性,我控制不了外界因素,然而我能够抉择合乎本人的职位,这也是分享给所有面试者的,找工作不仅仅是为了生存和工资,还是为了让本人待着难受、待着短暂,不求工作内容有多高大上,只求本人可能开心工作。 最初总结一下当天的面试题汇总,分享一下: 1、形容一下Vue的生命周期 2、谈谈vue中router 3、讲讲js原型链 4、flex的垂直居中怎么实现? 5、怎么去分是不是h5? 6、什么是bom? 7、谈谈v-show和v-if的区别 8、watch和计算属性的区别? 9、keep-alive的应用 10、谈谈promise 11、组件之间传值的形式; 12、数组去重的形式有哪些? 13、谈一下webpack的应用,以及原理; 14、web前端的性能优化有哪些? 15、vuex的应用场景 16、js判断类型的办法?怎么判断一个数组 17、讲讲js的闭包 18、BFC是什么? 19、说说前端中的事件流 20、聊聊事件冒泡 21、扭转函数外部this指针的指向函数有哪些? 22、vue数据双向绑定的原理 23、谈谈js的语言个性 24、谈谈深拷贝 25、怎么取得对象上的属性? 26、说一下事件委托 27、css选择器有哪些?以及优先级 28、sass和less是什么 29、Vue中的data属性值为什么是函数而不是对象? 30、讲讲html5的新属性有哪些? ……结语在超忙的节奏下,面试第四天就这样完结了,截止当天共拿到4个offer,有两个面试进入了复试阶段。最初再总结一下当天:尽管遇到了奇葩的公司和奇葩的面试官,然而不影响本人提高。欢送关注三掌柜的微信公众号“程序猿by三掌柜”交换,因为前几天的面试都陆陆续续开始反馈后果,收到了越来越多的offer,本人曾经暂停了约面试的打算,然而约的面试还是要去面,这就让本人在前面面试心态大不一样,引出了面试周连续剧之蜻蜓点水,下一篇文章会具体分享。 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 7, 2022 · 1 min · jiezi

关于2022招聘季:面试官说一说Zookeeper中Leader选举机制

哈喽!大家好,我是小奇,一位不靠谱的程序员小奇打算以轻松风趣的对话形式来分享一些技术,如果你感觉通过小奇的文章学到了货色,那就给小奇一个赞吧文章继续更新一、前言明天又是一个阳光明媚的一天,我又怀着惨重的情绪踏上了面试的路线,有时我就在狐疑本人,本人是不是不适宜程序员这个职业,难道真的要去做段子手。。。 人不知;鬼不觉的走到了要面试公司的楼下,兴奋又期待的拨通了hr的电话,多心愿她会说一句:上来吧,给你留门了。。。 遗憾的是并没有给我留门,不过没关系,我曾经记住门牌号了,我能够中午爬你家窗户。。。 进来后hr小姐姐让我在会议室里稍作期待,等了一会后进来一个身材魁梧、一米八五的壮汉,我心想这应该就是面试官吧,这次看着不好惹啊,我这次还是收敛点吧,然而我看他戴着一个彩色墨镜,我心想难道他是。。。 二、面试面试官:小奇是吧,先做一个自我介绍吧 我:您是盲人? 面试官:不是啊,怎么这么问呢? 我:不是盲人你手里拿着我的简历怎么还让我介绍呢? 面试官:不是,这是流程懂不懂,在你介绍的过程中我能够好好看看你的简历 我:(我站起来夺过了面试官手中的简历扔到了地上)不必看我的简历了,你就记住两个字,精通就完了。 面试官:(面试官瑟瑟发抖)什么都精通? 我:那必须的。 三、Zookeeper中Leader选举机制面试官:那你说一说zookeeper中leader选举机制吧 我:给我上三个小姐姐。。。 面试官:大哥,你是来面试的,这里不是足浴店。。。 我:我晓得,我让他们三个模拟zookeeper节点,来带你活泼形象的理解一下zookeeper是怎么选举的。 面试官:那好吧,这的确是一个不错的理由,当前我就能够轻易。。。 此时进来了三个小姐姐,大姐漂亮端庄,暂且叫她大端庄吧,二姐闭月羞花,暂且叫她二羞花吧,三姐国色天香,暂且叫她三天香吧。 我:我当初给你们每个人一个选票,下面能够写两个数,第一个数代表你们本人,每个人的都不一样,你们第一个数就依照1、2、3来吧。第二个数你们能够轻易填写。 这时大端庄写的是(1,0),二羞花写的是(2,0),三天香写的是(3,0) 这个时候咱们如果先启动两个节点,一个是大姐,一个是二姐。 这个时候大姐把手里的票发送一个正本给二姐,二姐把手里的票也发送一个正本给大姐。 这个时候大姐用二姐发给本人的票和本人手里的票比拟,先比拟后一位,如果对方比本人的大,那么就抛弃本人的票,而保留对方的票,如果对方比本人的小而抛弃对方的票而保留本人的,如果相等就比拟第一位数,如果两位数都相等则两个票都保留。 大姐是(1,0),二姐是(2,0),最初一位都相等,则比拟第一位,第一位二姐是2大于大姐的1,所以大姐抛弃本人原来的票据,而保留二姐发过来的票据。 因为二姐的票比大姐的大,所以二姐本人的票不必抛弃,抛弃大姐给的正本就好。 这个时候单方再次互相发送票据。 这个时候因为单方票据大小都一样,则不仅保留本人的票据还要保留对方发送的正本票据,此时两个人的票据状况如下。 这个时候因为每个人所持有的票数大于总节点的一半(这里只有大姐、二姐两个节点,所以总节点是2)这里就确定了leader应该是(2,0)对应的节点,也就是二姐是leader。 面试官:那小三呢,三姐天香还没有启动呢 我:别急,当初三姐天香启动后发现曾经选举出leader了,所以三姐天香就间接将本人变为follower角色。 面试官:嗯,我明确你的意思,那你能最初总结一下比拟那里是怎么比拟的吗,我有点晕 我:好的,比拟那里只有三种状况,一种是本人大于对方,第二种是对方大于本人,第三种是两人相等。 本人大于对方:将对方发过来的票扔掉,保留本人的票。对方大于本人:将本人的票扔掉,保留对方的票。两人相等:将本人和对方发过来的票都保留。 面试官:嗯,那我要是想当leader就间接把票改大一点不就行了,票里的数据怎么来的呢? 我:票里两个数一个是myid,一个是zxid,myid是节点的惟一标识,在启动节点之前须要配置好,而zxid在数据批改后会减少,zxid越大证实这个节点里的数据越新。 面试官:哦,那意思就是节点数据越新的就最有资格当leader呗 我:是这样的。。。 面试官:小伙子真厉害啊,我这边没有什么要问的了,你还有什么问题要问我的吗 我:额。。。那三个小姐姐的微信你有吗? 面试官:咳,只有你来,别说三个了,就是三百个也不在话下 我:那当初去办理入职吧。。。 面试官:别急呀,你得先去体检,证实你能够的哦。。。 我:那我必定没有问题呀。 面试官:你还有其他同学吗,给我举荐几个 我:有,跟我一起学习小奇趣学编程系列的有不少人,我都给你介绍过去吧。 面试官:好啊,我这里正缺人呢。。。 我:那我先去体检了啊,记着我的三百个。。。 四、总结这里对于zookeeper还没有整顿结束,文章前面继续更新,倡议珍藏。 文章中波及到的命令大家肯定要像我一样每个都敲几遍,只有在敲的过程中能力发现自己对命令是否真正的把握了。 如果感觉我的文章还不错的话就点个赞吧 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 7, 2022 · 1 min · jiezi

关于2022招聘季:Redis数据结构详解4为了节约内存的数据结构压缩列表ziplist

前提常识后面几个文章里咱们介绍到了字典dict和跳表skiplist,它们都是redis为了谋求性能而开发的根本数据结构,外面或多或少都借助了一些辅助的元素;例如字典dict在rehash时会同时存在两个哈希表,又或者跳表skiplist里节点多了层的构造,这些设计都是为了谋求性能而就义了内存空间。 如果你多多少少理解HashMap的底层原理的话,你就晓得: 在JDK1.8中,随着元素越来越多,HashMap产生hash抵触,桶中元素大于等于8个,并且容量大于等于64时,会由链表模式转化为红黑树结构;而当桶中元素降到6时又会转换回链表。 为什么有这样的变动呢?因为这体现了工夫和空间均衡的思维,元素刚开始并不多时,链表的空间占用是比拟少的,并且因为链表短,查问须要的工夫也没有太大问题;可是随着链表越来越长,查问的须要的工夫也就越来越长,就须要用占用空间大然而查问更高效的红黑树来帮忙了。 工夫or空间,看来所有的数据结构都离不开这个命题。而咱们明天要说的压缩列表ziplist就是redis为了节约内存而设计开发的数据结构,并且作为列表键和哈希键的底层实现之一。 压缩列表ziplist的“退场机会”hash(上面条件满足其一,hash会由压缩列表ziplist构造转成字典dict构造) 键值对数目超过512。插入一个value长度超过64的键值对。sorted set(上面条件满足其一,sorted set会由压缩列表ziplist构造转成zset构造——蕴含一个dict和一个skiplist) 键值对数目超过128。插入一个value长度超过64的键值对。PS:在ziplist转成其余数据结构后,不会再退为ziplist构造。 压缩列表的构造各个局部在内存是间断的,对应的含意如下: <zlbytes>:4字节;用来记录整个压缩列表占用的内存字节数。<zltail>:4字节,用来记录压缩列表表尾节点(最初一个entry)距起始地址有多少字节,即偏移字节数。<zllen>:2字节,记录了蕴含的节点数量,即entry的个数。当entry个数小于2^16-1(65535)时,这个属性值就是压缩列表蕴含的节点个数;而当这个值等于2^16-1时(该字段只有2字节,16bit,即能示意的最大值,所有位数都为1),节点数量须要遍历整个压缩列表能力得出。<entry>:长度不定,用来寄存理论要存储的数据项,有对应的构造,上面会再介绍。<zlend>:1字节,固定为255,用来标记压缩列表的末端。 <previous_entry_length>:1字节或5字节;用来记录前一个节点的长度,前一个节点长度小于2^8-2(254)字节时,那么该属性长度为1字节,前节点的长度就保留在这一个字节中;如果前一个节点长度大于等于254字节,那么该属性长度为5字节,第1字节固定为0xFE(十进制254),而前面4个字节则用来存储前节点长度。(1字节8位,最高不是能用来代表255吗?为啥是254?因为<zlend>属性固定值为255,要与其辨别开)<encoding>:1字节、2字节或5字节;用来记录节点content属性所保留数据的类型以及长度。<content>:长度不定;负责保留节点的值,能够是字节数组,也能够是整数。压缩列表?“内存间断的双向链表”!看到了下面这些属性,你可能不是很懂,但它其实算是一个“内存间断的双向链表”。(本人试着演绎,如有谬误还请评论区纠正~) 为什么这么说?你想想看双向链表的几个属性: 头节点head尾节点tail节点next指针节点last指针而这些咱们依据下面的属性都能够得进去: 头节点:元素前三个属性一共固定占10字节,马上能找到第一个节点的地址。尾节点:依据<zltail>属性,即尾结点的偏移字节数,间接能够失去最初一个节点的起始地位。entry的next节点:因为内存间断,又晓得<previous_entry_length>和<encoding>的属性值,<encoding>又蕴含<content>的长度,所以能够失去下一节点的起始地位。entry的last节点:因为内存间断,又晓得<previous_entry_length>属性值,即前一节点的长度,所以能够失去上一个节点的起始地位。为什么要用“内存间断的双向链表”啊?当然是为了实现压缩的特点了。 压缩体现在哪里?首先能够明确压缩列表用间断内存来实现,不会造成数据之间闲暇的内存碎片,曾经体现了压缩的概念。还有的就是下面属性值的长度,比方<previous_entry_length>属性,曾经尽可能占用起码的内存来存储长度了,当1字节不够时才用5字节来存储数据,像这样灵便的属性长度,外面还有许多。连锁更新既然是内存间断的,那必定又牵扯到一个老问题:牵一动员全身如果我要新增加一个节点,必定要执行空间重调配操作,而且因为<previous_entry_length>属性用来记录上一个节点的长度,阈值是254字节,如果咱们的节点都是250字节到253字节;那么当咱们增加一个长度大于254字节的新节点时,就会引起“蝴蝶效应”。删除操作也会引发这样的连锁更新,在最坏的状况下须要对压缩列表执行N次空间重调配操作。 但要留神的事,只管连锁更新的耗时很长,但其实实在产生的概率是很低的:下面咱们是假如每个节点都在250~253字节之间,实际上,这种状况简直没有。 因为这些,ziplist的一些操作命令的复杂度仅为O(N),咱们能够放心使用,不必过分放心上述假如引起的性能问题。 写在最初的最初我是苏易困,大家也能够叫我易困,一名Java开发界的小学生,文章可能不是很优质,但肯定会很用心。 又一个转瞬,清明假期过来了,作为一个假期就躺着的社畜,示意本人的内驱力还是不够,不过我当初想得还是能进来转转,以前始终期盼着居家办公,但真的居家办公后还是闷得发慌,而且加上最近产生一些不开心的事件,的确须要工夫来整顿情绪。 但一码归一码,博文更新还是不能落下,redis的根本数据结构不晓得前面还会不会持续,因为还有两个数据结构quicklist和intset我感觉没什么特地的中央,可能会从redis别的方面再动手写一点货色吧,也有可能会开启新的篇章吧~当初还不好说,大家就一起加油吧~ 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 6, 2022 · 1 min · jiezi

关于2022招聘季:面试周连续剧之轻车熟路

前言接着上一篇文章持续聊面试经验,通过前两天的面试经验,以及一直总结欠缺本人的常识储备,又系统性的筹备了一下前端面试知识点,应答个别的面试曾经不成问题,能够说本人曾经有了“反客为主”的能力,那么马上开启让人愉悦的面试第三天吧。正题依据前两天的面试习惯,还是上午一家线下面试,下午一家线下面试的节奏,仍然是前一天早晨把线下面试的线路布局好,以及把面试工夫备注好,这样能够动静依据面试工夫来抉择早上起床的工夫,能坐地铁就不抉择公交,为的是保障赴约面试的准时性(这也是一个面试技巧,能够划重点了)。那么接下来就开启了新的一天面试日程吧。 依据线路布局和面试工夫,这天早上的面试终于没有早退,而且还提前了几分钟达到面试现场,然而找这家公司的地址还是节约了一点工夫,准时到达面试地点之后,间接就开始单刀赴会的面试,一个公司老板一个前端开发,看起来公司不大,是一个“屌丝公司”(这里的屌丝公司的词义:公司规模很小,而且要求高,待遇差),首先是做前端开发的面试官问了一些对于根底的前端知识点,而后问了大略8个左右吧,而后完满答复她的问题,老板看她难不到我,就让这位面试官后行来到,而后就是这个老板对我的“挑刺”操作,首先问我之前的待遇,又拿我的学历说事,最初又拿我做的我的项目说事,总之就是各种贬斥操作,起初我进行了无力的反驳,他本人应该也晓得了我的态度,而后就完结了面试,尽管没什么大不了,然而大清早的节约我的一天的好情绪,也节约我的工夫精力,最初本人在来到的时候通知本人这家公司就算是给我再高的待遇我也不来,曾经在心里封杀他们了,这里也为我的面试周的下一篇文章埋下了伏笔。 完结了这家屌丝公司的面试之后,我就快马加鞭的往回家赶,筹备回去午休,顺便筹备一下下午的线下面试,在回去的路上约了两个线下面试,其中一个是外资企业的面试,须要做英文自我介绍以及英文面试;还有一个近程面试的电话,面试官大略问了我10个问题吧,我答复的十分完满,让面试官无话可说,第一次领会到反客为主的畅快,这里不是在说大话,比方面试官问我一个问题,我会触类旁通的答复他,让他无可挑剔,就这样顺利的通过了初面。 下午的线下面试间隔我住的中央不太远,也就40分钟地铁的样子,而且这个中央据说很厉害,全是外国的领事馆,沿途看到了好多老外在路边喝酒聊天。 提前10分钟赶到面试地点,注销完之后前台小姐姐给我安顿了一份口试题,给我找个会议室去做题了,我看好多来应聘的人都在用手机百度搜寻,我关上面试题看到有五大题,满分100,我看到之后感觉不难,然而在不借助网络的状况全副写对有点难度,所以本人就只做了两道题,其余的不写了,而后就去交卷了,交卷前不忘把题目拍下来,后果被隔壁同样来面试的哥们看到了,他认为我在百度,向我投来了不怀好意的眼神,我间接把他瞪回去了,我感觉声势不能输,我没有舞弊我就是这么硬气。面试题目如下所示: 口试之后就是面试官的发问面试,面试官很好,也很年老,问了我大略20个知识点吧,问题不难然而问的很细很深,然而本人答复的也都熟能生巧,没什么问题,可是面试完结之后,让回去等告诉,也没有下文了,可能是他们感觉我口试题只做两道的起因吧,原本我打算一道题都不做的,起初还是做了两道题意思一下,我感觉在面试的时候遇到口试题或者上机实操的题,都是在羞辱人,因为这种题目基本考查不了什么,然而能挡到很多面试者,也可能大家在面试的时候都比拟冲突这种限时性的面试操作吧(倡议面试者在当前面试的时候遇到相似的口试题或者上机实操的题,能做就做,做不了果决不做,不会的题目也不要去百度,要硬气一点,大不了这家公司的面试不加入,为的是尊严,这也是面试的注意事项)。 下午的线下面试完结之后,就打道回府了,在地铁上又遇到一个外资企业的面试,这家公司不须要英文自我介绍和英文面试,然而须要面试者的经验很丰盛,须要做口试题,之前在美资企业待过,我晓得老外考查的是什么,所以也就许可了线下面试,然而前面没有去成,这里买下一个伏笔,最初我会提到。 在回到家之后,又接了三个电话面试,面试官问的问题根本都答复的差不多,没有满分也有90分,所以明天的面试十分顺利,也是本人首次反客为主,这种感觉十分的好,也给本人在前面的面试打下了扎实的心态根底,让本人有了更多的底气,十分的难受和过瘾。最初总结一下当天的面试知识点,分享一下: 1、形容一下Vue的生命周期 2、谈谈vue中router 3、讲讲js原型链 4、flex的垂直居中怎么实现? 5、在地址栏中输出一个URL,到这个页面出现进去,两头的过程有哪些? 6、什么是bom? 7、谈谈v-show和v-if的区别 8、watch和计算属性的区别? 9、keep-alive的应用 10、谈谈promise 11、组件之间通信,传值的形式; 12、数组去重的形式有哪些? 13、谈一下webpack的应用,以及原理; 14、web前端的性能优化有哪些? 15、vuex的应用场景 16、js判断类型的办法?怎么判断一个数组 17、讲讲js的闭包 18、BFC是什么? 19、说说前端中的事件流 20、聊聊事件冒泡 21、扭转函数外部this指针的指向函数有哪些? 22、vue数据双向绑定的原理 23、谈谈js的语言个性 24、谈谈深拷贝 25、怎么取得对象上的属性? ……结语仍然是在超忙的节奏下完结了面试第三天,随着陆陆续续的面试反馈,曾经拿到了2个offer,还有三个面试进入了复试阶段。最初再总结一下当天:尽管被虐,然而很感谢;尽管程度无限,然而找到了晋升的方向。欢送关注三掌柜的微信公众号“程序猿by三掌柜”交换,因为后面两天的面试踩坑经验,一直地总结面试教训和高频面试题,我面试第三天能够用熟能生巧、对答如流来形容了。不过进行的太顺利就会遇到一些不快的事件,面试也是双向的,不仅仅只是任由公司选应聘者,应聘者也能够反客为主的选公司,这就引出了面试周连续剧之奇葩遭逢,分享一下本人遇到的一些奇葩公司和奇葩面试官,不便避坑,下一篇文章会具体分享。 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 6, 2022 · 1 min · jiezi

关于2022招聘季:2022-招聘季-|-面试了一个月我经历了什么

Hello, 大家好,我是程序员海军,又到了金三银四的招聘季。 本篇文章总结了我去年面试中遇到的坑,以及身边人遇到的面试坑,通过总结剖析才出了此篇文章, 送给 金三银四 找工作的你,找工作运气很重要,机会更重要! 对于技术栈我在筹备面试之前理解了 前端市场行情, 以及你须要哪些技术栈。 因为 我面的是 中级前端开发岗位 , 以下是针对 中级前端岗位的一些要求 统招本科以上学历,具备3年以上前端开发工作教训; 【能够忽略不计】熟练掌握ES6、CSS3、HTML5等前端技术;精通 Vue 或React,有微信小程序的开发教训者优先;理解和应用过Node.js进行前端我的项目构建纯熟应用 TypeScript 精通各支流浏览器(IE6+、Firefox、Chrome、Safari)间的差异性,能疾速定位和解决各种兼容难题; 【明年IE浏览器将于明年6月“服役” 永远退出历史舞台】相熟Webpack构建的原理,遇到问题能自主的解决.在uni-app框架下,进行挪动多端(IOS、Android、微信小程序)开发;把握HTTP协定相干常识,相熟nginx相干配置;以上就是 中级前端岗位 的技术栈要求了。 在南方 偏 Vue : Vue + 小程序 + uni-app 要求多点,这三个纯熟的话,基本上轻易投递,加上简历如果有亮点的话, 简历筛选通过很容易。 在北方 偏 React : React 全家桶 + TypeScript 对于面试近程面试近程口试 【牛客网】腾讯会议 【视频面试】电话面试近程口试:面试官在平台提前出好面试题, 面试者 在指定工夫内加入 口试, 口试时确保 视频 和 语音是 失常工作的, 它是在 网页窗口中答 代码题, 有的公司会出场景题 , 让语音答题,就会用到音频了,所以在进入网页时, 肯定要 记得 受权, 否则无奈面试。 视频面试:视频面试个别是通过 腾讯会议 进行面试, 因为我面了很多异地的,大多都是 视频面试 , 上面我说一下视频面试的根本流程以及面试官大略问你哪些方向的问题: ...

April 5, 2022 · 1 min · jiezi

关于2022招聘季:面试周连续剧之被虐成‘狗

前言接着持续来话面试周的经验,工夫来到面试周的第二天,提前总结一下当天的面试以被虐为主基调,尽管也有意外播种,然而当天的主基调就是被面试官虐,而不是“反杀”面试官,那么马上开启终日的经验吧。正题在切入正题之前须要补充一下,我是通过boss直聘和拉勾招聘两个软件来查看职位和投递简历的,次要是以boss直聘为主,因为我感觉拉勾招聘软件不好用,要让我说出为什么不好用,我也说不出来,真要让我说个起因就是boss招聘这个软件曾经用习惯了,而且每次找工作都是在boss上找到的,通过拉勾约的面试都很少,可能是集体偏见吧,请见谅。 工夫来到了2022年的3月1号,也是面试周的第二天,因为当天早晨又把前端相干罕用的知识点又过了一遍,自认为感觉应答面试会熟能生巧,后果还是被意想不到的面试被虐差一点狐疑人生。首先是早上起床就去加入上午约的一个线下面试,而后仍然是因为不相熟上海地铁的骚操作和线路早退了几分钟,但这都不是问题,我感觉上海的面试官对于面试早退的这个事件不太在意,最终以早退10分钟的代价感到了面试地点,而后就是面试官来面试了,面试官很敌对,问了大略10几个问题吧,最初就是说回去等复试告诉,个别这种操作都是没有下文的,司空见惯。完结上午的线下面试后,就想赶回住的中央午休,毕竟面试是很耗体力、精力的事件,不午休下午的面试状态就不会好,这也是一个面试教训,肯定要保障短缺的睡眠来保障面试的的精神状态。 查看了下午的面试地点,和上午的面试地点间隔不远,然而如果中午回住的中央午休,途程太远,工夫来不及,索性就间接赶赴下午面试场地的左近,找了一个麦当劳吃了午饭,在麦当劳劳动到面试开始前的半小时,间接去了下午面试的场地。在上午面试后到下午面试前的这段时间,还接了2个近程面试的电话,算是一面吧,面试官问了更根底的一些知识点,整体感觉都还能够,让期待二面,总体上前半天的面试经验还是比拟安稳的,没什么大的问题,这也是暴风雨前的平静吧。 工夫来到了下午两点,开始下午的线下面试,首先是boss上的公司名字和现场的公司名字不统一,认为走错中央了,后果问了前台才晓得是一回事的,搞不懂这家公司为啥有两个名字,看公司门面还能够吧,不是小公司。而后就是各种扫码测体温填表格,填完之后还等了半个小时,因为没有面试会议室,间接安顿在了一个公共区域,旁边就是办公区,感觉很不难受,毕竟面试这个事件是很私密的,万一答复不上来问题岂不是很难堪,所以在面试的时候尽量把说话声音调到只有面试官和本人能听到即可(这也是一个面试技巧,实用于在公共凋谢区域面试的时候,能够划重点了)。面试官看着很浮夸,人也很好,而且问的问题也不难吧,也是偏根底的前端知识点,然而可能本人中午没有午休的起因,不在状态,答复问题的答案不是太现实,竟然还有答复不上来的,面试官感触到了我不在状态的样子,而后问了大略十几个问题,就完结面试,面试完结之后面试官还给我提了一些忠告,问了一下啥时候开始面试的,回去好好零碎的筹备一下,再从新面试成果会更好,话中有话就是说你筹备的不行,筹备好了再进去找工作,尽管过后没有面试胜利,然而听感谢那位面试官,起初我还刻意在boss上给招聘经理说让他帮我感激一下面试我的那位面试官的。 下午的线下面试完结之后,就赶回住的中央,在回去的路上还特意总结一下当天的面试问题,以及本人答复的不好和没有答复上来的问题,又从新查漏补缺一番(及时查漏补缺,总结面试知识点,这也是一个面试教训)。在回家的地铁上又面了两个电话面试,也是一面,不过也是没什么问题,等着二面。 在早晨六点多吃完晚饭之后,又开始了电话面试,这个电话面试是我当天最衰的时刻,是华为的面试官打来的电话,面的问题不按常理出牌,造成本人彻底蒙圈了,是两个面试官以群组会议的“车轮战”发问模式,一个大领导一个小领导,小领导语气不行,问的问题也比拟刁钻古怪,注定面试挂,然而大领导为了关照一下我的感触,就问了一下略微简略的问题,算是不让氛围那么难堪,说实话过后就想间接挂电话了,起初还是忍住了,为的是让本人长忘性,顺便体验一下不同的面试格调,也是变相的晋升本人的经验,阐明本人还是一个晓得上进的人。通过华为的这次面试也晓得本人的差距,也晓得了华为公司是真的牛逼,没有筹备好就不要去面试华为的岗位,因为我之后面过腾讯的面试,腾讯的面试也没有华为的变态,这也算是过来人的忠告吧。 华为的面试后,就完结了当天的面试安顿,真的是被虐成‘狗’啊,本人没有抱怨,甚至会感谢虐我的面试官们,是他们让我晓得本人的不足之处,提前裸露了本人的问题点,让我有了晋升本人的根据,十分的感激他们。尽管被虐,然而更多的是播种,不仅播种了面试经验,也播种了面试题,汇总一下当天的面试知识点,分享一下: 1、js的数据类型有哪些?根本类型是?调用类型是?2、vue中router的参数有哪些?history和hash的区别3、cookie、session、location的存储形式异同点4、flex的垂直居中怎么实现?flex:0 0 auto 的含意是什么?5、rem适配原理6、scope属性的用处7、形容一下vue的生命周期?实在demo是在vue的哪个周期中能够拿到?8、watch和计算属性的区别?9、keep-alive的应用10、网络申请中接口报404谬误是什么起因?11、组件之间通信,传值的形式;12、http和https的区别,为什么要用https?13、谈一下webpack的应用,以及原理;14、web前端的性能优化有哪些?15、vuex的应用场景16、一个对于楼梯的算法问题(记不清楚了,此处疏忽)17、setTimeout和setInterval的区别?18、js判断类型的办法?19、数组去重的形式有哪些?20、数组罕用的办法有哪些?21、怎么画一个扇形?22、介绍一下promise,及其底层如何实现?23、讲讲js的闭包24、谈谈v-show和v-if的区别25、讲讲ES6的新个性……结语在超忙的节奏下,面试第二天就这样完结了,临时没有拿到offer,然而有一个面试进入到hr谈薪阶段,有两个面试进入了复试阶段。最初再总结一下当天:尽管被虐,然而很感谢;尽管程度无限,然而找到了晋升的方向。欢送关注三掌柜的微信公众号“程序猿by三掌柜”交换,因为前两天的面试踩坑经验,一直地总结面试教训和高频面试题,引出了我面试第三天熟能生巧、对答如流的状态,下一篇文章会具体分享。 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 5, 2022 · 1 min · jiezi

关于2022招聘季:面试官Zookeeper怎么解决读写双写并发不一致问题以及共享锁的实现原理

哈喽!大家好,我是小奇,一位不靠谱的程序员小奇打算以轻松风趣的对话形式来分享一些技术,如果你感觉通过小奇的文章学到了货色,那就给小奇一个赞吧文章继续更新一、前言明天清明假期,赶上北京玉渊潭公园樱花盛开,女朋友非要拉着我去看樱花,我头一天早晨干文章到三点半,我很想睡觉,然而没方法,军令难违呀。 来到这里犹如来到了花的陆地,让我浑身的艺术细菌开始躁动,我忍不住吟诗一首“樱花落尽子规啼、闻道龙标过五溪,我寄愁心与明月、随君直到夜郎西”,啊,漂亮的樱花啊。 这时旁边的公园管理员满是纳闷的看着我,问我小伙子你的诗背错了吧,不应该是杨花落尽子规啼吗? 我只能难堪的笑笑说,明天应景,我就本人改改词。。。 就在我纵情展现我浑身的艺术细菌的时候,忽然手机响了,我一看是一个北京号码,手机尾号6543,我接通了电话 我:哈喽啊 对方:喂,是小奇吗? 我:正是在下,请问阁下是? 对方:我是某某某公司的,我在某某招聘网站上看到了你的简历,请问你还在找工作吗? 我:没错,我还在找。 对方:那你当初不便进行面试吗? 这个时候我看向了我家领导,我家领导满脸厌弃的说,让你陪我进去逛公园,不是刮风就是下雨,面吧。 二、面试我:面试官您好,我当初不便面试。 面试官:好,我看你简历上写的是精通zookeeper是吧。 我:不敢当,都是同行们抬爱,切实羞愧(其实心里曾经膨胀起来了)。 三、读写、双写不统一问题面试官:好,那你说一下并发状况下读写、双写不统一问题是怎么回事呢? 我:读写不统一问题是在并发状况下,多个线程对同一个数据同时进行读取和写入操作,最初导致读写不统一。 比方这里我线程A查问缓存为空,那么就要查询数据库,查询数据库name为张三,而后我就要去更缓存name为张三。 然而这个时候线程B在线程A查询数据库之后,更新缓存之前批改了数据库的数据name为李四,然而缓存name还是张三,这里就呈现数据库与缓存不统一的状况了。 面试官:嗯,那双写不统一是什么状况呢? 双写不统一就是两个线程都是写的操作,后果还是造成了数据库和缓存不统一的问题。 例如线程B在线程A写入数据后、更新缓存前,进行了数据的批改,然而最终批改缓存的还是线程A,所以这时数据库和缓存不统一。 面试官:嗯,那怎么解决呢? 我:应用共享锁解决。 四、Zookeeper共享锁的实现原理面试官:嗯,zookeeper怎么实现共享锁呢,它的实现原理是什么? 我:这个讲起来有点简单,要不我先陪我女朋友逛公园,咱们早晨回去再聊吧。 面试官:别呀,你当初曾经勾起我的趣味了,咱们一下子聊完吧,咱们就一面 我:好吧,zookeeper共享锁的实现原理就是如果挨着的线程都是读申请,那么他们共享同一把锁。 这里咱们能够看到线程1、2、3是三个间断的读申请的操作,那么他们共享同一把锁A,也就是这个三个线程能够并发的去读取数据。 而后咱们看到线程4是写申请,那么他只能等后面的所有线程执行完了能力执行本人的写操作。 这里线程5也是写申请,那么他只能等他后面的所有线程执行完了能力执行本人的写操作。 而后线程6、7、8都是读线程,那么他们获取的是同一把锁,在线程5执行结束后,线程6、7、8能够一起执行读取操作。 这里的监听咱们之前说了是为了解决羊群问题的。 面试官:小伙子真厉害啊,我这边没有什么要问的了,你还有什么问题要问我的吗 我:额。。。咱们公司加班挺重大的吧。 面试官:何以见得呢?你都没来过公司你怎么晓得的? 我:因为当初是假期你还在约面试,可想而知公司的加班文化挺浓重的吧。 面试官:嗯~,咱们公司其实不提倡加班,然而员工都很爱加班 我:额。。。那我还是思考两天吧,我感觉我可能有点不合群。。。 面试官:那你要是不过去能够帮忙举荐一些其他同学吗 我:那你先好好学学zookeeper的原理吧,不然我举荐一些小奇趣味编程系列的忠诚读者的话你必定招架不住啊。 面试官:那我也连忙看看小奇趣味编程系列,到时候就见招拆招 我:额。。。那样的话两个人都是登峰造极的状态,谁也虐不了谁属实有点难堪。。。 五、总结这里对于zookeeper还没有整顿结束,文章前面继续更新,倡议珍藏。 文章中波及到的命令大家肯定要像我一样每个都敲几遍,只有在敲的过程中能力发现自己对命令是否真正的把握了。 如果感觉我的文章还不错的话就点个赞吧 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 5, 2022 · 1 min · jiezi

关于2022招聘季:面试官Zookeeper集群怎么搭建

哈喽!大家好,我是小奇,一位不靠谱的程序员小奇打算以轻松风趣的对话形式来分享一些技术,如果你感觉通过小奇的文章学到了货色,那就给小奇一个赞吧文章继续更新一、前言作为一名Java拧螺丝选手,不必要把握造火箭的能力就能够工作,然而面试官偏偏要难为兄弟们,这我就有点看不下去了,我只能带上家里的火箭当场向面试官证实本人。 尽管我这个二踢脚可能算不上火箭,然而跟火箭的原理差不多,都是点火往天上发射的,我把握了这个就相当于把握了造火箭的能力。 要害是我这玩意它好使呀,往面试官桌子上一摆,面试官间接跟我谈薪资了,会造火箭就是不一样。 至于你问为什么面试官明明只招拧螺丝的选手,然而却问火箭的底层原理、火箭的集群怎么搭建,怎么保障火箭的投递可靠性(发射失败我就再发射一颗),怎么保障火箭的幂等性(同一颗火箭发射屡次和发射一次是一样的成果)这个问题就不须要你去问面试官啦,我上次曾经问过了,面试官的答复让我理屈词穷。。。 我:面试官您好,请问为什么招我进去拧螺丝,却问我火箭的底层原理呢? 面试官:这特么还不都怪你们。。。 我:咱们?咱们怎么了。。。 面试官:十年前我面试员工,那个时候只有一部分人说会拧螺丝,我面试一个录取一个。 面试官:八年前我面试员工,所有人都说会拧螺丝了,我不晓得该录取谁了,而后有一两个人说他会造摩托,我一听这俩人不错呀,毕竟我也刚刚只会造摩托就这俩吧,花拧螺丝的钱招了两个造摩托的。 面试官:五年前我面试员工,所有人都说会造摩托了,我又不晓得该录取谁了,而后有一两个人说会造汽车,我心想这不错呀,我这的老员工没有会造汽车的,你既然会就来吧,工资给你比老员工高点。 面试官:三年前我面试员工,所有人都说会造汽车了,我又又不晓得该录取谁了,而后有一两个人说会造火箭,我特么只能录取这两个会造火箭的了。。。,并且为了面试我还去学了一些火箭的原理,咱们这个摩托车修理店基本用不到这些原理,然而没方法,谁让这些人这么卷呢。 面试官:明天,我只能面试会造火箭的人了,尽管他们进来也只会拧螺丝。。。 我:那既然说会造火箭的人也只会拧螺丝,那你为什么不间接录取只会拧螺丝的选手呢? 面试官:你认为我没有招收面试只会拧螺丝的吗,我招收了,后果。。。 我:后果怎么样? 面试官:他把公司惟一的火箭给拆了。。。 二、面试在一个晴朗的周二,我来到了“决战天通苑、生死西二旗”中驰名的西二旗桥下。 我怀着一颗忐忑的心走向行将要去赴约面试的公司,一路上我局促不安,不晓得明天的面试会不会顺利,一会面试官会不会刁难我,接待我的hr小姐姐好不好看。。。 人不知;鬼不觉我来到了公司楼下,打电话给hr,她说给你留门了,门没锁,间接上来吧。。。 HR:小奇是吧,带简历了吗? 我:带,带,带了。。。(吸溜),我把简历交给了HR,并急迫的询问什么时候开始呢,我等不及了。。。 HR:别急嘛,先做一套口试题 我:哦,我支付了一份口试题,并来到了做题的会议室,这个会议室不大,然而坐满了人。。。 我:我做完了题后发现好基友微信群里问我在干嘛,我就顺手拍了一张照片发给了他们,我不是故意拍答案的呀,然而这桌子太小人太多,毕竟0.8平米的桌子围着坐了8集体。。。 我:起初公司里人要散会,差点把咱们正在做题的人撵走,我也是服了这个公司了,看我一会虐不虐他们的面试官就完了。 面试官:做一个自我介绍吧。 我:面试官你好,我本科毕业于山东翔蓝,精通挖掘机技术,研究生进入华清大学学习火箭研发技术,博士进入大北大学学习在火箭高并发发射状况下如何保障火箭一致性问题,不会造成误发射了其它队友的火箭。 三、Zookeeper集群模式与集群角色面试官:能够呀小伙子,那你说说zookeeper集群有哪些模式吧 我:zookeeper集群无非有三种搭建形式,一是单机模式、二是伪分布模式、三是分布式模式。 面试官:嗯。zookeeper集群中都有哪些角色呢 我:有三种角色,一是Leader角色,能够解决读写申请,集群中只能有一个Leader角色,二是Follower角色,只能解决读申请,同时也是Leader的候选节点,如果Leader节点挂了,Follower节点就能够选举为Leader节点,三是Observer节点,该节点只能解决读申请,不能参加Leader的选举。 四、Zookeeper集群搭建形式面试官:嗯,那你说说zookeeper集群搭建的具体步骤吧 我:首先咱们下在zookeeper后有一个配置文件为zoo_sample.cfg,咱们能够批改为zoo1.cfg这样更好记一些,而后咱们编辑配置文件 dataDir=[保留数据的目录]clientPort=[客户端连贯zookeeper服务器的端口]server.[数字示意第几台服务器]=服务器的ip示意如果Leader服务器挂了,用这个备用端口来进行选举 我这里配置好后就是一个集群的节点了,这里咱们再将zoo1.cfg复制三个进去,示意另外三个集群节点,我这里是在一台机器上建设四个节点来搭建一个伪集群,实在的集群只有对应上ip地址和端口就能够了。 当初咱们有四个cfg文件,别离为zoo1.cfg、zoo2.cfg、zoo3.cfg、zoo4.cfg,这四个文件只有clientPort不雷同即可,因为客户端连贯不同的服务器要有指定的端口号,这里咱们在一台机器上搭建的伪集群,所以dataDir数据存储门路也应该设置为不同的。 这个时候咱们来依据这四个配置文件来启动四个zookeeper实例。 这个时候咱们会发现启动失败,因为须要咱们设置标识ID,这个时候咱们找到咱们dataDir目录下,在咱们的zookeeper1目录下新建一个myid文件,并且在外面写上1,而后在zookeeper2目录下也新建一个myid文件,并且在外面写上2,以此类推,而后咱们再启动这四个配置文件。 这个时候咱们发现启动胜利了,咱们能够应用status命令来查看各个节点的角色状况。 这个时候咱们能够看到每个节点的角色了。 五、Zookeeper羊群效应面试官:嗯,小伙子十分棒,你能说一下zookeeper羊群效应是怎么回事吗,如何防止呢 我:zookeeper用来实现分布式锁的时候,如果有一个客户端A拿到了锁,那么客户端B、C、D都会监听A有没有变动,如果A解决完业务开释了锁,那么这个时候B、C、D都监听到了音讯,都会去抢锁,如果有一百个正在期待的,那么就会有100个下来抢锁,像羊群一样一拥而上。 我:这样的话就会造成资源的节约,因为这么多节点被轰动了,然而拿到锁的只有一个节点,为何不只轰动一个节点呢。这里的话咱们就要应用zookeeper的偏心锁了。六、Zookeeper偏心锁怎么实现面试官:嗯。那zookeeper偏心锁怎么实现的呢 我:在上一次面试的时候我答复了zookeeper有哪些个性,其中就有一个长期程序节点的个性,这个时候咱们能够每一次都建设一个长期程序节点,而后后一个节点监听前一个节点的变动,只有前一个节点有变动他能力感知到,再往前的节点变动他无奈感知到,也就不存在抢锁的问题。 我:这样的话就能够通过长期程序节点来实现偏心锁。面试官:小伙子真厉害啊,我这边没有什么要问的了,你还有什么问题要问(面试官两眼放光) 我:额。。。咱们公司的会议室就那一个吗,那外面的餐桌是不是有点小了。。。 面试官:哎呀,当初公司正在高速倒退阶段,钱都用在了二手电脑的购买上,这样,你进来干两年,给公司挣了钱了咱们换个超大的桌子 我:(电脑还是二手的。。。)这样吧,我思考思考吧,我当初手上还有几个预约好的面试没有面呢,等我面完了再回答你吧。 面试官:行,你平时怎么学习呀,这么厉害 我:我通过看小奇的趣学编程系列,干货很多又十分乏味。 面试官:那你再给我举荐几个小奇趣学编程系列的读者过去吧,我急需人才 我:那你先买个大点的桌子吧放在会议室吧,人才也须要桌子能力办公(说罢我夺门而出,留下了洒脱的背影) 七、总结这里对于zookeeper还没有整顿结束,文章前面继续更新,倡议珍藏。 文章中波及到的命令大家肯定要像我一样每个都敲几遍,只有在敲的过程中能力发现自己对命令是否真正的把握了。 如果感觉我的文章还不错的话就点个赞吧 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。 ...

April 4, 2022 · 1 min · jiezi

关于2022招聘季:面试周连续剧之首战大捷

前言2022年注定是一个不平庸的一年,因为有着难得一遇的对称日:20220222,即2022年2月22日,农历的正月廿二,也是星期二,总之是一个不平庸的一年。即然不平庸,那就得搞事件,而后就果决的抉择找工作,顺便沾沾不平庸之年的运气。引子萌发辞职换工作的决定也是跟着局势和感觉走的,因为在2022春节放假前就曾经有待不上来的苗头了,忍过了2022的农历春节,过完春节假期开竣工就间接做出了实质性的辞职操作,什么二月份全勤工作,什么年终奖,通通不要了,说走咱就走,风风火火闯九州。这里要说一下我面的是前端开发岗位。 正题下面说了那么多都是为了2022年本人换工作的面试求职之路埋下的伏笔,我是在2022月2月的最初一个周末到的上海,记得是2月25号早晨到的上海,而后在当天下午的时候就曾经开始电话面试了,而且为进入实战面试的第一天埋下了伏笔。真正开始面试求职的第一天是2月28号,那么接下来就来分享一下我进入面试实战第一天的所见所闻、所想所感吧。 我记得很分明,2月28号天气阳光明媚,艳阳高照,仿佛让人遗记了过后还是初春时节,穿的衣服仍然是厚厚的袄子,不过说实话上海的天气和我老家的温度差不多,仍然是冻成狗,然而还好我穿的是袄子而不是短袖。面试第一天的第一个线下面试,是复试,我定的七点的闹钟,七点三十上的地铁,而后坐错中央方向了,而后差一点没有在约定的面试工夫点赶到面试地点,不过达到面试点之后,见到面试官之后就感觉好多了,面试官是负责人,一看他稠密的头发浓度我就晓得他是技术大佬,而且人很好,问问题的语气也很和善,也没有问太多技术问题,次要是问的理论利用场景的问题,回顾了一下过后的面试问题,总结一下: 1、原生开发和h5交互的时候,是通过什么形式来实现的;2、在填写表单的时候,进行空值判断的时候,如果表单填写选项很多的时候,怎么做空值校验;3、是否应用过uni-app,小程序开发的我的项目;4、混合开发flutter技术的应用状况;5、前端开发的时候应用框架的相干内容。而后又聊了一些公司我的项目的状况,问的问题不多,这是在达到上海之后就接到了该公司的第一轮电话面试,电话面试顺利通过,接着就是约的线下面试,初到上海也不适应这座城市的节奏,也不相熟人文习惯,我就认为没戏,也恰好是这次没有过多的面试交谈,为起初的工作埋下了大大的伏笔,我会在最初说这次面试的最终后果。 上午十一点面完试之后,就始终在接电话,要么是面试电话,要么就是约面试的电话,能够说不是在接电话,就是在接电话的地铁上,十分的忙,感觉很空虚。人不知;鬼不觉到了下午的面试环节,次要是以近程面试为主,视频面试和电话面试,应该面了6个左右,始终继续到早晨8点左右,大部分都是第一轮的近程面试,问的前端问题太多了,然而又都是前端开发的罕用知识点,依据回顾以及过后的记录,把面试官问的面试题汇结一下: 1、v-show和v-if的区别,以及实用的应用场景;2、形容一下Vue的生命周期,父子组件谁先加载谁后加载;3、组件之间通信,传值的形式;4、网络申请中接口报404谬误是什么起因;5、http和https的区别,为什么要用https;6、谈一下webpack的应用,以及原理;7、怎么实现class的垂直居中;8、讲述闭包,以及应用场景;9、浅谈vuex的原理;10、介绍一下promise的应用;11、Vue双向绑定原理;12、数组去重的形式有哪些;13、如何了解前端模块化;14、讲讲JS的原型链;15、你平时用到的web前端的性能优化有哪些;……凭着鄙人高超的记忆里也就回顾进去这么多面试题目,其余的遗记了,然而也大差不差,个别第一轮近程面试问的问题都不难,很根底,次要是平时工作中罕用的知识点,以及前端开发比拟根底的知识点,所以前端开发的小伙伴们在找工作之前肯定要好好筹备一下前端的基础知识,全副记住不是一件容易的事件,然而肯定要提前准备,这样才会取得意想不到的机会。 因为邀面的公司太多,造成前面三天的面试节奏更缓和,工夫更不够用,然而我还是依照上午面一家线下面试,下午面一家线下面试的安顿,两头工夫交叉各种近程面试以及和HR沟通面试的电话。我的准则就是线下面试个别都是把途程管制在坐地铁一小时以内的间隔,再远的公司我就不思考了,因为让我在工作不确定的状况下就搬家是不可能的事件,忘了说了,我是在寄宿在同学家,在工作没有确定或者没有转正的状况下倡议大家不要轻易自觉搬家,危险很高的。 话说工夫来到了面试第一天的早晨九点多,吃完饭洗漱结束之后,在整顿第二天的面试信息,以及查看相干的线下面试路线和途程工夫,这样我会做出早上几点起床以及设置闹钟的操作,顺便再温习一下前端面试知识点,查漏补缺,致力让本人在面试的时候能答复的更完满,取得更多的加分机会。总之除了面试之外的工夫就是温习知识点,还有就是总结当天面试时候被问到的所有知识点,包含本人答复的不好或者没答复上来的知识点,最好是做一下记录,而后顺便查阅对应的知识点,这样在下次面试中遇到同款问题就不会再“翻车”了。 结语在像打仗一样的面试第一天就这样完结了,临时没有拿到offer,然而有两个面试进入了复试阶段。最初再总结一下当天:尽管很累,然而很空虚;尽管筹备不充沛,然而感觉良好。面试前的常识梳理筹备是十分要害的事件,欢送关注三掌柜的微信公众号“程序猿by三掌柜”交换,因为本人刚开始面试的时候没怎么筹备和梳理,就引出了我面试第二天的囧况,下一篇文章会具体分享。 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

April 2, 2022 · 1 min · jiezi

关于2022招聘季:不管是青蛙跳台阶还是who爬楼梯能上去就行

爬楼梯这个问题也是一个很经典的面试题,能够换各种人物动物,比方青蛙、小兔子跳台阶,张三李四爬楼梯等等。 题目会相似于上面这样: 假如你正在爬楼梯,须要 n 阶你能力达到楼顶,每次你能够爬 1 或 2 个台阶。你有多少种不同的办法能够爬到楼顶呢? 假如有 2 个台阶,那么有两种办法能够爬到楼顶: 1 个台阶 + 1 个台阶2 个台阶假如有 3 个台阶,那么有三种办法能够爬到楼顶: 1 个台阶 + 1 个台阶 + 1 个台阶1 个台阶 + 2 个台阶2 个台阶 + 1 个台阶假如有 5 个台阶,那么有八种办法能够爬到楼顶: 1 个台阶 + 1 个台阶 + 1 个台阶 + 1 个台阶 + 1 个台阶1 个台阶 + 1 个台阶 + 1 个台阶 + 2 个台阶1 个台阶 + 2 个台阶 + 2 个台阶2 个台阶 + 2 个台阶 + 1 个台阶2 个台阶 + 1 个台阶 + 2 个台阶2 个台阶 + 1 个台阶 + 1 个台阶 + 1 个台阶1 个台阶 + 2 个台阶 + 1 个台阶 + 1 个台阶1 个台阶 + 1 个台阶 + 2 个台阶 + 1 个台阶有了三个例子,咱们来倒推一下,变成代码的模式。 ...

March 31, 2022 · 2 min · jiezi

关于2022招聘季:金三银四Js-面试常见问题总结

总结一些前端js的常识,将笔记整顿跟大家分享,有些常识会常常在前端面试的时候会问到,所以做个记录,心愿对大家有所帮忙,如果有什么问题,能够指出,会踊跃修改。如果大家喜爱,能够点赞或留言我再持续更新面试题~ ~ ~,谢谢大家~~~问题1、前++、后++、区别?var i=2 ;a = i++ //将i的值赋给a , 即a = i,之后再执行i = i + 1; 2a = ++i //将i+1 的值赋给a,即a = i + 1 ,之后再执行i = i + 1; 3console.log(a)【总结】: 前++是先自加后计算、后++是后自加先计算 1:前置++ 是将本身+1 后的值赋给变量,同时本身加1; 2:后置++ 是将本身的值赋给变量,之后本身再加1; JS 有哪些数据类型?Js罕用数据类型undefined null boolean number stringJs援用类型object Array functionES6根本数据类型多了个symblo js判断类型?1、typeof检测不出null 和 数组,后果都为object,所以typeof罕用于检测根本类型2、instanceof不能检测出number、boolean、string、undefined、null、symbol类型,所以instancof罕用于检测简单类型以及级成关系3、constructornull、undefined没有construstor办法,因而constructor不能判断undefined和null。然而contructor的指向是能够被扭转,所以不平安4、Object.prototype.toString.call全类型都能够判断 数据类型怎么检测1、typeof例:console.log(typeof true) // boolean2、instanceof例:console.log([1,2] instanceof Array) // true3、constructor例: console.log([1, 2].constructor === Array) // ture4、Object.prototype.toString.call例:Object.prototype.toString.call([1, 2]) // [object Array]Js数组的办法join()数组转换成字符串push()尾部增加pop()尾部删除shift() 头部删除unshift() 头部增加sort()排序reverse()反转concat()链接两个或多个数组slice() var arr=[1,2,3,4,5] console.log(arr.slice(1)) //[2,3,4,5]抉择序列号从1到最初的所有元素组成的新数组 console.log(arr.slice(1,3)) //[2,3]不蕴含序列号,序号为3的元素splice() splice(index,howmany,item1,...itemx) index参数:必须,整数,规定增加或删除的地位,应用正数,从数组尾部规定地位 howmany参数:必须,要删除的数量,如果为0则不删除我的项目 item1,...itemx参数:可选,向数组增加的新我的项目 var arr=[1,2,3,4,5] console.log(arr.splice(2,1,"hello"));//[3]返回的新数组 console.log(arr);//[1,2,"hello",4,5]indexOf()和 lastIndexOf() (ES5新增)forEach() (ES5新增)map() (ES5新增)filter() (ES5新增)every() (ES5新增)some() (ES5新增)reduce()和 reduceRight() (ES5新增) ...

March 30, 2022 · 5 min · jiezi

关于2022招聘季:面试了字节跳动和阿里他们都问了这个K8S问题

以前在找工作的时候面试了一些大厂,其中在面试字节跳动和阿里巴巴的时候,对于K8S这块,他们问了一个雷同的问题:请具体说说,用户执行了一个deployment.yaml文件时,新创建了一个Pod,这个Pod的创立流程是怎么的, Pod的更新流程又是怎么的。简短的一个问题,要是想答的具体,其实还是波及了K8S中的很多货色,我觉的这是一道比拟有品质的题,我在现场答出来了,在这里,我想再总结一下,查漏补缺,算是对面试的总结,更是对K8S本身的学习和积淀。 我在答复这个问题的时候,其实头脑里大略是有一个流程图的,而后再按着从头到尾,逐渐开展的的准则来具体阐明,上面就参照这幅图,再来还原一个Pod被创立时的流程。第一步:如果咱们的deployment.yaml中应用了Nginx镜像,且replicas的值设置为1,而后用户执行了kubectl create -f deployment.yaml命令。 第二步:kubectl执行yaml文件后,对api-server发动了申请,这时api-server会对此次操作进行身份认证,在客户端的~/.kube文件夹下,曾经设置好了相干的用户认证信息,这样api-server会晓得我是哪个用户,并对此用户进行鉴权,当api-server确定咱们的申请非法后,就会承受本次操作,并把相干的信息保留到etcd中。 第三步:上面controller-manager组件就会染指,controller-manager是有多个类型的,比方Deployment Controller, 它的作用就是负责监听Deployment,此时Deployment Controller发现咱们的deployment.yaml文件诉求是须要一个复本集且数量为1,那么它就会去创立一个ReplicaSet,一个ReplicaSet的产生,又被另一个叫做ReplicaSet的Controller监听到了,紧接着它就会去剖析ReplicaSet的语义,它理解到是要按照ReplicaSet的template去创立Pod, 它一看这个Pod并不存在,那么就新建此Pod,当Pod刚被创立时,它的nodeName属性值为空,代表着此Pod未被调度。 第四步:调度工作天然是由Scheduler组件来实现的,Scheduler始终关注Pod及Node的信息,所以它就要把未被调度的Pod,调度到适合的Node下来。然而它所做的也只是把它的调度计划,返回给api-server。 第五步:kubelet组件布署于Node之上,它从api-server处晓得有一个Pod应该要被调度到本身所在Node上来,它会先判断本地是否在此Pod,如果不存在,则会进入创立Pod流程,创立Pod有分为几种状况,第一种是容器不须要挂载内部存储,则相当于间接docker run把容器启动,但不会间接挂载docker网络,而是通过CNI调用网络插件配置容器网络,如果须要挂载内部存储,则还要调用CSI来挂载存储。 第六步:Pod建设胜利后,ReplicaSet Controller会对其继续进行关注,如果Nginx Pod因意外或被咱们手动退出,ReplicaSet Controller会晓得,并创立新的Pod,以放弃replicas数量期望值。 第七步:更新Pod,什么时候会更新Pod? 当deployment.yaml文件中template的局部被更新,就会触发Pod更新,因为Deployment Controller 会把template局部文本计算一个hash值,依据这个hash值判断文本变动。 第八步:既然触发了更新,那么ReplicaSet Controller就会新建一个ReplicaSet并在其中启动新的Pod,在老的ReplicaSet里敞开Pod,直到新的ReplicaSet接替老的ReplicaSet。 总结:能够看到,对于一个简略的问题,能够答复的内容还是很多,我置信上述内容,如果面试官不是要求你对源码上相熟与开发,曾经答复的比拟详尽了。我倡议在面试的时候,如果面试官问了一个你比拟熟或精通的问题,那么你应该抓住机会尽可能的把这个问题讲深,讲广,如果面试官不叫停,甚至能够把与此相关的货色说进去。你晓得这样做的目标吗?能够在评论处与一探讨 : ) 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

March 29, 2022 · 1 min · jiezi

关于2022招聘季:2022招聘季|从招聘方的角度理解求职

起因前些日子,有位同学找我征询求职问题。他本科专业其实不错,然而第一份工作没找好,所以只好报了家培训班,想社招之路走得更稳一些。结业之前,他放心培训班就业辅导不够,也找了几位内部导师帮忙。其中就包含我。 相熟我的人都晓得,我比拟拥护报培训班,因为: 性价比太低。培训班里真正有实战经验的很少,大部分都是夸夸其谈。这次征询也根本印证了我的观点。所以我想再分享一下,到底招聘方的状况是怎么的,他们有哪些需要,筹备简历的时候应该留神什么,面试的时候又应该留神什么。 企业要招人1.0 产生需要某天,老板想做个产品。咱们假如公司里曾经有靠谱的技术团队和技术治理,那么,技术主管很快就会梳理需要,落实到岗位和集体,如果他发现,目前的人力无奈应答满足需要,就会启动招聘。 1.1 产生岗位形容(JD)岗位形容(简称 JD),即这个岗位职责是什么、须要哪些职业技能、工作地点和福利待遇等,是招聘前必须筹备好的物料。 产品确定、需要确定,所以岗位需要和岗位职责根本也是确定的。 此时技术主管个别会找来以前的 JD,改一改职责和需要,实现新的 JD。而后 ta 会把 JD 发给招聘负责人(多半是 HR),上传到招聘网站、开发者社区、公司招聘库等等。 比方 Code.fun 退出咱们 就是一份很典型的 JD。 1.2 筛简历一段时间后,HR、技术主管会从各种渠道取得一大批简历。于是他们就要从这一大堆简历疾速筛选出能满足岗位须要的候选人。 怎么筛呢?个别是关键词。 拿我某项工作来举例,我过后负责开发的 Showman 产品,是浏览器插件,界面局部采纳 Vue,须要兼容 Puppeteer API。那么在我招聘的时候,就会很器重候选人这几方面的经验。因为匹配度越高,他能顺利接手工作、疾速度过适应期的可能性就越大。 找到关键词之后,HR 可能会承受简历,转发给岗位负责人,即初筛。而岗位负责人则会联合候选人的教育经验、职业经理、我的项目教训等,判断这些关键词的可靠性与含金量,最终再筛选出其中最合适的一些人进入面试环节。 1.3 面试招聘方从成千盈百的简历中筛选出了若干的“看起来”比拟适合的候选人,接下来,就要约过去面试聊聊,看看哪些人真正适合。 面试的过程,其实是验证简历的过程。 张三简历里说,他开发过浏览器插件,然而这个插件有多少用户、经营过多久,在开发过程中解决过多少问题,并没有写得十分具体;即便写得很细,也未必跟他有关系。所以作为面试官,我就须要再面试中弄清楚,这项职业经验对他来说,是加分还是减分,甚至是一票否决。 除了验证简历,面试还能够让招聘方初步理解候选人的非职业个性,比方沟通能力、语言概括能力、接人待物能力,等等。这些货色在招聘中占比不大,不过在诸多候选人的技术能力拉不开差距的时候,也会是必要的判断根据。 1.4 多轮面试单场面试工夫无限,通常做不到八面玲珑。所以面试通常不止一轮。每个面试官关注的点不一样,比方 A 关注我的项目教训、B 关注代码实现能力、C 关注职业规划等。最终 ABC 的观点会汇总到一起,给每个候选人一个总评。 接下来,面试进行到肯定阶段,总评过关的人数积攒到肯定数目,公司就会给其中比拟杰出的几位发 offer,而后就是入职试用转正,略过不谈。 咱们应该怎么做2.1 简历要有针对性正如前文所说,企业收到的简历量很大,筛简历的压力也很大。通常来说,招聘方负责人会花在每个简历上的工夫很短,基本上就扫一遍,有必要的关键词就再看认真一点,没有就间接扔掉。 很多同学只做一套简历,投所有企业所有岗位。在这种状况下心愿渺茫:A 公司招数据可视化,B 公司招小程序开发,C 公司主做挪动端,三家公司的岗位要求差别很大,一套简历很难笼罩不同公司的不同需要。 有同学说那我简历里把所有技术关键词都写上能够么?很遗憾,招聘方也不是傻子,你的工作年限和我的项目教训、技术特长不符,也难逃间接扔掉的命运。或者简历太长,重点不突出,要费劲查找关键词,招聘方多半也会间接扔掉。 当然,为每家公司独自筹备一份简历老本太高,也不事实。所以,举荐的做法是: 筹备一份比拟通用的简历,不要太长,写上本人最善于的货色,最能凸显本人专长的经验,用来海投,碰运气。对本人比拟中意、比拟器重的公司,独自筹备简历,突出该公司招聘岗位须要的常识、技能、我的项目教训等,专门投递。同时精投的公司不宜过多,防止面试扎堆,影响筹备工夫。2.1.1 非凡技巧(我再想想要不要写……) 2.2 简历要尽可能实在,面试前也要做好筹备前文也提过,面试是验证简历的过程。可能走到面试这一步,阐明招聘方认为候选人的履历能够满足岗位需要,接下来就是要对简历验真,以及判断候选人的发展潜力和综合排名。 所以简历里的内容能够适度丑化,但肯定不要做假。为什么呢?面试工夫无限,面试官不会针对简历中的每一项进行审查,而是对本人关注的、善于的畛域盘问,也就是大略抽查 20% 的内容,给整份简历打分。 如果候选人简历有做假,面试时被面试官发现,ta 可不会只扣这一条的分,而是整份简历都显得不牢靠,都要扣分。即便剩下的局部都是实在的,然而没有被抽检到,就不会扭转面试官的判断。甚至,如果连问两条都不合乎预期,可能就会间接停止面试。 面试前的筹备也要尽量做好。比方你参考上一条倡议,优化了简历内容,突出以前的某段我的项目经验以匹配特定关键词。那么这个时候最好回顾一下,扫视一下过后的技术计划有何得失,哪里值得改良,本人的工作有何值得称道的中央,等等。而后搜搜看该畛域目前的倒退情况。不要面试官问起来,这个想不起那个不晓得,好好的加分项间接被干成减分项。 2.3 我的项目教训要择优体现通常来说,简历不要太长,因为筛简历的人不会有那么多工夫认真仔细的读。有人说不要超过一页,我感觉不必这么极其,然而三页相对是极限了。短简历更容易突出重点、突出劣势。 所以通常来说,咱们要对我的项目教训进行取舍,不要把每个我的项目都列举进去,即便是海投简历,也要抉择会减少本人竞争劣势的我的项目,写到简历里。 ...

March 28, 2022 · 1 min · jiezi

关于2022招聘季:面试官Zookeeper是什么它有什么特性与使用场景

哈喽!大家好,我是小奇,一位不靠谱的程序员小奇打算以轻松风趣的对话形式来分享一些技术,如果你感觉通过小奇的文章学到了货色,那就给小奇一个赞吧文章继续更新一、前言作为一名Java程序员,Zookeeper底层的一些原理是咱们不用学会就能够搬砖工作的一种技能点,然而小奇为什么还要讲一下呢?难道就是为了节约大家1分钟的宝贵时间,一个人1分钟,50万人就是1年,5000万人就是100年,赚了,小奇以一己之力胜利搞挂一个人(血赚)。 当然不是,并且小奇的文章也没有那么多人看,最多也就节约个肾吧。 学习Zookeeper底层原理是因为面试官要问啊!,所以咱们就要学,什么?不实用的你不学?那街坊小奇可要使劲学啦,到时候面试官只有小奇不要你。 至于你问为什么面试官要问Zookeeper底层原理呢,这个。。。我把这次机会留给你,下次你面试的时候面试官问:“讲一下Zookeeper底层原理”。你:“面试官你好,请问为什么你要问Zookeeper底层原理呢,你给我台电脑,我五分钟给你搭建好图书管理系统他不香吗,咱们键盘上见真章”。这时面试官就会通知你答案,你就能够把答案打在评论区,让小奇以及泛滥小伙伴一起晓得一下到底为什么要问? 二、面试在一个晴朗的周日,我来到了一个生疏的园区(别问为什么是周日,问就是997,不过为了填饱肚子的打工人,只能明知山有虎、偏差虎山行),坐在生疏的会议室,期待HR小姐姐去叫面试官,此时我的情绪和各位小伙伴一样五味杂陈,放心面试官问的会不会很难?问到我的常识盲区我该怎么办?一会自我介绍的时候要不要吹一下我和小奇的关系? 一位英俊潇洒,眼神犀利的面试官走了进来,看到他那犀利、好像能看穿所有的眼神 ,我在想要不然一会就不要20k了,要8k得了,这个面试官一看就不好糊弄啊,然而我想起来我来之前刚看了小奇的趣学编程系列,我曾经齐全学会了小奇的精华,我登时就来了底气,决定一会要30k,不给就学小奇赖着不走(哈哈) 面试官:小奇是吧,带简历了吗? 我:没带,当初彩印两块一张,我简历五张,每次面试都要花费十块,我敌人说了还没工作就先让你掏钱的工作不要去。 面试官:。。。那你靠什么来驯服我,让我录用你 我:气质? (此时面试官并没有叫保安,而是从门后拿出了恭候我多时的棍子,我霎时怂了) 我只好从我的双肩包中拿出了我上午从其余公司面试官手中要回的简历,上午的情景是这样的。上午的面试官:明天的面试就到这吧,回去等告诉吧!我:面试官你好,如果贵公司不打算录取我的话,能不能把我的纸质简历还给我,我下午还有一家面试。上午的面试官:我说你的简历怎么皱皱巴巴,原来你始终在循环利用啊!这个症状呈现多久了?我:半拉月了。。。(当我把皱皱巴巴的简历交给面试官后,这场面试才得以持续进行。。。)三、Zookeeper是什么面试官:我看你简历上写的精通Zookeeper?(哼,面试官轻蔑的一笑) 我:原本不想写精通的,然而同行们抬爱,非逼着写,然而也无可非议,虽说没有达到炉火纯青,然而也差不多登峰造极了吧。 面试官:呵呵、那你先说一说Zookeeper是什么吧 我:ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,次要为了解决分布式架构下数据一致性问题,典型的利用场景有分布式配置核心、分布式注册核心、分布式锁、分布式队列、集群选举、分布式屏障、公布/订阅等场景。 面试官:嗯,Zookeeper是怎么的一个数据结构呢? 我:Zookeeper是一个相似于文件系统的数据结构,最外层咱们能够设想成一个大的文件夹,外面都是一些小的文件夹。 四、Zookeeper有哪些数据结构面试官:嗯,Zookeeper有几种罕用的数据格式呢? 我:Zookeeper中每一个子目录项都是一个znode(目录节点),这些目录节点和咱们一般的目录一样能够新建、删除、批改,咱们罕用的次要有四种类型的znode。1、长久化目录节点:客户端与zookeeper断开连接后,该节点仍旧存在,只有不手动删除该节点,他将永远存在。2、长久化程序编号目录节点:客户端与zookeeper断开连接后,该节点仍旧存在,只是zookeeper给该节点名称进行程序编号。3、长期目录节点:客户端与zookeeper断开连接后,该节点被删除。4、长期程序编号目录节点:客户端与zookeeper断开连接后,该节点被删除,只是zookeeper给该节点名称进行程序编号。 五、Zookeeper有哪些外围性能面试官:嗯,Zookeeper有哪些外围的性能呢? 我:zookeeper有监听告诉机制,如果对某个节点进行监听,当这个节点被删除,或者被批改时,监听方会感知到批改音讯。 面试官:嗯,既然zookeeper有监听机制,那么能够监听到几种类型的变动呢? 我:能够监听到七种类型变动:1、None:连贯建设事件2、NodeCreated:节点创立3、NodeDeleted:节点删除4、NodeDataChanged:节点数据变动5、NodeChildrenChanged:子节点列表变动6、DataWatchRemoved:节点监听被移除7、ChildWatchRemoved:子节点监听被移除 面试官:咱们在开发中应用Synchronized就能够保障线程平安了,为什么还须要应用zookeeper来实现分布式锁呢? 我:如果咱们是单机状况下也就是只有一个过程的状况下应用Synchronized是能够保障线程平安的。然而分布式状况下是多个不同的过程,而不是一个过程外面不同的线程,所以Synchronized是无奈保障多个过程平安的。 面试官:zookeeper节点有哪些重要信息呢,怎么进行查看? 我:zookeeper节点能够通过stat命令来查看次要信息,其中信息有:1、cZxid:创立znode的事务id(Zxid的值)。2、mZxid:最初批改znode的事务id。3、pZxid:最初增加或删除子节点的事务id(子节点列表发生变化才会产生扭转)。4、ctime:znode创立工夫。5、mtime:znode最近批改工夫。6、dataVersion:znode的以后数据版本。7、cversion:znode的子节点后果集版本(一个节点的子节点减少、删除都会影响这个版本)。8、aclVersion:示意对此znode的acl版本。9、ephemeralOwner:znode是长期znode时,示意znode所有者的sessionid,如果znode不是长期节点,则该字段设置为零。10、dataLength:znode数据字段的长度。 面试官:zookeeper创立节点,和监听节点有哪些命令? 我:1、创立长久节点:create /节点名称2、创立长久程序节点:create -s /节点名称3、创立长期节点:create -e /节点名称4、创立长期程序节点:create -e -s /节点名称5、监听节点:get -w /节点名称 六、Zookeeper有哪些权限管制面试官:zookeeper有哪些权限管制呢? 我:应该是依照大小个吧,谁个高谁说了算。 面试官:你特么找打是吧,数据那特么有大小个。。。 我:zookeeper有ACL( Access Control List )权限管制,能够管制节点的读写操作,保证数据的安全性,不然的话谁都能够创立和删除节点,那不就乱了套了。 面试官:ACL权限设置有几局部组成呢? 我:有三局部组成,别离是权限模式、受权对象、权限信息。 面试官:能具体说一说这三局部都代表什么吗? 我:权限模式: 就是zookeeper服务器进行权限验证的形式,比方手机解锁是用指纹还是用明码呢,如果用明码,晓得明码的都能够解锁你的手机,如果用指纹,只有你本人的手指头能够解锁。所以权限模式大体分为两种类型: 1、范畴验证: 范畴就是zookeeper能够针对一个ip或者一段ip地址授予权限,相当于指纹解锁,我给我一个手指头,或者所有的脚指头都授予权限。2、口令验证: 能够了解为用户名明码的形式,这种就相当于明码解锁了,晓得了用户名明码后所有的人都相当于授予了权限。 受权对象: 受权对象就是把权限授予给谁,如果是范畴验证形式,那么受权对象就是ip地址,如果是口令验证,受权对象就是用户名。 受权信息: 受权信息就是指咱们具体的势力是什么,比方咱们解锁手机后能够打游戏还是能够听歌,还是能够用手机砸核桃呢。 zookeeper中定义好的权限有5种:1、数据节点(c:create)创立权限,授予权限的对象能够在数据节点下创立子节点。2、数据节点(w:wirte)更新权限,授予权限的对象能够更新该数据节点。3、数据节点(r:read)读取权限,授予权限的对象能够读取该节点的内容以及子节点的列表信息。4、数据节点(d:delete)删除权限,授予权限的对象能够删除该数据节点的子节点。5、数据节点(a:admin)管理者权限,授予权限的对象能够对该数据节点体进行ACL权限设置。 面试官:咱们怎么查看和设置某个节点的ACL权限信息呢 ...

March 25, 2022 · 1 min · jiezi

关于2022招聘季:高频面试题说清楚Spring如何解决循环依赖

Spring的循环依赖问题始终是中高级Java高频面试题之一,其中的考点就在于你对Spring中bean的加载过程是否有肯定的了解。 那么咱们就以下几点说一下。 Spring中罕用的注入形式有哪几种?结构器注入 set办法注入 注解注入 对于这方面的常识之后再细聊,明天重点不是这些。 什么是循环依赖?循环依赖,留神,这里说的是依赖,而不是调用,这是两个概念,肯定不要混同。 循环依赖从字面意思来看,就是A依赖B,而后B依赖A,当然,这个依赖过程也能够更长,不肯定就非要两个相互依赖,十个八个也是循环依赖,只有造成了一个闭环。 如图,这样就造成了一个闭环,简略说,如此依赖上来,就是一个死循环。 如何解决循环依赖?Spring中的循环依赖包含两种,结构器循环依赖和setter循环依赖。 结构器循环依赖当应用结构器注入形式时,Spring是无奈解决循环依赖的,在出问题时会报错,抛出BeanCurrentlyInCreationException异样。 模仿一下场景的话,大略如下: X1在创立时,发现结构器须要X2类对象,只能去创立X2;X2在创立时,又发现结构器须要X3类对象,只能去创立X3;X3在创立时,又再次发现结构器须要X1对象;周而复始,最终抛出异样。setter循环依赖次要来说一下setter循环依赖,通过Spring在创立bean时的一级、二级、三级缓存的概念解决的。 留神:这里解决的只是单例模式下的setter循环依赖,非单例模式下的仍然没有方法解决,在业务环境中该当尽量避免此类情况。 创立Bean的缓存概念: 一级缓存:singletonObjects,能够称为成品池,寄存齐全实例化属性赋值实现的Bean,间接能够应用。 二级缓存:earlySingletonObjects,能够称为半成品池,寄存晚期Bean的援用,尚未属性拆卸的Bean 三级缓存:singletonFactories,能够称为工厂池,寄存实例化实现的Bean工厂。 通过setter注入时,会经验以下几个过程。 看图谈话! 1)X1在创立时,首先依据构造函数创立bean,裸露一个Factory给三级缓存(工厂池),并且将其放入二级缓存(半成品池);而后进行属性的拆卸,发现有依赖关系,查问三级缓存是否存在,如没有,返回创立。 2)创立X2时,同X1,返回创立X3。 3)创立X3时,这时三级缓存中曾经存在X1,即可间接注入,而后将X3的bean对象放入一级缓存(成品池)。 4)随后X2、X1顺次能够创立实现,并且放入一级缓存中。 5)如此就实现setter循环依赖问题的解决,外围就是这个三级缓存。 留神:这里的bean对象创立实现,放入一级缓存中时,会将对应的二级、三级缓存清掉。 本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。

March 22, 2022 · 1 min · jiezi

关于2022招聘季:2022招聘季|如何才能让校招项目准备的高大上一点

实习很重要,我的项目的第一起源作为老学长,我的倡议是 3、4 月的时候最好是要有出名公司的实习,这样在正式秋招为本人减少很多筹码。可能其余公司一看你的实习经验,可能就违心给你机会让你进面试了,甚至间接免口试,毕竟大厂 buffer 加持,人家就很想理解你在大公司的实习状况。 如果你也像我一样小公司实习,甚至说你没找实习。那也不意味着你没有了机会,我认为寒假这段时间肯定要好好把握,做两个不错的我的项目,而后吃透一个!这里强调一下是吃透 1 个我的项目,为什么呢? 下文再解答... 无论咱们做什么我的项目,在面试官眼里都可能是 Low 的?先说一个可能的残暴事实:无论咱们做什么我的项目,在面试官眼里都可能是 Low 的。 你可能会反驳我,如果想。我抵赖你对... 比方秒杀零碎,这几年都强调高并发的教训,所以大家都做,那些相干技术栈都快成八股文了,网上相干文章也一堆,你会感觉高大上,然而面试官如果问: 你我的项目上线了吗?真实情况有人用吗?没人用你做成这样干嘛?为什么选 Redis 不选 Memcache?为什么音讯队列选 RabbitMQ,不是其余?等等一堆你可能想不到的问题其余我的项目就更别说了:博客零碎、在线聊天工具、XX 爬虫零碎、XX 管理系统... 有些读者可能会问了:我作为一个学生,那我要是能做出微信、头条、淘宝这样的我的项目,我还用得着来这公司下班?下一个扎克伯格怕不就是我了? 问的好,其实很多企业级我的项目归根结底,实质也是这些我的项目。那为什么咱们做不太行呢? 总而言之,我说的 "Low" 不是说我的项目真的不好,而是想表白我的项目难做。什么叫难做? 做我的项目不是跟着开源代码/视频敲一遍作为学生,原本大家就不可能做的是企业级我的项目,所以没方法。大家都会抉择一些常见的容易上手的我的项目来做,这些我的项目不是不能做,但相对不会是你跟着开源代码或者看视频跟着敲了一遍,就说你做了这个我的项目。 好好思考一下。你是真的懂背地的原理吗?比方: 你的我的项目架构是啥,理解吗?(我记得面试的时候好多面试官喜爱问,还有线下让我画架构图)为什么要做这个我的项目?问对业务逻辑的意识?我的项目用的什么数据库?问 ORM、MyBatis,或者持续深挖数据库的知识点上 Spring 的,问 AOP、IOC;问对 servlet 的了解?上前后端拆散的,问如何解决跨域申请?问 session?上高并发的,问如何优化使得并发量有晋升?上微服务的,问你微服务怎么设计?我的项目呈现什么,就看你会被问什么?有时候最怕顾此失彼,为了追最新框架、最新技术,往往遗记了对外围的技术原理的了解。 所以我的项目难做就在于此,你用旧技术他会感觉 low,你用新技术他会感觉你只是单纯的套用,又不是真正的懂。 所以针对这样的状况,我的认识:尽管事实是我的我的项目其实做的是有点 low,然而小我的项目也要展现出它的高大上。 那么,如何展现出高大上? 让我的项目的来的高大上一些我的项目的起源无非几个:学校;企业(有实习的同学);网上(开源 or 付费) 学校或企业做的我的项目珍惜每一次锤炼的机会,用心做好每一次的我的项目: 课程设计/毕业设计中:尽管我是小 demo ,然而我拿到优良的我的项目哦(展示拿到优良的点)比赛项目:ACM、互联网+、挑战杯、蓝桥杯(我这个我的项目获奖了,专家评审认可的;没获奖也能够高大上,比没有好对吧)实习我的项目:如果这是 BAT 的实习我的项目呢?(大厂实习尽管可能只是简略 CRUD,但至多起源就高大上了。)在 读本科那会,有门课须要做 Java 课程设计,咱们大家都做的管理系统,全班只有一个同学做了坦克大战,而后还能够让老师体验玩一下。试想一下,如果是你是那门课的老师,你喜爱哪个我的项目? 网上学来的、或开源我的项目达到高大上的成果如果你感觉学校的课程设计不够好,收费的我的项目 GitHub 和 Gitee 上的优良开源我的项目很多;付费的牛客和慕课上的针对性我的项目也挺高大上的。举荐大家学习: 你学了后如何体现你的我的项目高大上呢? 比方你做的我的项目开源,失去了2k 以上 star ,高大上吧你对某个大牛我的项目有本人的奉献,发现了啥 bug 也挺高大上你的我的项目跟着 mou 前阿里/字节架构师/工程师学的(这个 title 的付费我的项目一大堆,跟着学比本人乱写的确实要高大上吧)或者大家都是本地我的项目,你的我的项目部署上线了,而后面试官能够间接拜访,看到你做的我的项目;比方你做了小程序的我的项目,关上微信就能体验,哪个我的项目高大上? ...

March 21, 2022 · 1 min · jiezi

关于2022招聘季:当面试官问你这个问题的时候他想听到什么

你好呀,我是歪歪。 这期我想简略的聊一个面试中呈现频率比拟高的,但又没有标准答案的面试题。 你在工作中遇到过印象粗浅的艰难是什么,你怎么克服的?为什么我想聊聊这个问题呢? 因为我发现这个问题经常出现在各个技术交换群中,大家聊到这个话题的时候大多都苦不堪言,纷纷表示不晓得怎么去答复这个问题。 或者说之前就没有想过这样的问题,忽然一下被问起来,因为没有筹备,也是摸不着头脑的样子。 匆匆的回顾一下本人的职业生涯,发现天天写的都是 crud,也没感觉有什么艰难啊。 一时间,居然想脱口而出:我感觉吧,也没有啥特地大的艰难,我做的就挺好的。 面试官听了微微一笑:好了,那咱们明天的面试就先到这里,请回去等告诉吧。 考的是什么你必须要晓得失常状况下面试官在面试的过程中问的每一个问题,都肯定是有他的目标。 比方面试官上来就要求候选人做个简略的自我介绍,很多人说这个目标是为了在候选人自我介绍的工夫内看一下他的简历。 兴许在早几年,要候选人本人带着简历去面试的状况下,的确是这样的。 然而当初来说,都是无纸化面试了,你的简历的电子版早就到面试官手上了。 失常来说,面试官会在面试之前曾经看过你的简历了,不须要面试的时候借着你自我介绍的工夫,浏览简历。 我个别让候选人自我介绍的时候,我是在认真的听,我想要从他的自我介绍找开掘到简历上没有体现的货色,也是在寻找面试的切入点,如果自我介绍中有让我感兴趣的中央,我就会从这个中央开始,围绕着简历往下问。 再比方,问你我的项目的时候: 说一下你最相熟的我的项目。是问你我的项目是干啥的,业务场景有哪些吗? 不是的。 问这个问题的目标是想晓得你所相熟的我的项目的架构是怎么样的,是单体服务还是拆了微服务,拆了哪些模块,每个服务大略多大的体量,它们之间是怎么互相的,波及到的技术栈有哪些。 晓得了这些,面试官能力从中找到探讨的点,从而开展技术面试。 至于我的项目是干啥的,简略说几句,铺垫一个背景就行了。 有的同学介绍我的项目的时候把领导在业务上给他画的饼,又给面试官形容一遍。如果不是同一业务线的话,面试官是不会关怀你的业务的。 你要晓得,如果你要介绍业务场景的话,其目标必然是为了引出背地的一个比较复杂的技术解决方案。否则,面试官不会太感兴趣,多说无益,反而占用了面试的时长。 还不如拿出纸笔,在下面画一下你们的服务交互,同时形容一下对应中央波及到的技术栈。 再说这个问题: 你在工作中遇到过印象粗浅的艰难是什么,你怎么克服的?有的同学说他不会答复,我剖析了一下,不会答复的起因其实就是因为不晓得面试官考查的是什么方向。 所以只能给出一些诸如查问慢了就加索引、热点数据加缓存、出了问题重启了就好了...这类泛泛地答复,找不到什么让面试官眼前一亮的货色。 怎么能答的闪亮一点呢? 一般来说,我认为这个题有两个答复的方向。 第一个方向就是往技术的深度,对于技术的谋求这个方向答。想看看你有没有碰到过什么辣手的技术问题,而后是怎么定位,怎么解决的。 第二个方向就是往主人翁意识,体现主观能动性的方向答。面对一个我的项目或者领导给到的工作波及到其余项目组、甚至其余部门的时候,本人是怎么去推动的。 技术的深度如果你往这个办法答,就得本人平时工作中多积攒,多察看相干的案例,而后记录下来。 能够把察看的眼光放的久远一点,不肯定非得是本人所在的项目组遇到的问题,也能够是其余的项目组遇到的问题。 这里就须要本人有一个情报收集的能力,和对于技术的敏感度。 一听到这问题就应该要晓得:这是一个好素材呀,能够深刻理解一下。 这个问题都不肯定是你解决的,然而你要分明的晓得前因后果,就能够包装成本人的经验。 面试官是觉察不进去的。 而且我始终认为,适度的包装,也不算是面试造假。 当然了,这个方向你也能够去背。 然而不能纯正的背诵,得适当的去扩大。 比方我之前分享过一篇对于 Dubbo 调用超时的文章。 从最开始 Dubbo 调用超时的这个表象,别离从数据库、GC、网络、链路追踪等各个角度去剖析了问题,且是一个循序渐进的过程。 你会发现大家对于超时这一类的问题的排查套路都无外乎这样,层层递进的排查,抽丝剥茧的寻找问题。 这个案例你就是能够本人拿去用的,套一个本人工作相干的业务场景。 我就不信了,你们接口调用没呈现过超时的状况? 网上这样的文章很多很多,然而作者写的只专一于面试问题的自身。 如果你想要把这个案例套过去本人用,那么而这个问题能延长进去的货色,你也必须得去钻研。 比方后面这个文章外面,为什么要说“失败策略是 failFast,疾速失败不会重试”?因为如果是failover,会默认重试,且超时工夫是重试工夫之和。所以,他通知咱们,这里没有重试,超时不是因为申请重试带来的工夫叠加导致的。 文章提到的 ElapsedFilter 过滤器,“超过 300 毫秒的接口耗时都会打印”,是作者公司本人扩大的 Filter,基于Dubbo 的 SPI 实现的,并不是 Dubbo 官网的自带性能。所以,他才额定提了一句“ElapsedFilter是 Dubbo SPI 机制的(自定义)扩大点之一”。 ...

March 20, 2022 · 1 min · jiezi

关于2022招聘季:2022招聘季-怎么准备面试面试官一般会问些什么问题-web-前端

前两天北京下雪了,很冷。2022 招聘季,如同也比今年冷一些。 2021 年 K12 的大量裁员,腾讯、快手、字节、滴滴、蘑菇街也在裁员。 想要换工作的同学应该筹备些什么呢?面试流程是什么样子的?如何应答面试呢?怎么样能够进步成功率?如果你关怀下面的问题,并且你的指标地位不超出我的能力范畴(高级工程师、阿里P6、字节2-1)。我会以我教训给你一些倡议 面试流程温习、筹备投递简历一面二面三面HR 面定级、谈薪定入职工夫、收 offer怎么筹备面试?后期筹备集体介绍每一场面试第一个环节都是「请做一下自我介绍」,所以这个问题肯定要提前准备好。 如何筹备?集体介绍重点是什么?咱们先从面试官角度来看一下面试官想晓得什么? 姓名 如果你的姓名中有生僻字、多音字叫错还是比拟难堪的确认你是否和面试官手中简历匹配。我就遇到过异常情况,候选人是面试 java 开发岗位工作状况、我的项目详情、技术栈。尽管个别面试官会提前看过简历,然而有时候简历并不能很好的展现所有内容,所以须要一个简短的介绍来通知面试官 比如说上家公司做音视频的、上家公司做 ERP、上家公司做 IM 的、在线合作、协同办公、项目管理、云服务商。如果说你从 YY 直播跳虎牙直播,是比 YY 直播跳金山办公要匹配的多,公司匹配的话成功率更高,业务场景也更理解。比如说腾讯云、阿里云。比如说做挪动端流动、做 toB 的服务平台、做电商。你之前做挪动端面挪动端岗位成功率更高,比如说抖音电商跳快手电商,就要比今日头条跳快手电商好。比如说应用 JQuery、Vue、React、React、threejs。你简历中写了 React、Vue,然而你更善于 Vue,面试官无奈从简历中看到两个技术在你手中的把握水平善于什么?劣势是什么? 比如说你长于做挪动端我的项目,长于应用 Vue,长于和其余部门沟通比如说你做过一年 Node 开发,能够独立开发,能够独立进行技术研发工作比如说你长于对我的项目进行优化甚至说你有过我的项目经理助理工作教训都是你的劣势。社区影响力,github 有开源我的项目,思否、掘金、CSDN 有内容产出集体介绍案例接下来咱们就能够针对面试官写一份适合的自我介绍 你好,我叫xxx,我在上一家公司做的我的项目是和 XXX 相干。始终从事于 web 方面的工作,把握的前端技术有 xxx。在上一家公司中,我播种不单单是技术方面,次要还有业务能力,自学能力和共事的沟通能力,这都是我学到的,而且我认为很重要的。我的性情方面不算内向,也不算外向,跟敌人,共事相处,比拟内向,在工作中,代码开发时,我是比拟外向的,我喜爱全心全意的投入工作中。我也喜爱交朋友,偶然跟敌人聚聚,聊聊。对于工作我总是抱着认真负责,有责任心,吃苦耐劳的态度工作。谢谢,以上是我的自我介绍。面试官下午好,我叫XX,明天来应聘贵公司的前端工程师岗位。我从事前端开发两年多,有X年的XXX开发教训,在上家公司次要从事H5页面,后盾管理系统,混合App等我的项目开发。平时喜爱逛一些技术社区丰盛本人的技术,像思否,掘金之类,记录本人的工作总结和学习心得。 我的性情比拟温和,在工作中代码开发时我喜爱全心全意的投入,对于工作我总抱着认真负责的态度。面试官,以上是我的介绍,谢谢。面试官你好;我叫XX,16年本科毕业于XXXX;毕业后在合肥卫宁,一家医疗软件公司工作,技术上前后端、数据库包含我的项目部署都做,属于全栈开发,18年来到上海入职京东始终到当初,做的是线下商场的后盾及接口开发;老的我的项目还是 mvc,新我的项目都做了前后端拆散,前端用到 H5、小程序 JQuery、EasyUI、VUE、Angular,后端用到 .Net Framwork 4.5,4.6 、NetCore、Java,数据库用到 SQLService、Mysql、MongoDB、Redis,中间件用到 RabbitMQ 音讯队列,在公司是外围开发的角色,负责老我的项目的保护及二次开发,和其余开发相比,我的劣势在于沟通交流能力比拟强,还有我的责任心和学习能力也是比拟强的,如果有幸退出XXXX,我置信我能疾速融入团队,疾速把握公司相干的技术;谢谢领导。面试官你好。我叫 XXXX。 次要技术栈是 Vue 全家桶、jQuery、原生、Node,CSS 能力也不错,常见布局、伪类、过渡动画都会。 上家公司是做音视频泛娱乐社交这块的,竞品如:全民K歌、唱吧、YY、快手、抖音之类的。 我次要做挪动端流动这块,年度庆典、小视频流动模版、直播间广告位之类的, PC 端也做一些,比方 PC的 IM 零碎。因为公司的用户群体个性,对于兼容低版本设施有挺多教训。 平时也常常在思否社区做问答,写文章笔记之类的,对于 BUG 排查有敏锐度,也长于沟通了解问题。常识储备常识储备是咱们面试胜利的必需品。次要分为两局部:护城河、扩大。这里次要还是靠平时积攒,面试时针对高频且不会的增强记忆。 接下来咱们还是针对前端面试来举例。 前端护城河什么是护城河?这都不会干屁前端! 没方法就是这么卷,所以这里只能去卷一些八股文。 ...

March 20, 2022 · 1 min · jiezi

关于2022招聘季:5年经验专升本入职B站分享

跳槽周期跨度什么时候动了想法大略在去年11月份的时候,我负责的业务线始终做不出问题。而且整个公司的前端技术设施,都是我一手搭建进去的,再待在公司,没什么可成长的空间,就想跳槽了,期间思考了几个可能性: 出国工作:这个想法起源,次要是看了某位网友肉身出国到新加坡的虾皮到新加坡打工两个月的经验分享,感觉挺有意思,也想尝试下,前面投了一些跨国企业,没啥反馈,预计是卡学历,所以就放弃了,前面再想想补救外语的可能性进入大厂:很多大厂都卡学历,即便是内推,也会被卡面试流程,我被小红书、京东、腾讯、美团,拼多多、虾皮、携程、喜马拉雅卡学历和卡面试过程,所以,能抉择的大厂很少,最终入职了 B站面了哪些公司热身阶段(11月下旬 - 12月中旬) 彩云科技,offer天壤智能,offer掌门一对一,offer帷幄匠心,offer驰骛科技,offer坚果云,二面挂乐言科技,二面挂正式阶段(12月下旬 - 2月下旬) 微盟(海内电商),一面挂字节(广告商业化),一面挂字节(线索中台),二面挂字节(抖音生存服务),二面挂网易(严选),四面完,最终评审挂七牛云(低代码平台),三面完,后续无反馈B站,offer中通快递,offer温习备战花了多久,面试到入职,花了多久11月 - 2月 始终在陆陆续续筹备,继续了 3 个月,次要是筹备温习、复盘、刷算法从开始面试,到入职,差不多 3 个月工夫 做了哪些筹备次要筹备了以下几个方面: 简历,认真梳理了最近的工作经验,我的项目上做的事件,用到哪些技术口试,次要是算法和编程题技术知识点查漏补缺温习了哪些内容,刷了哪些题八股文编程题,手写各种办法算法题React/Mobx/Vite && Webpack本人写的博客八股文这块没啥好说的,把各大社区各位大神常常分享的一些文章看了下,再就是针对计算机基础知识和网络基础知识,做了一些总结,大略看了上面这些文章: 浏览器工作原理与实际图解V8从多线程到Event Loop前端年后面试真题,会80%间接进大厂正本编程刷了下根本会手写的面试题以及再把面试过程中遇到的手写题总结下,基本上都还好 算法算法这块不是我的长项,根本没接触,次要是把 LeetCode 热题 HOT 100,Easy 难度简略刷了下,针对大厂频出的算法题,看不懂的,就背答案,比方经典的反转二叉树、任意两个数的和等于 Target、反转单向链表等 前面依据一些面经和文档,比方:前端年后面试真题,会80%间接进大厂正本,做了一些针对性地练习和坚固 框架React 局部温习了 setState原理、 diff 原理,深刻了 hooks 和 fiber 原理,当然这里的深刻不是去读源码,因为工夫来不及,而是参考了比拟多的文章: React技术揭秘React 进阶实际指南Vite前端年后面试真题,会80%间接进大厂正本Mobx 因为我日常应用比拟多的,也被面试官深刻问过,就本人搭建过前端脚手架和看了下 React 进阶实际指南外面有一篇讲了 Mobx。次要理解框架的主体逻辑、响应式原理、依赖收集的实现此外也总结了一下 Redux 和 Mobx 的特点,因为面试官大概率会问:Redux 和 Mobx 的区别? 博客因为自己常常会写播客,这点在投递简历的时候,是十分大的一个加分项,在多个技术社区有同名账号,常常发表一些文章,会受到面试官的青眼,我最近的面试,都有被面试官提到,你的博客写的不错,而且面试官也会从你的博客中来发问你,我就被问到以下问题: Webpack 如何实现热更新的?React 和 Vue 的选型?Redux 和 Mobx 的区别?这些问题,我都在博客上记录了,所以都是信手拈来 重点补了哪些能力和短板技术局部:算法、编程题、对框架的细节思考(不仅仅是停留在应用层面)业务局部:将本人对业务的了解和思考进行了总结治理局部:演绎和提炼面试中裸露了哪些问题,怎么应答的思考和表白的连续性后期热身的时候,筹备内容的结构化有余,遇到有些没有筹备到的问题,临场思考和组织,或者一遍表述一遍思考,导致表白的结构性和连续性较差,体现上就是重点不够、啰嗦、答复不上 解决:针对几大类问题梳理了整体的思维导图,表白的时候,跟进面试官的侧重点,筛选关键点进行构造化表白 过往经验的思考有余当面试官聊到过往短板问题或者低谷经验时,一开始的答复有点浮于外表,并且有一些躲避的答复,受到了面试官的质疑 解决:认真、主观地从新梳理了对应的问题,从主观、主观层面进行从新组织语言进行答复 印象粗浅的事件每个公司面下来的感触字节:我本人的动向是字节跳动,间断面了三个部门,前面字节挂了两个部门,又被其余部门捞起来,,面到前面,越来越没底气,一方面本人的技术深度不够,另一方面,感觉面试官都很年老,不会往你的劣势方面去进行疏导(面试经验不足),有的部门,面的感觉还能够,都挂了,很烦网易严选:网易严选的流程最长,我面了一个多月,当字节跳动挂了之后,网易严选是我最动向的部门,技术栈和业务方向匹配,该部门接下来一年要做的一些事件,也跟我的职业倒退比拟匹配,然而,四面完之后,就给我挂了,很遗憾,预计是被其余候选人给 PK 上来了七牛云:一面问八股文,手写代码,比方实现一个 call/apply 办法等,二面很惯例,问问简历上的事,三面由部门负责人来面试(产品经理),感觉还能够,还让我加了微信,但前面流程始终没有推动,我问了 HR 屡次,HR 给我的反馈是对我的印象挺好,心愿保持联系,但前面流程就推动不上来了,再分割 HR ,就没回复B站:全程聊的都还能够,比较顺利坚果云:印象最深的就是二面了,要开始二背后, HR 先分割我,说是一个开放性的题目,让我二选一,我抉择了其中一个,让我做整体的思考,我做了大量的后端常识、服务端常识,但面试官只问前端方面的常识,沟通的不是很顺利,整体面下来,感觉单方的了解都是有问题哪些经验让本人很难熬字节和七牛云的 offer 一个都没拿到字节面的感觉还能够,第二天就挂了,很好受,心态有点蹦七牛云三面完之后,我等了一周左右,没给我反馈,我始终在推动,包含分割三面的面试官,询问后果,就是不给反馈,挂了也没任何反馈 ...

March 19, 2022 · 3 min · jiezi

关于2022招聘季:在ONES的工作体验分享

入职感触我是2019年12月初入职的,曾经超过超两年了。过后来的时候,只有八九十个人,当初曾经有三百多了。 过后入职须要三轮考核,第一阶段相熟公司产品,第二阶段模仿迭代,第三阶段是实在参加迭代,两次不通过就失败,为期总共一个月。 每个阶段都有导师带,气氛十分不错。 过后的考核难度还挺大的,当初难度曾经升高不少了。 面试心得我最后是Vue技术栈的,面试的时候也不会问我太多React的货色,尽管我之前是自学过的。 我过后是本人投的简历,而后来公司加入了口试,口试是一些八股文题,还好,做完等了一点工夫就间接1面了。 1面的话,也是问一些根底,问虚构列表怎么设计,我刚好之前用ElementUI的Table实现过虚构列表,很好的就答复好了。 2面的话,是和CTO聊技术,比方线上报错了,你如何确认是哪些方面的起因,我感觉我思考的挺广的,基本上整个链路都答到了。 如果想投简历,能够不必那么在乎技术栈,因为Vue、React相通的很多,面试官也不会成心尴尬你。 咱们这里挺多性能场景,业务也会比较复杂,代码标准也有要求。所以面试的时候会多问这类,例如给你一个场景,你设计什么计划来解 决,须要思考什么边界状况。 技术栈React、ant-design、Redux、react-virtulize、GraphQL等等。 class=> hooks,JS=>TS 工程化:webpack5,tailwindcss,ones-ai-common(打包工具),ones-design 性能场景十分多,能接触到许许多多个别公司很难遇到的性能问题 Work Life Balance。不打卡,基本上 10:20 到,早上不须要挤地铁(领会一次八点多的地铁人挤人),早晨 7:00 回家。我所在的组基本上不加班,偶然发版出意外才须要加一下子。入职两年来,很少状况下须要周六来的,一年也就那么两三次。~~ 健身、学习、折腾搞起来。近程办公(超赞):疫情刚进去那年,咱们就进行了两个多月的近程办公,过年在老家失常工作日的近程办公还算了咱们十天调休(加上年假我还有三十天假,年假也不少哦)。 最近深圳疫情,公司的危机意识也是十分的强,别的公司还没反馈过去,咱们这边午休一完结就告诉立刻回家办公了。 2月24日始终近程办公继续到3月7日。 这段时间我在家也是过的十分开心,不必通勤,还能够带娃了。 上班之后不会有电话或者微信找你,除非发版当天你写出了一个超级超级重大的bug一个更懂技术的技术驱动型公司。扁平化治理,产研比例60%。不我的项目制,因为就一个我的项目()。不会因为版本迭代压力太大,导致技术演进都难以进行,公司给平台做你想做的事。技术成长,存在十分多技术深挖机会。咱们的产品是一个巨型我的项目,外面会有各种工程化实际,性能优化相干。性能优化。是咱们常聊的话题。根底平台建设。咱们有自研组件库、公共库、插件开放平台倒退最近失去C轮融资信息 https://blog.ones.ai/a/duihua...极具竞争力的薪资最近启动国际化业务线。融资后人员疾速扩张中,筹备换办公地点。共事有很多员工从公司起步到当初的。也有从上个公司跟到当初,也有从老板之前的金山跟过去的。信赖、沟通、反对。很多共事都被动过去帮忙反对,挺好。导师制。我所在的团队很多都是腾讯、阿里大厂过去的,平时遇到问题都会急躁为你解说。待遇BOSS平台间接可查,很有竞争力来了间接上Mac M1 16G,再加显示器内推岗位前端-React。前端 & 高级前端(架构、性能晋升、很有意思)不限技术栈,不熟React也行(我也是Vue转过来的)后端-Go。后端 & 高级后端 ,不熟 Go 想转的也行测试-惯例测试、测开都有视觉/交互设计师产品经理/项目经理内推分割我(很须要小伙伴啊)本文参加了SegmentFault思否征文[如何“反杀"面试官?」,欢送正在浏览的你也退出。

March 18, 2022 · 1 min · jiezi