plainify

一个科班小前端的大厂面经

「跟我来面试」系列的第一篇文章是关于前端的,发出后看到有读者反馈说内容较少,问的问题比较基础。因为博主是后端的,前端方面并不是非常了解,所以我找到了同组的小伙伴,让他分享一下自己春招时的一些经历。 他和我是同一个实验室的,就叫他 x 吧,目前研一,两年制硕士,今年实习。x 的本科前半段迷茫在科班的基础理论学习和课程作业中,大一大二对前端一无所知,没想关心太多,只想保研就好。大二暑假参加一项学校项目,机缘巧合接触到了前端,发现软件工程还有很多值得探寻的地方。大三时他的保研形势已定,于是参加各种比赛,摸索自己的兴趣所在,终于在一系列比赛中尝到了前端的甜头,于是决定正式入坑,带着起初“前端能让页面好看”这般粗浅好笑的见识,打开新世界,一步步丰富自身。终于在这次春招中取得了一些小成果: 网易雷火三轮技术+HR,拿到 offer。 字节跳动教育业务三轮技术+HR,拿到 offer。 美团两轮技术,leader 给了口头 offer。 阿里淘系目前三面结束,被大 leader 全方位调教,拿到 offer 腾讯 PCG 到第四面,战线很长,后续没有继续面腾讯,淘系 offer 拿到后就推掉了这里。 说实话,你可能不知道花一个月时间拿到 4 个大厂 offer 是什么体验,我们一般都管这种人叫“offer 收割机”。 在这里分享下面经,附带他的简要回答和思考。对于基础问题,大家可以查漏补缺,建议收藏;对于场景或者高层思考型问题,大家参考即可,这些都是面试官根据自己部门或每个人的履历定制的。轮次越多,问题也就越偏向高层,需要大家更多的总结思考,找到平衡,甚至再生产。 点击文章底部**「阅读原文」,即可查看他的个人主页。以下是他的整理,篇幅较长,建议大家收藏**,方便复习 👇 网易雷火三轮技术+HR 一面 一面一般都是基础,在回答问题的基础上,最好能主动发散广度深度,面试官印象会很好。 介绍下自己并聊聊项目。 这个因人而异,要大方得体,讲出重点。主要围绕项目是什么,为何要做这个项目,解决了什么痛点,你在其中负责了什么工作,遇到并解决了什么问题,如何和不同模块合作,把控了多少架构。后两点需要一定思考和积累,把前面的讲清楚能满足一些面试官,但是大厂面试官常常会希望你说一些架构和整体方面的理解,是加分项。 如何用 await 和 async 写一个睡眠函数? function sleep(time){ return new Promise(function(resolve,reject){ setTimeout(()=>resolve('over'),time); }); } async function run(time){ let result = await sleep(time); console.log(result); } run(3000);复制代码 说说 inline 元素和 inline-block 元素的区别。 CSS 基础题,我从布局方面不换行和尺寸方面 inline 设置宽高无效,inline-block 可以来讲,还发散了一些 CSS 元素体系讲了讲。 inline 元素的 margin 有用吗? 是一个很刁钻的切入口,大家常常忽略对 inline 元素的研究,还好我平时比较喜欢捣鼓 CSS,其实再默认水平方向的文档下,设定水平方向 margin 是有效的,垂直方向无效。 讲讲 html 如何添加事件监听,事件处理有哪些阶段? 添加事件监听很简单,document....

plainify

从三本到985再到微软,他做了这些

