前端面经、吐个槽吧

2019-07-14 03:25:58 +08:00
 Ljf980

从 3 月份开始到现在,陆续面了有阿里、oppo、平安、腾讯、新浪、字节等加一些中小厂

因为感觉在公司达到一个瓶颈,自学不够顺利,方向定不下来,有点迷茫,不知怎么走的感觉,所以想去面大公司,提升一下视野

先说一下我面试前对公司以及薪资的要求
公司:
大厂、中厂(加班可接受,毕竟福利高,薪资高,可学东西多,自愿加班。比如我现在的公司,我回去没事干,一般都会选择呆在公司 10 点 /11 点,看技术博客,写笔记等等)
不去小厂(受够了加班到 9/10 点甚至更晚的创业热情)

薪资:
最初是年薪 30
后面降到 27
我的目前年薪是 22

然后大公司的套路,虽然大家隐约知道不好进,是因为算法等各种原因,但是不实际尝试一下,你还真不知道感受

最初阿里就倒在了在线测试,得了个 "B+" 评价好像·····[掩面···]
在线测评的面试题大家搜索一下就有了,我就不说了
大部分前端都希望通过 node 来提升自己的价值
我也是一样,一般都认为阿里的前端发展的最好,所以我还是很想去阿里的
奈何已经挂了,不能再面了

oppo 倒在 对 Vue 原理理解不够深,因为招的是高级

平安是最后一面,我年薪喊太高,谈薪都不给,回复不够优秀,想在看看其他候选人(猎头那边看到的评价)
其实众所周知平安对于跳槽的人来说提薪并不高,有也是个例

腾讯···面了很多腾讯系部门,好几个到最后一面挂了,原因就多了
算法不过关:面试技术部门,尤其 QQ 系,很多都是 C++出身的,出了 n 道算法题,我一个前端我能有什么办法···没事去刷刷 leetcode ?
纯算法我真不大会啊,比如问我?在一个 n 长度字符串中,求最长回文子串!!!我去 leetcode 看了,居然是中级难度,要不要这样啊,我只是一个前端,真的不刷 leetcode !!!
扪心自问不刷 leetcode 你拿到这道题你会做吗!!!另外我当时做这个题用的是暴力遍历~~~
现场 coding 实现不够优雅:给了电脑现场做,做出了面试题,然后和面试官一起优化写的代码···
知识细节不够:大公司碰到的问题小公司遇到的少,比如 localStorage 写不进去了怎么办等等极限问题,还有安全攻防类的,可以说是比较生冷的也是重要的知识
不会日志监控:之前没做过日志监控,面试评价说了这一点,无奈···
自己作死:因为自己最后一面吹自己的职业生涯规划,然而这个规划并不和公司的主营业务相关。我的规划是前端架构师,而公司是主做微信小程序
学习深度不够:和初面面试官聊的很好,然后面试官跟领导说到我对原理了解不深,领导直接说原理了解不深,说明学习深度不够,pass,见都不见我一面····
···
总会有一个理由适合你···

字节,初面小哥目测是个组员,问了几个问题都答了出来,后来出了两道代码题,做出了一道业务题,另外一道算法只做出一半,后面没过,猎头那边查看评价代码功底一般···其实挺不服气的
问问题的时候问了他们技术栈,主要是 react,这才是主要问题吧(我知道大厂对技术栈不在意,对 Vue 熟练,react 上手也不难,然而字节这个我真不服气,再说一遍)
猎头也说了好几个不错的腾讯系的也挂了一面,不知道字节在搞什么
补充一点,发现大厂还是 react 用的多····vue 虽然也用,但是主要还是 react 为主

新浪也是到了最后一面,总监问我接受加班 /996 吗?我对新浪不怎么感冒,之前进去也只是抱着拿个面试经验,所以很硬气的回复加班可以,6 就不接受了。
不出意料后面没下文了[手动狗头]
其实还谈到了薪资,然后我当然还是要的 27,但是新浪年终奖估计有 6/7/8 个月,这样算下来我的月薪就提升不多,所以我后面又提高了我的薪资期望,算下来有 30+了,他们更不肯招我了

