查看: 66902| 回复: 85
跳转到指定楼层
上一主题 下一主题
收起左侧

[找工就业] Full Stack 面试指南(附真题)[近一个多月40多家公司面试总结7000字长文]

   
🎯 10
💯 9
全局:

2025(1-3月)-CS硕士+5-10年 | 网上海投|BayArea湾区 码农类General全职@

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x

接上个帖子,最近一个多月面试了40家公司,发现很多小伙伴对如何准备面试非常感兴趣。我的面试方向是 Full Stack,没有面试纯 Backend 岗位,所以以下内容主要分享如何准备前端或全栈岗位的面试。


很多人好奇我怎么拿到这么多面试的,其实我的方法很简单:就是广撒网,多投简历。大力出奇迹。我自己用的是 Simplify Copilot 来提升投递效率。之前也试过用机器人自动海投,但相关性太差了,收到一堆乱七八糟的职位,最后还是老老实实回到自己筛选岗位。可能也是因为我的技术栈比较广,能匹配的岗位类型也多一些,所以面试机会比较杂,但整体来说效果还不错。有条件能找到内推的还是找朋友帮帮忙,个人感觉海投和in network reach out效率挺高的就没找内推。linkedin上没事儿可以加一些喜欢的公司的recuiter聊聊,不要到需要别人帮助了再加好友聊,那样别人可能也只能是应付差事。


根据我的经验,那些投简历流程特别繁琐的公司,反而面试邀请率很低。所以流程麻烦的公司直接跳过,把时间留给更多高效投递的机会,整体效率更高。
. .и
.1point3acres
简历方面,我加了一些 AI 相关的关键词。现在几乎所有公司都在往 AI 上靠,即使岗位本身无关,简历系统也更容易识别到含有关键词的内容,推荐率更高。


一开始找工作的意愿并不强,最初也没打算认真准备,就当做用“真面试”练手。但随着面试次数增多,发现不准备效率确实低。于是开始总结高频题目和面试方向,下面就从几个方面来梳理一下我遇到的面试内容,希望对大家有帮助。
..


简历
我的简历是最近这段工作经历比较长,基本占了一整页,之前的工作经历就用两行简单带过,整体控制在三页以内。投大厂的话,HR一般会做一遍timeline梳理,所以每段经历最好把时间节点写清楚,不然可能被问;中小厂的话,像学校的起止时间可以适当隐藏,但最好看情况补一下(我自己之前被问了好几次,后来统一都补上了)。技术栈方面,其实不用写太细,只要JD里提到的关键词你简历上都有出现就行,其他细节留着HR Call前快速过一眼JD准备一下就好。还有,最近这段最重要的经历一定要放在最上面,排版也别太密,其他经历2到3点带过,能量化就量化,突出自己做了什么,有啥结果,HR和面试官看到印象会好很多。


.1point3acres
前端
..
前端的面试内容大致可以分为几个方向:

1. HTML,CSS
. Waral dи,
HTML这部分比较基础,一般掌握一些基本的语义化标签,本地存储,新增表单控件,多媒体支持,SEO 相关的内容即可。CSS需要熟练常用应用布局,响应式设计,常见选择器。

. From 1point 3acres bbs

2. JS

首先就是各种八股文的概念以及应用例如作用域和闭包,原型链,this 的绑定规则,Promise, async/await,Event Loop等等 其次就是用JS手写一些实现,可以去刷一些JS的题目: https://leetcode.com/problemset/javascript/ 最后就是对于Dom的操作以及应用需要熟记于心


3.框架(React, Vue, Angular)

各自优势特点,适用场景以及场景优化思路,这方面的问题类似于八股但是也要看一下,类似的问题有


~ "React 和 Vue 的最大区别是什么?"

~ "Angular 为什么适合大型项目?"

. check 1point3acres for more.~ "如果项目很大,React 应该怎么优化性能?"
. ----
~ "Vue中双向绑定是怎么实现的?"

~ "Angular中依赖注入是怎么工作的?"

~ "你在实际项目中用过哪些性能优化手段?举例?". Waral dи,


针对每一种框架还有一系列比较深入的设计生命周期,路由,组件设计模式,前端测试等相关问题。

.--
4.网络:以下是我碰到的一些问题
. 1point 3 acres
~ HTTP 基础 HTTP 和 HTTPS 区别?
-baidu 1point3acres
~ 常见的 HTTP 方法?