对大多数人来说,在即将到达大学终点的时候通常会出现两条路,一条是步入社会就业,另一条是踏入高校读研深造。 往年,研究生复试和春招基本是同时进行的,这也就导致考研结束后很多人觉得自己没考好就直接放弃了复试。今年由于疫情的原因很多学校的复试都推迟到了 4 月底 5 月初,这就让很多 2、3 月开始工作的人,又多了一次选择的机会。 其实每年的这个时候都会有很多人讨论究竟是读研好还是工作好,不过毕竟没有人可以同时涉足两条道路,所以选择就变得格外重要。毕业之后我选择读研这条路,我的朋友寒食君也曾和我交流过并写了一篇文章《保研之路:从双非到南大》,现在很难确定这个决定对我来说是否正确,对其他人也同样如此。我们需要全方面的考量自己,从性格、抗压能力、未来期望、家庭条件等多个方面去考虑。 今天写这篇文章,不是为了告诉大家如何去选,而是想介绍一个我在读研期间认识的一个人,他的经历让我有些惊讶,完全可以拿去当考研成功的案例,这里给大家做选择时提供一些参考。他是我的舍友,本科来自于烟台大学材料科学工程中韩合作。高考时遭遇滑铁卢无奈去了这个三本,后来跨考考研时逆袭到南京大学读软件工程专业,读研时开始自学 Java,在这次的春招实习中斩获了网易、腾讯和微软的 Offer,最后选择了微软。从三本到 985 读研,再到斩获数个大厂 Offer ,这样的人,实在是少有。 最近一直有更新面经系列,本来也想记录下他的面试过程的,但是一想到他这励志的经历,便想请他谈谈自己这几年的心路历程,留下一点文字,给正在看文章的人一些指引和参考。下面我将会采用 Q&A 形式记录一些重要的内容。 为什么选择考研? 因为我本科是中韩合办的材料专业,所以专业课是由韩国语教授的。又因为我韩语不行,所以专业课都听不懂,说实话对我来说毕业都挺困难的。最简单的原因就是找不到工作,得想办法混个饭吃。放在面前的选择有三个,一是去韩企。我不会韩语,所以去不了。二是考公务员,我不知道你们了解山东不,在山东公务员首先很难考,其次像我这种不会喝酒的感觉也没啥前途。三就是考研了,也算是个没有办法的办法? 为什么考研选择了南京大学,而且还是跨考软件工程? 我高考考了两年,最后压本科线上的这个专业。本科挂了一万个科,在本科其实有想过修软件工程的双专业,也不是没报名,可惜第一天上课就和高数补考撞了。所以我就放弃了双专业(其实是因为懒得去了),去了补考(也没补过,最后重修了)。考研考了两年,第一年考南航差一分上线(吃鸡太好玩了,而且上线也不一定能录取),看到现在你肯定觉得我在装逼。其实我说这些是想表达,你想学习其实不一定来不及。第一年考研结束后,切实感受到了生活压力(同学大四回家生孩子了,导致没顺利毕业,爸妈帮他看孩子他也不好意思要钱,只能在我租的房子里睡沙发)。也好好想了想自己想要什么,所以决定好好冲个猛的,猛的冲不动就回家打工混吃等死。我认为我唯一比别人猛的方面,就是用搜索工具。我要散播第一个消费主义观点:**扔了百度,快想想办法用谷歌吧。**然后说几个关于考研择校的观点,不一定对,抛砖引玉: 招人越多的越好,这样如果你初试分足够高,复试就会特别稳。不用担心会因为奇奇怪怪的事情把你黑掉。而且招人足够多,分数线的波动就不会特别大。招三个人,有两个猛男一个关系户你考第三不也无能为力嘛。 如果你想考好学校,出身又很垃圾,那就直接冲猛的,在你能力范围内越猛的越好。这样可以一定意义上避免学历歧视,因为在好学校看来你们学历都挺垃圾的。(这是我的个人看法) 现在每个学校基本都能搞得到历年真题,尽量选变化不大的。学校出题变化大,对于猛男来说没啥,但是我们小弱鸡不能拿二十几岁的一年时光来赌这个。 想要完成以上的筛选工作困难并不大,特别是在你搜索工具用的得心应手的情况下。南大软院在我考研那年来看性价比是特别高的。你可以试着问问你的亲戚朋友,如果不在江苏省内的,可能很多人都不知道南大是个什么级别的学校,说不定你说南大很多人都以为是南开大学。但是这又是个极好的学校,所以很适合捡漏。又因为考英二数二(对高考英语 80 分且四级没过的我比较友好),会导致调剂困难(大部分学校都是考英一数一的),有一部分人就会因此不敢报名。而我的打算就是考不上就回家打工嘛,我也没想调剂,所以比较适合我。确定南大之后就是计算机院和软院之间的选择了,南大计算机院有国重,用屁股想想就知道对科研要求高,我啥也不会还跨考,本科也不好也没啥科研能力,别人咋也不可能要我。经过一通排除,我就选择南大的软工(当时在考研群里看了几个考人工智能院的大佬,第一届参考书都整不明白就敢冲,瑞思拜)。 然后是我考研的一点小心得。我太讨厌我家乡的生活了,导致我有无穷的动力来压迫我自己好好学习。考研第二年,真的是拼了命在学,不然像我这种啥也不会的不努力想考上南大肯定是不可能的。我要在这里散播我的第二个消费主义观点,**能花钱省时间的,价格不是太离谱就别犹豫。**跨考相较于不跨考的人来说,你的时间肯定是更宝贵的。保证时间,一是需要延长学习时间,二就是要在单位时间内学多一点。我完成这两点的方式如下: 建立起学习的工作流。 通过番茄钟来保证单位时间的效率,也可以有效统计每天的学习时间。 使用 anki 和思维导图来进行知识的复习,保证你学完的东西不会白学。 花钱让自己学习的效率更高。(别人售卖的,声誉良好的课和资料一定是有原因的,他至少花费了课程数倍的时间来沉淀知识,这也是我觉得为啥听话的孩子普遍吃亏少发展好的原因) 但是我认为学了两年是最重要的一点,说到底就是磨出来的。当然我也吃了一些亏,我经常会纠结哪个课最好,然后对比很久。方法总是第二步,开始学习才是最重要的第一步。找到一个差不多的尽快开始,会比花时间在比较上好很多。 你本科是材料专业的,考研时才接触的软件工程,现在研一也快结束了,有什么收获吗? 从一个啥也不会的小菜鸡到能写出来点能动弹的东西,还是挺有成就感的。 一个好的环境很重要,我能有这些大公司的面试机会就是吃了南京大学的红利。而我研一能有这些进步,主要在于身边有太多优秀的人。说实话第一次上课我是挺震惊的,虽然没有很多人在听课,但是所有人都在学自己的东西。这个公众号的主人也给了我很大帮助,我刚上学真是一头雾水啥也不懂。没他指路现在估计我还在慌着面试呢。披头士几个人都猛,但他们肯定不能都是天才吧。持续训练,刻意练习,才是我们这些笨逼的归宿。虽然现在我在他们之间还是最菜的,但是比较来看,说刚开学的时候我和他的编程能力差一百个我是不过分的,但现在估计也就差几个我了。 这次春招,你面试了哪些公司?最终选择了哪家呢? 面了一万个公司。你能想到的说的出名字的说不出名字的基本都面了,阿里、腾讯、头条、美团、网易、微软等等等等等等等。拿到 offer 的就只有微软、腾讯和网易,没拿到的就是都挂了。这其实还是一个笨逼多锻炼的故事,多试试总有运气好的时候吧。而且面试官的问题都是类似的,有一次我上午面网易,下午面腾讯,问的问题几乎一模一样。只要你在面试之间多总结,总能磨进去。最后还是选择了巨硬,第一是因为从小就想去巨硬,第二是因为比尔盖茨是我的爱豆,第三就是因为身体不太好,想养老发自内心。 可以简单说下,面试这些公司的过程吗? 大伙开始投阿里提前批的时候,我很慌,不敢投。导致错过了很多锻炼面试的机会,因为最开始是不进系统的。你一个部门挂了其实就只是那一个部门有你的记录,建议大伙还是阿里提前批多锻炼。小公司练手是个美好的想法,但是不切实际。为啥小公司是小公司,他们效率真的不太高,像有的同学阿里、腾讯或者头条都拿到 offer 了小公司还没有开始面试。 最开始面试肯定是慌得一逼,话都说不顺溜。面多了感觉其实还是在于多吹,你吹得面试官和你都开心,这次面试基本就没啥问题。下面说一些我的经验,不一定对,毕竟还是挂了很多面试。 别人问你一个问题你最好把你知道的都说出来。如果我当时遇到了这个问题,我就会把我是咋解决的过程说出来。 代码题需要疯狂判断边界条件。写之前就要和面试官沟通时间复杂度和空间复杂度,说不定面试官心情好会给你点提示。会写英文注释就用英文注释装逼。 最后问问面试官对你的建议,过来人说话还是好使的。 把面试官对你项目的质疑,提炼出来,下次在详细介绍项目的时候把它变成你对你的项目的思考。 为什么会选择微软,你觉得微软相较于其他几家公司,更吸引你的地方在哪呢? 前面回复啦~...