中小公司比较容易进:面试题啥的都 ok,就是我薪资要的高,有些自己就不联系我了,后面我降低了要求,拿到了一家 27/年,但是我拒绝了,原因就不说了

在这个漫长过程中,慢慢的积累了一些不足
开始深挖底层,关注性能优化,了解日志监控
主要还是把时间花在熟悉 Vue 源码实现上
学习框架设计原理确实能帮助自己成长

目前我自己的状态应该是这样的:

3 年半纯前端工作经验

熟悉 HTML5+CSS3,能开发响应式的移动端和 PC 端网站
熟悉 Vue 原理,阅读过源码实现,能更好的解决 Vue 项目中遇到的问题
熟练使用 Vue 全家桶,能用来开发模块化、组件化的项目
熟悉 ES6 语法,能写出精简、可扩展代码
熟悉 Webpack、Gulp,能用来构建前端项目,实现工程化
熟悉 MVVM 和 MVC 原理
熟悉 Hybird App 混合开发模式
熟练 HTTP/HTTP2 (基本知识)
能使用 NodeJS 书写爬虫、开发小程序后端,PM2 部署发布
了解 Linux 基本操作,了解 Nginx 等 Web 服务器配置
了解 PWA 渐进式 Web App 开发
开发过 Web SDK,编写使用文档并负责解决使用中产生的问题

写了好多个管理系统都是用的 vue 全家桶,算是重度 vue 使用者了
也搞了两个 ssr 服务端渲染 vue+nuxt 实现
还写过几个轮子 图片压缩的,阿里云刷新 cdn 的,webpack 构建模版等等
https://github.com/QingshanLuoyue/tiny-imagemin
https://github.com/QingshanLuoyue/markdown-pdf-marked
https://github.com/QingshanLuoyue/aliyun-cdn-refresh
最近在研究日志监控

在公司主要做的:
主持前端技术分享,引导、鼓励组员分享各自的知识,说出自己的想法,加强各个组员的交流:交流才能使人进步,作为带头人我很骄傲
负责公司前端架构设计和内部工具开发:内部通用组件,通用工具,通用主题库、以及每周技术分享文章
参与需求评审、项目排期、架构设计、任务分配和编码:现在前端应该提前参与,提出自己的疑问和意见,保证产品少坑?
网站性能优化方案设计,加载速度优化:真正体现自己与菜鸟的不同?
推进前端工程化、自动化、模块化:这年头是个前端都要会了吧~~~

公司内部自己搞过 nginx 配置测试环境,基本上,前端这边的后台如果是 nodejs 的话,后端配置都是自己搞了,遇到坑也是自己摸索着去填
然后 jenkins 构建项目发布到目标机器,机器与机器间使用 ssh 的公钥秘钥免密使得 jenkins 构建完成后 scp 到测试环境机器
当然不止测试环境,线上环境也是自己来搞

我接触前端方向算多了
小程序、H5、PC/移动端响应式、混合 APP 开发、WebSDK 开发、node 都能在工作中胜任业务,但是有些不精通
主要还是以 H5、PC/移动端响应式 为主
现在也是要改变了,专注一个方向

自己搞了一个小程序,功能还比较简单
Koa2+mysql

最后想说:换个工作真不容易啊,目前还在苦苦寻找
想进个大厂就这么难···有哪位好心人帮我内推?

github:有兴趣来个 star ?
https://github.com/QingshanLuoyue

自己的博客:有错误请指正,有建议请留言
https://www.cnblogs.com/linjunfu/

最最后······如果我说的有地图炮、引战的等等会被你们喷的一些地方······当我没说,谢谢

