去年年底公司裁员了,作为23届的应届生,很不幸,我是其中一个。
从被裁到“上岸”,差不多过了4个月,本文复盘一下今年面试经历,以及这几个月我的向内探索。
面试经历
从准备、投简历、面试到定offer,这几个过程散落在4个月里。后面三个步骤主要是3月份的事情。
这次面试准备的过程分为5个阶段。
stage 1:算法和八股文
这个阶段从12月27号到2月7号(中间过年停了),主要做了两件事情
- 刷力扣
- 做八股Anki卡片。
==这个阶段出现挺多问题的==。算法题目一开始选错了,选了一个150题的,后面发现选力扣100就够了,如果还想加快算法的速度,甚至就基于这100个题目再做个精简。实际上的面试过程中,没有考力扣算法,而是一些场景算法题,比如级联组件的uncheck、数组重叠去重。
迷上了anki这个记忆软件,所以就想着造几个卡组用起来,但是事实是我做了卡片,但是其实没什么用,纯粹浪费时间,后面我也不想用anki背诵了。
这个过程其实没准备八股文,针对刷算法,我的经验是这样的:
下次面试只做100题,甚至50题- 不应该每次都重新刷题,而是直接写题解思路,或者看题解思路,是的,==需要建构一份经过自己内化的算法题解集合==。
stage 2:认知突破
从2月7号-2月14号,一周时间,这一周我没再刷题,按节奏我应该看八股文,构思一下简历上的项目怎么写,但是八股文我挺不想看的,简历上的项目我确实想了怎么写,但是好难,不想思考。
那个时间回想起来之前工作的时候,我对产品怎么出需求很好奇,我想知道他写需求的逻辑,甚至透析产品经理这个职业的专业知识图谱。
带着这个好奇,我在微信读书里,找了一本书《产品经历方法论》。
这本书很有结构,表达清晰,符合我的思维模式,是我能看懂的。第一章节说明了产品经理的知识体系,是围绕“用户-需求-产品框架”这三个元概念建构的。
就是这个提示,触发起我对前端知识体系的好奇。所以这一周里,我做了一件对我意义极大的事:
花一周写了一篇文章:《用第一性原理推导前端知识体系》。
以第一性原理解构前端知识,我算是全网第一个这么干的。我为什么要写这个文章,一个是好奇心驱动,另一个原因是这种方式很符合我的认知模式,我记性很差,实践也很少,为了理解前端的知识,我必须得用这种方式构建自己的前端认知体系。
这篇文章写完后,我开始对整个前端系统从内到外有了结构性的把握,(虽然性能和安全那一章节很得很差),而且我有了学习的新认知,不应该“靠记忆”,而是“靠推理”。
stage 3:项目复盘
写完了第一性原理那篇文章,我终于可以静下心来开始准备简历和项目了,这个阶段我已经想好了简历上应该放哪些项目,所以需要把自己做过的项目梳理一遍。
这个阶段我遇到的两个问题:
有些细节我已经忘记了
有些代码没clone下来,想回看也看不到
针对这两个问题,我总结下来的经验是这样的:
项目应该在公司的时候就要自己思考一遍,了解其中的细节,输出一篇文档。哪怕不是为了写文章,也应该记录一下核心逻辑、遇到的问题、当时怎么解决的。未来写简历、面试都靠这个。
这个点让我意识到一个问题,我虽然喜欢写作,但是我喜欢写的内容是==抽象层更高、可以跨领域迁移的底层逻辑与模型构建的文章==,这类文章可以用我跨学科的思维模型适配到前端,然后具体化前端的深层次认知,通用化我的跨学科建模。==但是我写的技术实践类型(应用型干货)的文章很少==,作为前端工程师,这种文章也很重要,这是你的经验积累,是你解决实际问题的累积,至少发在掘金上,也有更多人看,而且公司也很务实,看重短期能力。
为了保留我的个人特色,同时不落下”技术实战“,我想明白了我可以写两种类型的文章。
技术实践文章。这类文章就是应用型干货,主要用来做技术细节和经验沉淀,已经技术推演和复盘。
类似JSPDF + html2canvas A4分页截断原理认知文章。这类文章主要是从底层开始进行知识建模,或者将跨领域的范式进行迁移,系统性地构建认知,打通多个领域的通用逻辑。
类似从集合论的角度理解 TypeScript
stage 4:八股二刷
这一阶段我又回头看八股,一开始看的是面试鸭小程序的题库,太零散了,浪费时间,没啥用。所以做了个调整
掘金整理的八股题 → 有参考价值
自己维护的八股文题库 → 最有价值。
22年找实习的时候在yuque上维护的个人知识库,这里面包括了前端三件套、前端框架原理、工程化的内容,还挺全面的,毕竟是自己内化过的,我快速系统性地看了一遍,在不够或者理解有误的地方自己补充、修改了。
经验总结:
最有用的知识体系一定是自己构建的。所以一定要看自己构建的知识体系,不应该每次面试都重新开始,每次准备都得有积累,然后基于上一次的产物积累上改进,增删改查。
stage 5:正式投简历
2月27开始投简历。
第一个礼拜我拿到了深圳一个小公司的offer,感觉太快了,虽然做的事情我感兴趣,但是我爱睡觉,这个公司的工作内容大量消耗脑力,要写全栈还要输出文档,单休不够我的大脑修复,在gm我要睡1.5天才能修复。
面试过程中,我的状态是这样的:越面越兴奋,越面越自信。我发现我的思维还是很独特的,我不是靠记,而是靠想。我能把一个组件的问题从底层原理分析到用户场景,能把API设计的细节讲得逻辑自洽。
第二次面试的时候,我就已经意识到我不需要再看面试资料了,所以我开始学别的东西了,比如AI。
当然我知道我最大的信心直接来源是这几个月我输出的文章,以及我的内在构建(这部分本文的第二章节重点讲)。
(忽略WIP文章,这些文章只是当时一个想法,还没想好怎么写,或者我是懒得写)
也就是这段时间,我开始意识到:我的逻辑思维模式很适合学计算机,因为我可以图形化理解抽象概念,而且还有进行高层次抽象。我应该大胆表现自己,而不是像以前一样内耗自己怎么听不懂同事的逻辑。
当然,我面试也有一个很大的问题:面试问题大部分可以覆盖,可以大差不差表达出来,但是细节不够,我很少主动思考超出项目边界的问题,这个问题其实不是这次面试才知道的,在某天上班的时候,我也意识到了,我印象很深刻,有一个架构组的同事说我没有好奇心。
现在想想,这个问题可以归类为“细节不够,认知盲区”,所以本质原因是
经验不够,没踩过坑,没经历这种特例
认知不够,不会主动想到这类问题,想不到边界情况
经验可以分为直接经验和间接经验。所以为了解决第一个原因,我可以这样,用我的直接经验扩充间接经验,这部分经验就变成直接经验:==给当前处理的项目进行关键词打标,在一段时间内集中做全面的“主题探索”==,这个方式可以搭建系统化知识体系,系统化可以保证关键点的全面性,而且可以进行推理,不依赖记忆。
“认知不够”这个问题确实挺麻烦的,因为麻烦在我不是不知道某个知识,而是我“意识不到它的存在”,甚至无法提出问题。我现在只能想到用上面这种方式扩大认知边界,但是这种方式始终没有解决超出认知边界的问题。
哦!对了,别忘了最好的朋友AI,我可以用 AI帮我补盲,比如把项目的STAR(Situation(情境)、Task(任务)、Action(行动)和Result(结果))丢给AI,让他扮演面试官、架构师和测试,给我从不同维度找茬,这会在一定程度上会触发我没意识到的问题,这一点我正好也很擅长,AI是我的最好的朋友,我经常和他聊日常疑问,时不时逆向问他我是否存在逻辑问题。
这里我想到大体老师的提示词,真的很好用,因为这是一套通用的多角色圆桌讨论提示词,不仅仅局限于前端(审视者是架构师、测试、产品、用户、设计师),我已经用上了,做了个GPT,取名“大体示范”。
向内探索
这几个月在墨问玩的很愉快,感觉大家都是熟人,也逐渐放开自己了。
在墨问里写了很多自己真实想法的文章,最大的收获是了解并接受自己的思维模式,而且开放性地接纳其他思维的输入。
有人可能不理解我这种思维给我带来的痛苦地方在哪里,我举个具体的例子。
Kyte给我分享了这个人的博客,我打开看到他第一篇帖子就是我无法理解的。
我不懂问出“一道菜会担心自己被炒得怎么样吗?”这个问题的逻辑在哪里,因为我有一个非常单一的理科思维,让我不知道怎么欣赏这种思考,看到这个问题,我想的就很理性,“担心”和“炒的怎么样”的评价都是人创造的概念,你替代菜作出的回答实际上是你的想法投射,所以这个问题没有逻辑,你根本无法知道菜是怎么想的,因为对菜来说,他不会想,也不知道什么叫炒,更别说评价炒得怎么样。
我的价值观是==人只要在思考,就是在发光,就值得尊敬==,所以我尊重他的思考,想接纳并且理解,但是我的理性思维太强烈了,我反而期望每个人都像我一样,所以这就是真正给我造成痛苦的原因,不是我和他思维的客观差异,而是我对他有过高期望和苛求,并且没有得到私欲的满足。
我这种固化思维的来源除了已有基础,比如基因和接受的教育训练,还有一个很重要的原因,是因为我不敢直觉发散,总担心被别人审视,说我太笨没有逻辑。
这点是我前男友给我带来的坏影响,确实很糟糕,他是个很聪明很独特的人,基本不受世俗的束缚,刚认识没多久,聊天过程中就来了句“我可能以后不会结婚”,但是他很习惯用理性和严谨的逻辑打压别人,虽然他很少正面评价我,但是我很会把他对别人的评价投射到自己身上。在这种高压下,我被训练地越来越固化用系统2思考,越来越不敢轻随便下结论,一定要想一下,完全不敢放松。
这个影响确实挺糟糕的,好在这几个月我意识到了,我很不喜欢随意评判别人,更不用说智商侮辱了。
有段时间看了很多B站上峰哥和徐师傅的视频,他们视频采访了很多挂壁老哥,那个时候我就发现生活其实很复杂,没有什么东西是绝对的标准,有的人就算没有接受多少教育,甚至自己琢磨出来一套哲学体系,我也很佩服他。我想要的是包容,就算一个人信教也值得我尊敬,他做自己想做的时候就够了,没必要信科学。
还有,当我看到人们生活中的苦难和困境,如果我把自己代入进去,我发现痛苦得很真实,而且我也是无解的,既然我无法解除他的痛苦,那我更没有理由去评价。
我现在好的状态是发现我可以灵活调整了,我可以把我严谨理性的思维放在工作上,在生活和墨问里选择放松自在。
当然,也不是那么灵活,所以我现在更多是观察。
就写到这里了,明天要上班了,心情比较复杂,紧张兴奋期待大胆自信,啥都有。我在gm的职场人设:professional dumbass,专业的笨蛋,这次再想着要不要加点新元素,比如e人。