plainify

刚完一波蚂蚁金服的面试后,他说他累了

这是「跟我来面试」系列的第二篇,被面试人是我隔壁宿舍的好友,近期刚刚结束了蚂蚁金服的三轮技术面试,面完之后他跟我说很累,直言不想再体验了。 因为学院的安排,我们被要求暑期实习,近期也有各种内推信息发在群里,和大多数人边面试边复习不同,我的这位好友在我们疯狂投简历的时候就一直踏踏实实准备,因为我们会在自己的小群里分享自己的面试经过,他就一直潜水,直到有一天突然告诉我们蚂蚁金服的 hr 说他通过了我们才知道他已经成功上岸了。这种人,我们一般只能用五个字来形容:闷声发大财。 他的面试经历我仔细看了看,一面重点在基础知识的考查,二面重点在项目以及对框架的使用与理解上,三面压力面,是很熟悉的套路,考察的知识点也是经常问到的,具有一定的参考价值,接下来我们就来看看他的这几轮面试经历吧。 一面 笔试题很简单,多线程循环打印 1-100 奇偶数 你觉得项目中用了 MQ 给你带了什么好处,设计初衷是什么?会带来什么缺点嘛?(项目针对性比较强,不细说) 在网页键入 taobao.com,到返回一个页面,这期间都发生了什么? 你说到了 session 和 cookie,这两者有什么区别,应用场景是啥? 返回界面的文字,图片,链接,你觉得是从哪里来的,或者说储存在哪里? 描述一下 TCP 三次握手,这期间可以携带数据吗?携带了数据会造成什么后果? 描述一下四次分手,第二次和第三次中间处于何种状态? 说一下 object 类的所有方法以及他们的功能(真的是所有:clone,notify/all,finalize,wait,hashcode,equals,tostring,getclass) 抽象类和接口有什么区别?说一下你的个人理解。 详细说一下 final 关键字,修饰变量,方法,类都有什么不同?能想到什么具体应用场景吗? 说一下 equals 方法,hashmap 的底层,跟 hashtable,concurrentHashMap 都什么区别 静态分派和动态分派的区别?具体应用场景? 1.8concurrentHashMap 有什么变化,优化的意义在哪? hashmap 除了结点数大于 8,还有什么情况会树化(这个我没想出来,也可能是我没听清楚) hashcode 方法有什么特点?hashset 的底层是如何实现的?为什么用 hashmap? 说说 JVM 内存结构(这里要问清楚是 JMM 还是运行时常量池) 你刚说 1.8 后方法区移动到内存中变成元空间,为什么要移过去呢? 那为什么常量池没有移动到内存,而是转移到堆了呢? 最后一个问题,说一下线程池的饱和策略 因为项目中使用到了 MQ,所以就顺便问了下,好在并没有提问太过深入的东西,随后问题几乎每个都是高频考点,2、4、5 主要考察计算机网络中的通信过程,例如三次握手/四次挥手,7-14 考察 Java 基础,随后就是和 JVM 以及多线程有关的问题了。有需要的小伙伴可以参考这个进行针对性的复习。 二面 从项目启动到现在,介绍一下你的工作以及遇到的难点,怎么解决的? 讲一下微服务架构都有哪些模块?他们是怎么一起工作的? 让你实现一个 eureka,你会怎么实现? 用户认证,为什么要用 JWT,而没用 session-cookie,应用场景?优劣?加密用的是什么算法? 为什么使用 rabbitMQ,没用别的 mq? 说一说你项目应用了什么设计模式?适配器模式什么应用场景? 让你实现 AOP,你怎么实现? spring 事务有了解吗?是如何传播的?在你项目里的实际业务中是如何传播的? 例如有 ABC 三个事务,分别原子性,整体也原子性,A 事务出错回滚,整体事务也会回滚,你会怎么设计呢? ZooKeeper 有了解吗?redis 和 Mencache 的选型问题?...