4905 次点击
所在节点    程序员
73 条回复
q8164305
2019-07-14 12:31:42 +08:00
楼主是 985,211 么?
Ljf980
2019-07-14 12:58:50 +08:00
@q8164305 不是····初步沟通的时候,有些 hr/面试官会问这个,可能是看我简历不突出,但是工作经验够了,如果加个 985/211 就能给个面试机会?
Ljf980
2019-07-14 13:00:10 +08:00
@Mrun 算法里好些专有名词····神马动态规划啦、马拉车啦、剪枝啦
没接触过的表示大佬好厉害
Linxing
2019-07-14 18:34:28 +08:00
回文子串不难吧 要来流利说不 base 上海 可内推
zhenizhui
2019-07-14 20:34:44 +08:00
楼主,请教一下,你做的 vue 后台管理系统都是一个项目工程(整个 SPA )吗,有没有遇到那些管理系统要拆分好几个项目工程的?
mumofa
2019-07-14 21:34:03 +08:00
和楼主的经理很相似
我是今年 2 月开始准备跳槽的 大概 3 年经验吧 面到现在
我人是在广州,一开始是打算去深圳发展,投的都是大厂,面得最多得的还是 tx 有两个部门也是进到最后一面挂了,估计也是不够突出,有点平庸吧。。。
最后还是窝在广州。。。 看看明年能不能再战吧,楼主加油
xianxiaobo
2019-07-15 09:13:39 +08:00
感谢分享
bmy
2019-07-15 09:14:57 +08:00
@Ljf980 我也是在 V2EX 找的 英语会有要求的 不同公司要求不一样 很多都是能回邮件就行
wujie396
2019-07-15 09:20:17 +08:00
跟楼主类似。。。
不过还好我在北京,工作机会多一些。。。
中小厂建议不要去。我现在被套在一个曾经的中厂,来了 10 个月,拖欠半年工资。。。
Ljf980
2019-07-15 09:35:16 +08:00
@zhenizhui 目前是一整个 SPA,拆分的话也不难吧,把依赖包作为公共资源,然后设置多个入口。其实就是单页转多页,需要手动配置了。
Ljf980
2019-07-15 09:35:58 +08:00
@mumofa 算法刷一刷,我觉得能应付大多数原因了,大厂就是看中基础
Ljf980
2019-07-15 09:37:09 +08:00
@bmy 我面过 thoughtworks,挂了····
Ljf980
2019-07-15 09:38:06 +08:00
@Linxing 非常感谢🙏,不过我还是深圳呆习惯了
yuanfnadi
2019-07-15 09:40:00 +08:00
@Ljf980 还有一些问题需要解决。例如菜单如何渲染,多项目如何共享登录 /权限状态。
Ljf980
2019-07-15 09:40:17 +08:00
@wujie396 这么坑!!!我主要目标也是大厂,不过很多大厂刷了一遍,除非内推,不然现在都不能再面了。现在只能是看 tx 了!准备把算法补补,再战
Ljf980
2019-07-15 09:42:12 +08:00
@yuanfnadi 共享状态可以把 vuex 提取出来,或者搞一个 eventbus,然后每个子项目都引入就可以的
wujie396
2019-07-15 09:51:37 +08:00
@Ljf980 顺便提一下,楼主你博客里 new 的模拟实现还不太完善。实例化过程中还会根据构造函数的返回值是否为对象,来返回构造函数返回的对象,还是自己模拟创建的对象,jquery 原理的实现就用到这方面的知识。
这里推荐阿里冴羽大神的博客。共勉
https://github.com/mqyqingfeng/Blog/issues/13
zhenizhui
2019-07-15 09:58:20 +08:00
@Ljf980 #30 那如果是要拆成多个项目呢,按照模块来拆分为一个一个项目,然后最终部署可以弄成单个 SPA 或者多个 SPA,有点无从下手的感觉
bmy
2019-07-15 10:39:16 +08:00
@Ljf980 我第一家公司就在 thoughtworks:D
Ljf980
2019-07-15 10:44:11 +08:00
@wujie396 确实不完善,非常感谢提出指正,我修改下下~~~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/582776

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX