小公司卧薪尝胆三年,意外拿到美团offer,BAT离你其实不远!
我叫王小闰(花名),非科班出身,野生前端从业者,在小公司打杂三年后,意外地拿到了美团的offer,成功跳槽到了美团外卖事业部。
接下来,正文从这儿开始~
这几年我经历了什么
3年前,我高中毕业,进了编程培训班,后来自修课程,学的是计算机科学与技术专业,之后顺利拿到了北航的学历证书。
培训班毕业出来之后,我来到了杭州。在杭州这个充满电商气息的地方,每个人都对自己的未来充满了希望,《猎场》里的郑秋冬如此,我也一样。
虽然我的家庭条件不是很差,但我还是希望通过自己的努力,实现当初的梦想,出任CTO,甚至财务自由。
来到杭州,我更加明白,要想在杭州出人头地,一定要在别人看不见的地方更加努力才行。很快,我面试上了一家杭州的创业公司,前端工程师岗位,做19楼本地生活平台项目,月薪5K,双休。
前几年的野蛮生长
刚开始的时候,我们公司里的PHP大佬让我先做专题页面的切图,以及其他页面的前端制作,还有公司官网需要的js交互功能的实现。除此之外,我们老板还给了我一本关于PHP开发笔记的书籍,让我研究,因为我们公司的网站后端用的框架是ThinkPHP。
那时候,我前端页面切完之后,就会捧着PHP开发笔记研究它的面向过程编程,时不时地请教大佬一些问题。那段时间感觉自己成长了许多,从前端页面到后端套模板,再到一些网站运营、编辑的事情,锻炼了自己的能力。有时候周六日,我还会在猪八戒网上接一些私活儿,外包项目啥的,挣点外快,顺便夯实下自己的业务知识,业精于勤。
下班了,我总是最后一个走
还记得我来到公司一个星期以后,我慢慢意识到周边的同事们,每天到了下班点都没有走的意思。
当时我司一个从北京回来的前端,用他的职场经验告诉我,下班晚走半小时,是一种工作态度。尤其是作为职场新人,要想在公司有所发展,技术有所提升,就必须付出比别人更多的努力。于是,在那天过后,我慢慢地成为了我们公司来的最早、走的最晚的员工。那段时间,也是我技术提升最快的日子,而这些细节,我们老板都看在眼里。时间过的很快,转眼已来杭第二年。付出总有收获,一年之后的我顺利地涨薪到了8K。
在小公司里呆久了,你会发现公司业务发展的瓶颈,可能是当时自己的格局太小,觉得自己遇到了技术瓶颈,职位晋升缓慢困难等等。
一颗进大厂的心
当时在小公司打杂的我,无时无刻不在羡慕着大佬的大厂光环。由于彼时,美团发展迅猛,我对之早已垂涎已久。
听朋友说,在美团做前端开发工程师,简直是一件幸福的事儿。单从硬件上来说,标配的MacBook Pro 15,人体工程椅,27英寸外接显示器,单凭这三件套,足以让人艳羡。
接着从软件方面来讲,只要你能为你做的事情负责到底,你似乎可以做你想做的任何事情。比如用polymer做一套UI框架,比如前两天刚用flux+react+express做了美团工程师网站,而且主站(美团团购)正打算用react开发一些组件替换现在的解决方案。
美团前端是“大前端”,全栈似乎在这里并不是很稀奇的事情。
前辈都很nice,虚心学习会学到很多东西。而且美团有比较好的分享培训机制,人人都是讲师,还有美团图书馆,似乎主流的技术书在上面都能找到,现在收藏近4000本。内部办公基本都云端化。你可以申请美团云主机去做你想做的事情。
听着朋友的描述,那段时间进大厂成了我所有的幻想,以及梦魇。
当时我是有多拼
我深知,大厂最看中的就是基础知识扎实与否。为了进大厂,我拼了。从亚马逊买了本经典的《JavaScript高级程序设计》,俗名红宝书。每天背着我的双肩背包,在上下班的地铁里,一页一页地拜读着JS高程,白天去了公司也看,晚上下了班回去也钻研。
就这样,反反复复来来回回把这本书翻了三遍,期间也接触了一些流行的前端框架和构建工具。终于,我在看到美团的社招信息后,勇敢地迈出了第一步。
参加美团初试
当时参加的是美团点评部门的面试,部门前端技术栈是vue,后端用的node。一面通过后,等了两个小时面试二面,然后通知我回去等消息,一般这样就是挂掉了,毫无疑问。后来才知道美团是一次性全部面完的。所以以后有去参加美团面试的童鞋,最好做好面试四个小时的打算。
先来聊聊一面吧~
一面
1.简单的自我介绍,与大体的了解我
一面面试官非常不错,先问了下几个项目和用到的技术,会先对我懂的东西做一个大体的了解,比如webpack的单页面的多页面切换,webpack的按需加载,一些webpack的配置有哪些,问了有没有看vue源码,我说了一个vue的watch,大体问了问我框架方面的东西,发现我对框架并不是很熟练,安慰我说没有关系。
2.promise的原理
这个面试官最让人欣赏的就是不会去问你不了解的东西,一开始问了我promise,发现我用的并不是很多,就很自然的说没事,换一种方法问你,好和蔼啊。 然后就让我用原生js写一个回调函数,其实就是问promise的原理了,js写一个。
3.this指向
这个是面试官手写了一道变态长以及绕的this指向题,可以自行百度js this指向面试题,看几道没有啥问题,需要关注的是其中也考了,argument,和apply(null)。
其他的忘了,以后想起来再写吧 !
二面
二面问的显然比一面深入很多:
1.自我介绍,问项目
针对项目问了不少,当时有一个支付行为的项目,于是问了很多安全方面的问题,蒙蒙的,完全不知道。第一个就很失败了。然后问了其他的项目,问了websocket。
2.node的EventEmitter用js实现出来
写出来了,但是可以看出来代码写的不规范,学长面试官表示看起来很乱。不过大约算是可以的,指出了几个问题,让我进行修改。(之后完善)
3.虚拟dom
其实vue中就有jsx,react的特点之一有jsx,虚拟dom和代码优化有点关系。
先说下正常对dom的操作,在浏览器中分为渲染引擎和js引擎,现在浏览器内核一般都是渲染引擎(生成渲染树),因为js引擎越来越独立了(所谓的v8引擎?)
然而你在js中获取dom元素的时候你必须要通过渲染引擎,这样两个线程之间的数据交换自然会很慢。所以在前端优化中总是要考虑减少dom操作这一项。包括获取dom元素变量储存起来。
jsx是把dom元素变成了储存在内存中的数据结构。js很快,操作dom也很快。不过也存在缺点,目前的理解就这么点了。
4.路由的实现原理
5.node文件流,java的映射机制(记不太清楚)?
6.数组方法map和reducer区别?
7.进程与线程的区别
8.树遍历
9.问了个算法
最终,第一次大厂面试之旅,以失败告终。
走出大厦的我不甘心
后来,我开始狂刷前端面试题,为下一次进大厂作准备。就这样,我每天坚持早睡早起,定的凌晨四点半的闹钟,我相信,闹钟叫不醒沉睡的心灵,但梦想可以。正所谓,叫醒你的不是闹钟,而是梦想。虽然这句话俗气,但俗就俗点吧,我喜欢。一个心怀进大厂的人,行动是一种自发行为,而不是鞭策。
美团第二次面试,再次败北
在熬过无数个日日夜夜之后,我又一次去参加了美团的面试。本以为这次十拿九稳,可是结果还是败北了。
我不甘心,我始终认为,成功就是,你站起来比跌倒的次数多那么一次。
吸取大佬经验,提升圈内影响力
于是,我在大佬的影响下,开始写技术文章,发表于各大博客平台,开始运营公众号,写点自己的职场感悟,提升自己在圈内的影响力。平时,跑跑步锻炼身体,让自己有个强健的体魄。当一个人没有退路时,往哪走都是前进的方向。就算前方风雨交加,我还是义无反顾,因为,走泥泞的路,才能留下清晰的脚印。
再次奔赴美团面试
事不过三,在我从事前端开发的第三个年头里,我再一次毫不犹豫地参加了美团平台及酒旅事业群的面试。
这一次面试,我竟然......
未来继续低头前行
是的,现在我已经成功拿到了美团发来的offer,并顺利入职了美团外卖配送事业群,从此成为了一名光荣的美团外卖骑手,我司还给我配备了电动车。
这就是我入职美团的故事。
BATJ面试最新的资料以及进阶架构师的视频资料免费分享一波
有你所需的吗?学习方向完整的规划,提升自己是迫不及待的事情,你还在等待什么?
转发+转发+转发
关注我后台私信回复【java架构】领取获取往期Java高级架构资料、源码、笔记、视频。Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术
文章来自公众号:码农怪话