plainify

如何一步步 get 大厂前端 offer,你也许可以参考这份成长经历。

之前在《前端菜鸟的阿里实习百日之旅》一文中,我的好友「承和」分享了一些作为前端开发实习生的感悟,文章发出后,很多人在后台询问能不能谈谈前端的学习路径,以及作为一个萌新如何拿到大厂的前端 offer。的确,秋招已过去大半,下一波待就业的应届生们也可以开始考虑实习和春招了,为此,本文以 Q&A 形式邀请了他来讲述他是如何一步步 get 大厂的前端 offer,希望他的成长经历可以为正在准备的人带来一些启发。 Q:初来乍到,先做个简单的自我介绍吧 「01 二进制」的读者,你们好,我是承和,目前是一名计算机专业的研三学生,就读于杭州电子科技大学,本科就读于马爸爸的母校,也就是杭州师范大学。在此次秋招中,很幸运的拿到了阿里,字节,拼多多等公司的 Offer,希望我的成长经历能对你们有所启发。 Q:能不能简单说说你这些年的前端学习经历呢? 说起前端,其实我最早接触的是 iOS 客户端开发。在我大二的时候,苹果发布了最新的开发语言 Swift,恰巧在当时,我在编程上的启蒙老师所在的实验室正在招新,听说加入还会分配 MacBook,于是我马上联系了他。就这样我顺理成章的白嫖到了一台 MacBook Air 笔记本,而当时分配到的任务是开发一款 App,也正是从这个任务开始,我走上了软件开发这条不归路。 后来实验室为了减少开发和维护的成本,导师让我学习有关跨平台应用开发技术,也正是从那时起,我逐渐接触到前端开发。在学习过程中,我发现,相对于客户端,前端开发有更广的发展空间,再加上当时客户端的就业形势是**“49 年入国军”**,因此,毅然决然地选择了前端开发。 再后来,读研期间,学习了点深度学习的相关知识,发现这玩意儿极其烧脑,加上国内学术圈又相当浮躁,多数研究生基本都是为了发论文而发论文,很少有能实际落地应用到工程之中的。加之现在算法岗 hc 非常少,大厂的算法岗几乎是神仙打架,想着肯定是没办法靠算法吃饭了,所以又重新投入到了前端的怀抱中,从 0 开始学起,好好沉淀自己的前端技术。 Q:你这也算是有了几年开发经验的老鸟了,要不简单谈谈你是如何学习前端技术的? 我个人认为,学习编程就和练武一样,学习任何一门技术都是修炼内功和学习招式的过程。内功指的就是基础,就前端领域而言,也就是我们常说的前端三板斧:HTML、CSS 和 JS。我们可以根据网上较流行的知识图谱或者一个面试宝典,进行初步的学习。若想要深刻了解的话,便要通过阅读大量相关的专业书籍来加强理解(后面我也会推荐一些,此处没有广告,可放心食用)。 招式指的便是各种前端框架,这些框架帮助我们封装了底层对于 dom 的操作等,使我们能够专注于业务代码的编写。现如今国内 Vue 和 React 大行其道,但是作为 JS 革命性的框架之一,jQuery 我们自然不能忘记,该框架非常适合前端入门者进行学习。 对于框架的学习大致可以分为以下 3 个步骤 👇: 第一步,学会**招式的使用,**你要学会怎么用它,知道这个框架究竟解决了哪些问题,这些资料最好的获取方式便是官网,例如 React 官网,便清楚的说明了 React 的用途,在开发中大多数遇到的问题也能在 React 官网上找到解决方法。 第二步便是用框架做一个项目,在编写项目的过程中,你会遇到很多"稀奇古怪"的问题,通过解决这些问题,可以加深你对框架的理解。 第三步要做到知其然知其所以然,在熟练掌握框架的使用后,去学习它的源码,去看一些源码解析或者大佬的直播课,最好是自己手动实现一个类似于 React 的 diff 算法。 Q:在学习的过程中,有什么需要注意的呢? 在学习过程中你会接触到非常多的知识点,难免会产生焦虑,这时候要做的就是定义一个边界,做到对另一个知识点的探索适可而止。 例如,在利用 React 脚手架的开发过程当中,我们会接触到 Webpack,我们可以先用脚手架中 Webpack 默认配置来进行项目开发,去了解 Webpack 的功能和大致打包流程,来做到对 Webpack 的整体认识,在后续进行项目优化时,可以尝试对默认配置进行修改,通过熟读 Webpack 官网,了解针对 Webpack,我们有哪些优化手段,并且付诸于实践,在工程当中加深自己对于框架和工具的理解。...