~ HTTP 状态码?

~ 什么是持久连接(keep-alive)?
. Waral dи,
~ 什么是幂等性?

~ 浏览器缓存机制 强缓存和协商缓存的区别?

~ 本地存储方式(localStorage / sessionStorage / IndexedDB)

~ 跨域(CORS) 什么是跨域?为什么浏览器有跨域限制?

~ 解决跨域的方式有哪些?(CORS、JSONP、代理服务器、Nginx反向代理
..
~ 常见网络请求工具 fetch 和 axios 有什么区别?

~ 如何封装统一的请求拦截器?
. 1point3acres
~ 如何取消请求?

~ 如何做接口的重试机制?. Χ

~ 如何处理接口超时?

~ 安全性问题 CSRF和XSS攻击是什么?前端如何防御?
. .и
~ HTTPS是怎么保障数据安全的?




5.基于框架的实操 (重要!):大多数公司都会有一道多轮会有实际操作的考题, 我碰到的考题都有如下这些:

~ 写一个流水灯,支持自动500ms 切换和手动切换两种

~ 找一个csv格式的api table. 获取处理数据render成表单,支持分页,搜索. 1point 3 acres
. 1point 3 acres
~ React实现节流和防抖

~ 如何有关一个渲染很慢的列表,提出两种以上解决方案

~ 实现一个modal弹窗组件,支持嵌套

~ 设计一个倒计时器,设计一个数字输入框,点击确定是开始倒计时,支持停止,继续,reset功能

~ 模拟电视遥控器输入,画一个含有1-9,a-z的键盘,通过键盘上下左右控制方向,每当按下enter录入字符,将点击字符显示出来并且backspace控制删除字符。注意到达键盘边界特殊情况. .и

~ 登录表单(输入邮箱和密码,简单验证)
. check 1point3acres for more.
~ 从API加载用户列表

~ 大列表懒加载

~ 多步表单(Wizard)(比如注册分步骤)

还有很多面试题也都大同小异,挑选了一些功能不太重复的。. Waral dи,





后端.google  и

1.基本概念以及应用:. From 1point 3acres bbs

~ 各种类型认证机制JWT,OAUTH,cache/session based etc.
. .и
~ callback、Promise、async/await

~ RESTful API. 1point 3acres
. 1point3acres.com
~ Buffer 和 Stream

~ 缓存穿透、缓存雪崩、缓存击穿

~ 什么是事务(Transaction)?ACID指什么?

~ 进程管理

~ 什么是索引?有什么缺点?. From 1point 3acres bbs
. .и
~ Redis 常用的数据结构?

~ Consistent Hash(一致性哈希)?

~ CSRF?怎么防止?


. From 1point 3acres bbs
2.框架相关

针对不同技术栈的框架相关基本知识以及简单项目实操:
.1point3acres
Go(Gin, Echo, Fiber)
.google  и
~ Gin的路由机制

~ Context的使用(控制请求生命周期)
. 1point 3acres
~ 如何做高效的连接池管理

~ Gin为什么比Beego快?. Waral dи,

~ 如何在Go后端防止内存泄漏?

~ 如何优雅关闭服务器(graceful shutdown)?



Python(Flask, Django, FastAPI). 1point 3acres
. From 1point 3acres bbs
~ Django的MTV模式. Χ
.
~ Flask的Blueprint机制

~ FastAPI的异步特性(基于Starlette)-baidu 1point3acres

~ Django和Flask有什么区别?

~ 如何在Flask中做用户认证?.

~ FastAPI为什么性能高?

~ 如何优化ORM查询?. .и

JS(express.js, Nextjs)
. ----
~ Express和Koa的区别?

~ 如何实现一个自定义中间件?

~ 如何设计RESTful API?

~ 如何处理高并发?



. check 1point3acres for more.
3. 算法

作为一个不是“刷题狂魔”的面试者,我想说,刷题固然重要,但没有拿到面试机会前,海量刷题其实效率不高。我个人的策略是:拿到具体公司的面试之后,结合岗位和公司刷面经里的典型题目,进行针对性准备。这个方法对我来说性价比比较高,不至于陷入无尽的题海焦虑。
. Waral dи,

当然,如果你本身就是热衷刷 Leetcode、喜欢打周赛的选手,那自然另当别论,上千道题刷下来肯定会有质变。但我也想给那些算法基础比较薄弱或者时间有限的朋友一点建议:. ----


刷个 200~300 道题,覆盖常见题型(数组、哈希、树、二分、回溯、动态规划等),建立起基本题感和解题思路就够了。-baidu 1point3acres
. Χ
..
这里还有一点我个人踩过的坑:算法题一定要结合岗位背景选择合适的编程语言!之前自作聪明,用 Python 写前端岗位的算法题,结果几次面试直接挂得干脆利落。后来才意识到,语言偏差会让面试官产生不必要的疑问或偏见,尤其是在非大厂、流程不那么规范的公司。所以,除非你是去 Google、Meta 这种“语言无所谓”的公司,否则尽量用该岗位工程上主力语言来做题。前端用 JS/TS,后端岗位看你岗位用 Java、Go、C++,不要让语言成为你与 offer 之间的无关障碍。




4. 数据库:说实话面了40多家没人考过实操,都是一些关于优化,数据库选择,缓存,scale的一些设计问题。
. Χ
~ 性能优化思路
. ----
~ 数据库选型与架构设计

~ 缓存相关问题

~ Scale & Consistency 的讨论
..


系统设计

首先是一些基本的概念性问题需要去看一下比如高并发处理,接口幂等性,日志与监控,负载均衡,数据库优化等等。大公司的通用性岗位考题在面经里频率很高,小公司或者组招大概率是会出一些现有项目的实际系统设计。下面是一些本人碰到的考题:. Waral dи,
. 1point3acres
. check 1point3acres for more.
1.URL shortening system

2.Design YouTube watch history

3.Design a Message Queue System

4.Design a Auto Complete System

5.Design a Trie Tree FileSystem

6.Design a Review and Reward system
. Waral dи,
7.Design twitter. 1point 3 acres

8.Design a traffic router

9.Design a report system

10.Design a scanner system

11.Design a Rate Limiter

12.Design a Real-Time Chat Application ..
.1point3acres
13.Design a News Feed System. Χ

14.Design a File Storage Service

15.Design a Distributed Cache System -baidu 1point3acres


在面试系统设计可以考虑遵循如下步骤:

~ Clarify 需求(问清楚!).--

~ 估算规模(数据量,QPS,存储大小)

~ 拆解系统组件(大模块)

~ 画系统流程图(API Flow + Data Flow)

~ 深挖关键模块(DB设计,缓存策略,Queue机制等)

~ 提出扩展性方案(Scale, Replication)

~ 提出高可用和故障恢复方案-baidu 1point3acres

~ 讲优化点(例如缓存优化、DB查询优化)

~ 总结(Trade-offs)





行为面试

曾经我一直以为面试就是“技术为王”。刷题、做项目、准备系统设计,似乎只要这些环节稳了,拿 offer 就是水到渠成的事。但在经历了多轮面试、和 30 多位 hiring manager 深聊之后,我意识到:技术固然重要,但在现在市场很多人技术面都过关的情况下,最后决定是否录取的,往往是你在沟通、判断力、态度表达这些“非技术维度”的表现。
. 1point3acres
我总结出一个规律:如果你的技术实力、scope 以及经验确实很强,那你反而要用“谦虚”来表达自己的成熟;而如果你知道自己有些地方够不上职位要求,那就要合理放大自己影响力、展现你的潜力和成长性。


很多面试问题本身是没有标准答案的,考察的核心是你“面对问题的思考方式”。你的逻辑是否清晰,你是否能够根据 context 作出理性的分析,你的表达是否考虑了听众感受,这些往往比“是否答得完美”更重要。

一些实用的心得体会也分享给大家:


~ 宁可保守表达,也不要踩雷。很多时候,过于强调自己的“领导力”或“功劳”反而让 HM 产生反感。要多用“we”,少用“我一个人搞定”;强调合作,而不是独自英雄主义。

~ 别一兴奋就一直说。面试是双向交流,不是演讲。说多了容易暴露短板、绕远路,反而让人觉得你控制力不足。

~ 倾听,有时候比表达更关键。真正成熟的沟通,往往体现在你能否听懂对方的关注点,并围绕它精准回应。所以,当我们准备 Behavioral、HM 面 或系统设计时,不妨更多地从“对方角度”出发,理解他们在乎什么、担心什么、欣赏什么,而不是一味展示自己。. 1point3acres

. 1point 3acres
下面是一些我碰到的面试问题:.--
..


~ Tell me about a time you worked on a team project.
~ If your boss tell you 1+1=3 and ask you to continue working on it. What would you do?. 1point 3 acres

~ Describe a situation where you had to work with a difficult teammate..1point3acres

~ How do you handle disagreements in a team?
.1point3acres
~ Give an example of how you contributed to a team’s success.. 1point3acres

~ Tell me about a difficult problem you faced and how you solved it.

~ How do you prioritize multiple tasks when deadlines are tight?

~ Tell me about a time you worked under significant pressure.
. 1point 3acres
~ Describe a time when you led a project or initiative.. 1point3acres.com

~ How do you handle taking on responsibilities outside your job description?. check 1point3acres for more.

~ What are you most proud of professionally?
. 1point3acres.com
~ Tell me about a time when you set and achieved a challenging goal.


. 1point 3acres
..
. check 1point3acres for more.
Offer选择

在这个物欲横流、信息爆炸的时代,我们每天都在被各类信息裹挟着前行。尤其是到了春招、跳槽季节,地里上频繁刷到各种大包的帖子。这些信息看似激励人心,但往往也无形中给我们带来焦虑与比较的心理压力。

. 1point3acres.com
但其实,每个人的背景、学历、经历乃至人生阶段都截然不同。不要轻易拿别人的结果来衡量自己的价值。你看到的,也许只是他们“高光时刻”的剪影,却忽略了背后无数不为人知的付出与妥协。


在选择工作时,我们也许不应该只盯着薪资数字的多寡。真正的“好工作”,是与我们的人生阶段、身份状态、签证情况、家庭需求、心理节奏高度契合的岗位。它也许没有令人眼红的年终奖,但可以让你安心办理身份、照顾家人、保持生活的平衡。对很多人来说,一份在职业发展与生活质量之间取得良好平衡的工作,才是真正值得珍惜的。

选择适合自己的,不是妥协,而是一种成熟。能在复杂的诱惑中看清自己的核心诉求,是一种勇气,也是一种智慧。
. 1point 3acres
. From 1point 3acres bbs
不要被短期的浮华迷了眼。我们每一天,都是未来日子里最年轻的一天。这个时候选择什么样的生活节奏、养成什么样的习惯、与什么样的公司并肩前行,将深刻影响我们接下来的人生轨迹。-baidu 1point3acres
. Χ

健康的身体,稳定的心态,和由衷的满足感,是我们这一生中最宝贵的资产。放慢脚步,不是落后,而是在积蓄力量,走得更远。




心态. 1point3acres.com

在求职的过程中,除去技术实力、经验背景等“硬性条件”,心态往往才是真正决定成败的关键因素。很多人都会有这样的经历:在拿到第一个 offer 之前,感觉处处碰壁,但一旦拿到第一个 offer,后面的机会却接踵而至。原因很简单——你的心态变了,焦虑感少了,自信多了,整个人的状态和表达自然也更放松、更有说服力。


因此,面试不是一场考试,不该全程绷紧神经,更不该用一锤定音的思维来看待每一场机会。面完一家,就放下这一家。如果连电面都没过,那就当这家公司从未存在过,不要再浪费任何精力在幻想和懊悔上。如果是 VO面完了,也不要抱太大希望,理性记录反馈,适度跟进,然后把它“封存”,让它从你的情绪列表中彻底退场。你要继续向前走,继续准备下一场,像什么都没发生一样。


无论结果是好是坏,放在十年、二十年的时间尺度里,今天面试这件事,可能只是你人生里一片不起眼的落叶。对于正在经历裁员、身份焦虑的朋友来说,更要记住:你只需要一个 offer。一个就够了。至于你会面多少家公司,那只是通往那个结果的过程而已。


每次面试结束后,都要学会“断舍离”:面完一家,忘掉它。再准备下一家。没有必要翻来覆去地纠结面试中的某一句回答、某一个眼神。那只会耗尽你的情绪和能量。

..
其实,面试和爱情的等待很像:越纠结、越期待,往往越难释怀;越放下、越坦然,结果反而更顺利。答案总是藏在时间里,而不是焦虑里。


每天,都是你“面试旅程”真正的第一天。不要给自己太大心理负担,不要急于求成。按部就班、稳扎稳打,一步步来。该复习就复习,该练题就练题,该睡觉就睡觉。别太在意眼前的小曲折,因为在未来的某一刻,你会感谢那个不放弃、不断向前走的自己。






. Waral dи,
祝大家某个打开邮件的清晨,Congrats如晨光洒落~


补充内容 (2025-05-10 15:25 +08:00):
在入职得过程中发现之前拿到的口头offer, 有好消息稍后回复的公司中有几家有撤回offer/取消岗位/承诺下季度入职的情况,所以大家在没有接受offer甚至背景调查结束前还是不要放飞自我,保持好自己的面试节奏和心态。如果公司真的有以上情况,放宽心态,恭喜你错过了一家可能让你后悔多年的公司。

评分

参与人数 113大米 +276 收起 理由
threeacres + 1 赞一个
niming1024 + 1 给你点个赞!
maxmonlt + 1 赞一个
wenqiang88 + 2 很有用的信息!
xianglee + 1 赞一个

查看全部评分


上一篇:真诚请教 Summer Intern 国内字节 vs 微软中国实习选offer
下一篇:NLP (LLM) PhD NG 找工作疑惑
推荐
bestcindy 2025-4-30 07:30:40 | 只看该作者
全局:
你能面好是因为你准备的好!恭喜!
回复

使用道具 举报

全局:
Emmm 有点怪,面试官明确说过 少用we 多用i。
回复

使用道具 举报

全局:
Wow 真的很好很全的指南! 我也full stack,有时候还要被问sql的。
回复

使用道具 举报

🔗
Murder 2025-4-30 00:16:48 | 只看该作者
全局:
哇,楼主太给力了!👍 这篇Full Stack 面试指南简直是及时雨啊,信息量超大,干货满满!🤩 感谢楼主毫无保留地分享了这么多实战经验和真题总结,感觉照着这个准备,面试成功率up up!🚀 必须收藏学习
回复

使用道具 举报

🔗
davidscz 2025-4-30 00:52:36 | 只看该作者
全局:
感谢LZ分享!!!
回复

使用道具 举报

🔗
april1989 2025-4-30 01:19:43 | 只看该作者
全局:
感谢楼主分享。请问如果一直干的是前端,但是full stack岗位的SD又需要设计到后端,请问有什么推荐的资源可以学习一下么?我看了所有hello interview的例子,但是如果遇到其他不一样的题目,一开始设计DB就直接死了。

评分

参与人数 1大米 +1 收起 理由
672347250 + 1 赞一个

查看全部评分

回复

使用道具 举报

全局:
很久没有看到这么有营养的帖子了
回复

使用道具 举报

全局:
mark mark 笔芯
回复

使用道具 举报

🔗
 楼主| EmbeddedBugEng 2025-4-30 02:43:56 来自APP | 只看该作者
全局:
april1989 发表于 2025-04-29 10:19:43
感谢楼主分享。请问如果一直干的是前端,但是full stack岗位的SD又需要设计到后端,请问有什么推荐的资源可以学习一下么?我看了所有hello interv
可以参考一下https://github.com/ashishps1/awesome-system-design-resources,如果是容易卡住可能是案例做的少了,仔细准备个20来个问题,自己总结一下,其实都殊途同归的。

评分

参与人数 3大米 +12 收起 理由
求职新人 + 1 给你点个赞!
PiggyPig + 1 赞一个
爱丽丝和鲍勃 + 10 欢迎分享你知道的情况,会有积分奖励

查看全部评分

回复

使用道具 举报

🔗
 楼主| EmbeddedBugEng 2025-4-30 02:52:35 来自APP | 只看该作者
全局:
匿名用户123 发表于 2025-04-29 10:38:20
Emmm 有点怪,面试官明确说过 少用we 多用i。
这个说实话感觉看人,我面试中被打断问过你一直用we, 那你在项目了做过啥。或者一直用i面试官会问你和你的团队不合作吗?但是一开始就i会显得人比较自负。可以先用we等面试官提及然后说: 我习惯用“we”,因为我非常重视团队合作。但具体到我的个人职责和贡献,我主要负责的是blablabla.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表