大厂面试八股流程总结

#牛友秋招经验分享# bg:25本科,两段实习总计约九个月,实习没打杂。秋招面试共23场,通过22场,挂了1场,预计陆续放出经验总结,各位权当随便看看,我面试场次也没那么多,属于个人经验。

网上八股推荐(针对Java仔):小林coding,javaguide
项目推荐:手写spring
书籍推荐:《计算机网络:自顶向下方法》,《设计模式》,《深入理解java虚拟机》

八股又要多又要精,没办法现在招聘市场就是这样。只是硬背八股非常容易造成换一个问法就答不了/改一点条件就答不了,建议还是要理解原理,
花时间了解jvm远比反复背诵jvm八股来得深入。

现在的八股不是随机抽几道题让你回答,而是根据你的简历里写到/面试官感兴趣的某一点技术开始提问,某些面试官还可能喜欢出场景题,让你在他的场景下回答。

一个好的回答可以让面试官和你在某一方向深入探讨,某种程度上也可以避免知识点广泛铺开,自己回答不上来。

所以怎么才能深入探讨?我认为是不局限于问题本身,例如:mysql有哪些索引?

不要局限于陈列出答案,例如:啊我知道,有聚簇索引,非聚簇索引,联合索引等等
而要选择性叙述出背后的内容:有聚簇索引,它基于b+树且叶子节点是完整数据;非聚簇索引,它需要回表;联合索引,一棵树上不止一个字段等等
我举的例子很简单,这么做也很容易。但如果本身就是一道比较深入的问题呢?这就需要自己本身了解得多才能有这个效果。

以我自己为例,我对数据库和缓存是有比较深入的理解了,相对而言对操作系统没有那么深入。
而实际上面试过程中我也很少被深入提问操作系统,反而对我熟悉的数据库和缓存有过很多次讨论。我可以理解为这是因为在数据库的深入讨论中确实花费了很多时间,那么摊到我没那么自信的区域的时间就会少很多。
#牛客创作赏金赛#  #24届软开秋招面试经验大赏#  #我发现了面试通关密码#
全部评论
数据库,os,计网全被深入问过。感觉想去大厂还是得深入理解,内化,中小厂会简单很多
2 回复 分享
发布于 2024-09-24 13:38 美国
场景题怎么准备呀,大佬
1 回复 分享
发布于 2024-09-25 11:54 湖南
八股是小林coding和javaguide所有内容吗,有侧重点嘛还是 面试(深度)够用了嘛
点赞 回复 分享
发布于 2024-10-11 03:38 陕西
复旦大学还来java吗
点赞 回复 分享
发布于 2024-09-25 23:05 上海
大佬,八股就看小林coding图解系列,不看书,够用吗,juc和jvm怎么学的呢
点赞 回复 分享
发布于 2024-09-24 17:07 江苏

相关推荐

作为一名大数据工程专业的研究生,收到华为的实习面试邀请后,我既兴奋又有点紧张。华为在大数据、云计算和AI方面的项目一直颇具规模,我在实验室也经常用到华为云的分布式存储和计算工具,所以这次机会对我来说既是挑战,也是检验自己能力的时刻。面试当天是线上视频面试,HR提前一天发来了会议链接,还贴心地提醒我准备好稳定的网络和耳麦。面试开始,首先是自我介绍环节,我简单交代了自己的学业背景、参与过的项目,以及在实验室做的两个与数据仓库建设相关的课题。技术面提问部分面试官是一位资深的大数据架构师,第一句就直奔主题:“你在项目中具体承担了哪些角色?有没有数据模型设计的经验?”我提到了在校期间参与的一个基于Kimball维度建模的销售分析系统项目,并详细描述了如何在需求分析阶段识别业务过程和度量,以及如何根据不同的数据主题域设计星型模型与雪花模型。我还补充说明了在ETL流程中,如何处理缓慢变化维(SCD),尤其是Type 2类型的实现方法,包括在Hive中通过分区与有效期字段来管理历史数据。他听完后很感兴趣,追问:“如果我们有一个订单事实表,需要支持多维度分析,比如时间、客户、产品,但不同维度的数据规模和更新频率差异很大,你会怎样设计?”我答道:时间维度:预先生成完整的日期维并缓存在DW中,保持稳定不变;客户维度:考虑缓慢变化维,保证历史分析的准确性;产品维度:用码表+关联,保持高查询性能。并说明了在分布式环境(如Spark SQL)下,为避免join带来的性能瓶颈,可以使用广播join或分桶策略。场景题与解决思路接下来,他给了一个具体问题:“如果每天有上亿条设备日志进入系统,需要在分钟级完成故障模式检测,你会怎样设计架构?”我回答:数据采集:采用Flume/Kafka作为实时数据入口,将日志按主题与分区进行路由;实时计算:使用Flink进行流处理,通过窗口函数实现分钟级聚合;特征提取与模式匹配:在流计算过程中调用预先训练好的模型(可能是基于TensorFlow或PyTorch),完成在线推理;数据落地与分析:实时结果入ClickHouse或HBase,历史数据入Hive供离线分析;监控与告警:接入Prometheus+Grafana实现实时监控,并结合规则引擎触发告警。面试官点头认可,但提醒我在实际生产中需要考虑容错和数据延迟问题,比如Kafka的副本机制、Flink的checkpoint与状态恢复等。综合能力考察除了技术问题,他还考察了我的沟通能力与学习能力。他问:“如果你负责的某个数据模块上线后用户反馈查询慢,你会怎样定位问题?”我回答说会先定位问题范围:是前端展示慢还是后端查询慢;如果是后端,先看sql执行计划,分析是否由于join、group by等操作导致大量shuffle;再检查数据倾斜情况,必要时用加盐、按范围拆分等方式优化;同时关注底层存储的索引与分桶方式。思维延展与职业规划最后,他关心我的职业规划。我表示自己未来希望在数据架构与数据治理方向深耕,不仅掌握数据采集、处理、存储的全链路技术,还能从业务视角建立完善的维度模型和指标体系,提高企业数据资产价值。这与华为在智慧城市、通信网络、云平台等领域的需求非常契合。面试在轻松的氛围中结束,面试官说技术能力还不错,但建议我在模型设计中更多考虑跨域数据整合的复杂性,以及如何在超大规模数据环境下保持模型的易维护性。HR最后告知后续会有二面,可能会有更深层的系统设计题与现场编码题。面试感受与经验总结这次一面让我体会到几个关键点:准备要针对岗位需求 —— 华为的大数据实习不只是写代码,还要理解业务流、模型设计、性能优化,尤其是Kimball建模在企业级场景的落地方式。案例要具体 —— 面试时举的例子最好能体现规模、挑战与解决方案,比如数据量级、延迟要求、架构选型等细节。思维要全面 —— 技术方案不仅要能跑通,还要考虑高可用、可扩展性、运维成本等。表达要清晰 —— 把复杂的设计讲清楚,有时候比技术本身更重要。总之,这次面试虽然是虚拟的情景,但过程很真实,如果你未来准备大数据方向的华为面试,可以借鉴这种“技术细节+业务场景+性能优化”的答题方式,即使遇到陌生问题也能从架构思路入手,让面试官看到你的系统性思考能力
点赞 评论 收藏
分享
评论
20
72
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务