plainify

搏一搏,单车变摩托,记录一下我的淘宝实习面试

楼主这段时间一直在找暑期实习,前几天刚结束了阿里巴巴淘系的 HR 面,现在在等通知,正好趁着这段空窗期整理回顾下前段时间的面试。 目前我是研一在读,投递的岗位是 Java 后端的暑期实习,我是在今年 2 月份开始准备实习的事情,虽然简历投递的很早,但是到面试已经是 3 月的事情了。接下来说说我前期做的一些准备吧。 不知道为什么,今年好像很多公司都加入了笔试环节,这里就要求我们对一些算法题进行针对性的训练,这里推荐力扣和牛客的剑指 offer 系列,把那 70 多道题刷两遍,心里多少就会有点底了。其次就是对于知识点的针对性复习,这个过程就跟我们高三时的一轮复习一样,力求将知识点都过一遍,包括但不限于 Java 基础、数据库、计算机网络、操作系统、组成原理、框架源码、设计模式等。这些知识点可以根据网上其他人的面经针对性学习,也可以根据市面上流传的各种面试宝典针对性复习。这里我推荐一个仓库,我复习时的知识点都是按照这上面来的,https://github.com/Snailclimb/JavaGuide 下面的内容是我整理的面试题目。大家可以参考着复习。 提前交流 我是找的学长内推的,刚开始有一次交流,也不知道算不算一面,主要问了下面的东西: 说一下 cas,主要应用在哪 说一下 Java 中的锁,自旋锁会升级成什么? 项目中的限流是怎么做的 说一下 Java 是如何加载一个类的? 什么是双亲委派模式? TCP 滑动窗口了解吗? 用的是什么数据库?说一下 mysql 的的事务隔离 InnoDB/MYINSAM 的区别和应用场景 介绍下 MYSQL 的索引 进程和线程的定义 进程调度算法有哪些? 说一下你对线程池的理解 用过什么模式(除了 JDK 以外。自己实现的 /除了单例模式外) 单例模式为什么要有两个 null 判断,一个不可以吗? 排序(归并排序 /堆排序/快排) 说一下你对 Spring 的理解,AOP 的原理是什么? 有什么想问面试官的 因为是提前交流,感觉就是摸一下底,问的知识点都很基础,只不过因为是刚开始复习,所以有些知识点还不是很清楚,后来交流的学长也给了一些建议和指导。 一面 然后就是正式的一面了,一面比较细致,上来先做了一道算法题,题目很简单,剑指 offer 里的原题,顺时针打印矩阵,https://leetcode-cn.com/problems/shun-shi-zhen-da-yin-ju-zhen-lcof/ 还有道多线程编程题,大致意思就是提供一个多线程的工具类,打印数组。 下面是问题的记录: 自我介绍、说一下最近在做什么事? 可以跟我介绍下卷积神经网络吗? 可以说一下逻辑回归是什么吗? 你觉得反向传播和动态规划之间有什么样的联系吗? 我看你的微信公众号叫「01 二进制」,那你能说一下为什么计算机会使用二进制,而我们人类会使用 10 进制呢? 计算机是怎么做加法的?那如何用加法代替减法? 使用过 Linux 吗?可以说下常用的 Linux 命令吗? 用什么命令可以查询文本中的文字?用什么命令可以查询磁盘存储的容量? Vim 使用过吗?可以说下有哪些快捷键吗? 我看你的博客里有一篇博客写到了区块链,你可以说下去中心化对我们的生活有什么影响吗?你觉得区块链有价值吗? 在区块链的世界中,那些数据怎么样会变得有效?(广播机制、共识机制) 类比打电话,两个系统的通信我们可以采用哪些方式?(我说了 http) 说一下 HTTP 和 HTTPS 的区别 HTTPS 中用了什么加密方式,在什么阶段体现的? 分布式的 CAP 理论了解过吗? 你了解的一些集群有哪些选举方式? 公众号里写了很多和 python 有关的文章,那你觉得这两个语言使用起来有什么差异? 最近有看什么书吗? HashMap 为什么线程不安全?是否模拟过不安全的场景? 说一下 Java 的值传递和引用传递 SpringBoot 和 SpringMVC 的区别 说一下 Spring 中 bean 的加载过程 JVM 的垃圾回收器了解吗?垃圾回收算法有哪些?JDK8 默认的垃圾回收器是什么? 有什么想跟我沟通的吗? 总的来说这一次的面试体验不是很好,因为那个时候刚大致过完一遍知识点,脑袋里的知识都混在一起了,而且偏偏问的东西也很杂,就连公众号里的文章他也看了,这点是我没想到的。不过面试官很 nice,一直都在和我探讨这些问题,气氛也不是很紧张,之后几天就迎来了二面。...

