大多数人都高估了他们一天能做的事情,但低估了他们一年能做的事情
这是我用来准备后端开发校招面试的一个笔记本。按照计算机基础知识的不同版块,记录了面试中常见的问题以及比较规范的答案,大部分问题都带有更加细节的知识点追问。我用它来收集整理自己遇到的一些面试题,并且在面试前回顾,就像考试之前复习知识点一样。
你可以将其作为模拟面试的问题来源,测试你的熟练程度;也可以当作面试前的知识点梳理,对一些细节问题进行填补;
当然,这个笔记本也同样适用于那些能够通过简历筛选,但是对计算机基础所知甚少的人,如果你之前从未在学校修过或者自学过这些课程,你依然可以通过这份笔记快速备战面试。
当你浏览每个版块的目录时,你可能会觉得并没有涉及到多少问题,但其实,每个问题下的一连串追问才是这些笔记的精华所在。如果你觉得你已经对目录中的问题了然于胸,你可以点进这些问题,多看看它们的 follow-up questions.
你可以看到,这份笔记是19年11月份创建的,那时我面试了两次字节跳动,都没有通过;原因是我其实并没有系统学过计算机网络、操作系统、数据库;之后用了大概一个月的时间,我开始使用这份笔记复习计算机基础;在12月底的时候,我拿到了字节跳动后端开发的offer.
这个仓库目前还在不断完善之中,有些问题还没加入到笔记,有些问题的思路和答案可以做得更好!如果你有很棒的想法,欢迎提 issues 或者 pull requests!
1. 计算机网络
2. 操作系统
3. 数据库
4. 设计模式
(待整理)
5. 工具
6. Python
为什么给我的笔记本起名为 Waking Up?当你看到这个词的时候,你脑中浮现出的可能是早上从床上醒来的画面,或者是自己在告诉自己说“醒醒吧,认清现实”的这样一个场景。
但是其实这个名字来源于电影《Lone Survivor》中的配乐《Waking Up》,让我联想到海豹突击队的坚毅、全力以赴、为了训练而付出汗水;在电影中,这段配乐出现的场景,是两名队员在基地外面的大草原上晨跑。
电影中我很喜欢的一句话:
Anything in life worth doing is worth overdoing. Moderation is for cowards.