plainify

未雨绸缪,小米前端实习面经

前一篇文章中说到了我准备开一个新系列用于整理周围人面试的一些经历,本文是她面试小米的一份经历,也是这个系列的第一篇文章,投稿人是我同校同学,虽然本科就是一个学校的,但直到研究生才认识,之所以说她未雨绸缪是因为在我还没开始投实习简历的时候她就已经拿到了小米的实习 offer 了。作为一个米粉,我其实挺羡慕的,因为小米一直是我很向往的公司。 她是在 boss 直聘上投的小米,base 南京,因为是部门直招,看完了简历就约了面试,速度还是很快的。据她说虽然只有一轮面试,但是持续了将近一个小时,面试官还是比较随意的,问的问题都很基础,以下是她的面试记录。 一开始自然是老生常谈的自我介绍,一个好的自我介绍应该包含这几点要素: 用简单的话说清楚自己主要的技术栈于擅长的领域; 把重点放在自己在行的地方以及自己的优势之处; 重点突出自己的能力比如自己的定位的 bug 的能力特别厉害; 好的自我介绍会让面试官对你产生兴趣,毕竟换做你是面试官,一定也希望面试者不是客套地说说自己喜欢编程、平时花了很多时间来学习、自己的兴趣爱好是打球吧。 接下来就是一些基础方面的问题了,按照类别进行了整理。 css/js/html css 块元素和行内元素 css 如何实现水平居中? position 有哪四个属性?谈一谈你的理解 谈一谈你对盒模型的理解 flex 属性以及使用的一些问题 什么是 rem 布局? js 原型链是什么? js 闭包以及相关的使用 es6 新增了什么 基本数据类型(es6 新增) var 和 let 区别 什么是事件委托机制 es6 的 promise 以及回调函数的使用 es7 的 async 和 await LocalStorage 和 sessionStorage 区别以及 API vue MVVM 怎么理解 vue-router 说一下 vue 和 jQuery 的区别,哪个好 向面试官问问题 实习生培养方式 实习期间的主要工作 最后 问题基本都回答出来了,面试官可能也比较满意,主要运气比较好吧,面试官说没什么问题的应该只有这一轮技术面。...

plainify

计算机相关专业实习指北

相信很多人都知道,第一份实习/工作对于日后的发展尤其重要,在职场上接触的第一个 leader,也会对未来的工作思维、工作态度产生重要的影响。因此第一份实习,可不能随便找个兼职糊弄一下就过去了。 那么在选择企业实习的时候,我们应该做些什么呢?事实上,博主自己也是最近才找到实习,没有办法以长远的眼光来判断这个实习究竟对自己未来的作用有多大,所以这里仅仅是谈一下我自己所做的一些准备,以及我自己在找实习过程中的感悟和想法。 明确你所处的阶段 明确你所处的阶段是指,先看看你现在到底是要找暑期实习还是秋招。相信很多要找实习/工作的同学都听说过**“金三银四”、“金九银十”**这样的词,也有很多人疑惑春招、秋招、暑期实习到底是什么?什么时候开始?这里有一张时间表 👇 实习 实习一般分成两种:日常实习和暑期实习。 日常实习:日常实习是任何时候都可以找的,通常是根据具体部门的需求,由公司 HR、部门主管或者部门员工发布招聘消息,相对较为零散也比较灵活。 暑期实习:很多公司,特别是大公司(如 BAT 等大厂),都会组织专项的暑期实习生招聘活动。一方面是针对在校学生的情况(很多学生只有暑期才有假期,或者导师暑假才放人),另一方面就是为了秋季校招(大规模招聘)吸引人才。暑期实习具有很大的意义,对学生来说,最直接的好处就是转正机会。暑期实习,一般 6 月底左右实习入职(也可以根据自己的时间,提前入职),一般 8 月底或 9 月份会有专项暑期实习答辩,根据综合表现,答辩通过后就可以基本结束秋招了。 因为大多数人是没多少时间日常实习的,所以 3 ~ 5 月找一个暑期实习是一个非常好的丰富简历的机会。 秋招 秋招就是正式开始找工作了,一般也分为两种:提前批和正式批。 秋招提前批:时间是6 ~ 8 月,大多以内推为主,就和保研的夏令营/预推免一样,这个时间段的参与秋招提前批的大佬特别多,同时岗位 hc 并不多(因为企业要考虑正式批的情况,会控制招聘人数),所以可以把这段时间简单理解为神仙打架期。 秋招正式批:时间是9 ~ 11 月,这个阶段就是所谓的**“金九银十”**了,一般到这个时候就很考验心态了,因为如果到 9 月份或 10 月份了,你手里还没有 Offer,再看看身边已经拿到 Offer 的同学,一定化身成柠檬精 🍋。不过这个时候心态千万别崩,继续投继续干,广撒网才能多捕鱼。 因为楼主还没有经历到秋招,所以下面的内容都是围绕着找到一份实习来说的。 岗位选择 岗位选择其实很好理解,会什么就去找什么岗位呗。但是行业发展到现在,单会一门技术肯定是没办法闯荡江湖的。而且还有很多人在找工作之前其实什么都不会,比如我就曾在知乎上刷到下面这个问题。 于是这就回到了我们一开始学习编程时的一个困境了。我究竟应该选什么方向? 其实和互联网相关的岗位大类来看并不多,也就开发、算法、测试、产品等。分小类来看的话可能才会有些难以选择。开发里有前端、后端、客户端等,算法有数据岗、视觉岗等等。那么我们选择的时候就可以从下面三个方向去考虑了: 你会做这个吗? 做这个钱多吗? 你喜欢做这个吗? 可能会有人说容不容易找到工作也是另一个值得考虑的问题。是的,这的确是一个值得考虑的点,但是我觉得并不是最重要的,因为如果你真心喜欢做一个方向的话,你就会不断提升自己的能力,有了能力还担心找不到工作吗?如果因为某个岗位容易找到工作你就去做,那就不是你选择工作,而是工作选择你了。 不过如果还是有人想知道什么岗位容易找到工组的话,博主这里看到了某大厂一份 2020 年实习生的录用比,供大家参考。 实习地点选择 在投简历前,我们除了需要选择实习岗位外,我们还要选好实习地点,如果就在本地实习那肯定会方便很多,如果要去外地实习的话,需要考虑的事情就会很多了。...