面经总结

茴香豆 Lv5

准备试找工作,故没事看些面经并进行总结。

大数据开发项目:大数据开发项目_技术交流_牛客网 (nowcoder.com)

1. 复习

看书,记笔记,形成健全的知识体系。大数据分:数据产品(算法)、数据平台(服务端开发)、数仓(业务)三个方向。

学习路线:

Java-Linux-MySQL-Zookeeper-Hadoop(HDFS、MR、Yarn)-Hive-Flume-Sqoop-Azkaban-Redis-Kafka-HBase-Scala-Spark-Flink

  • MySQL:《MySQL 技术内幕:InnoDB 存储引擎》、《高性能 MySQL》、《MySQL 实战 45 讲》、《从根儿上理解 MySQL》、《从零开始带你成为 MySQL 实战优化高手》
  • Kafka:半兽人博客、《Apache Kafka 实战》
  • Zookeeper:《从 Paxos 到 Zookeeper:分布式一致性原理与实践》
  • Spark
  • Flink
  • MapReduce
  • HiveSQL

2. 算法

Leetcode前200题反复刷

3. 自我介绍

自我介绍是简历的精简,举例:

1
2
3
4
5
6
7
8
9
面试官你好,我叫 CoderW,19 年毕业于哈佛大学。

从毕业到现在一直从事后台研发相关工作。

19 年-22 年在谷歌中间件团队,主要负责 xx 中间件的设计与开发,在这期间,完成了对 xxx 进行改造和优化,整体性能提升了 80%;

22 年去了微软电商团队,负责微软电商体系的设计,两年的时间,完成了微软电商从 0 1 的搭建过程。上线至今,日活量达到了 10 亿,系统平均 QPS 达到 1W。

这一次应聘的是贵公司中间件团队的资深专家岗位,在业务方向和技术栈方面,我个人认为我的匹配度还是比较高的,非常希望能够加入贵公司,一起打造 xx 系统。谢谢!

4. 技术讨论

整个面试最重要的环节。

4.1态度

  1. 不卑不亢。记住,这个环节是技术讨论环节,不是问答环节。一场好的技术讨论一定是有来有回,而不是单方面的你问我答。在尊重面试官的前提上,可以对面试官的一些结论提出质疑和探讨,在我看来,敢于提出自己的不同看法是一个加分项。如果遇到不尊重你,甚至侮辱你的面试官,我建议你直接把简历要回来,大家都是打工人,有什么好装的?

  2. 真诚以待。有些面试官喜欢问一些比较冷门的知识来验证候选人的技术深度,这是一个很正常的事情,你也不需要太过于紧张,真诚一点,会就是会,不会就是不会,没什么关系。千万不要自作聪明强行去编造,真诚永远是第一要义!

  3. 深入发散。如果聊到你熟悉的一个知识点,你一定要好好把握,可以尝试着深入和发散,让面试官慢慢的进入你的节奏。举个例子,聊到 Kafka 零拷贝的时候。

    1. 深入:你可以继续深入,聊一下 sendfile+DMA Scatter/Gather。

    2. 发散:深入后再发散,聊一下为什么 RocketMQ 写日志用到了零拷贝,但是 Kafka 写日志的时候不用零拷贝。

    深入是展现你对技术的了解程度,发散是展示你的视野宽度。

回答完一个问题之后,可以小小的总结一下,这样不至于你一个人在那里讲的云里雾里,让面试官都找不到你想要表达的重点了。

4.2常见问题

4.2.1项目

  • 项目介绍
  • 项目中遇到的困难
  • 项目的详细细节
  • 重新开始怎样优化项目(硬件设备、算法架构、人员配置、团队分工等方面)

4.2.2Hadoop

  • Hadoop的了解(简单介绍Hadoop,简述Hadoop的组成和定义)

  • Hadoop使用经验(介绍Hadoop的生态、组成、应用场景)

  • Hadoop能够高性能吞吐的依赖有那些(HDFS,MapReduce)

  • Hadoop的完整计算过程(包括Map、Reduce过程,任务调度等)

  • Hadoop使用中遇到的困难(从自身设备、内存分配、组件核心配置等方面入手,重点介绍数据倾斜)

  • 什么是数据倾斜问题,场景有哪些?常见的解决方法是什么?

  • Hadoop数据倾斜的解决方案

  • Hadoop、Spark、MapReduce区别和优劣


  • Spark常用算子,原理(RDD)

  • Spark数据倾斜及解决方案

  • Spark shuffle原理,hashshuffle 和 sortshuffle


  • 介绍MR原理(工作流程、Map-Shuffle-Reduce)


  • 介绍Hive(Hive的定义、架构)

  • HiveSQL数据倾斜及解决方案

4.2.3其他

  • 各个框架各自的优缺点和应用场景
  • 数据分仓的理解
  • 未来职业规划
  • 工作中碰到特别复杂的问题怎么办

5. 反问环节

  1. 我面试的这个岗位需要用到哪些技术栈?
  2. 我面试的这个岗位的最大挑战是什么?
  3. 请问面试官对我今后的技术学习有什么建议?
  4. 更看重应届生哪方面的素质?
  • Title: 面经总结
  • Author: 茴香豆
  • Created at : 2022-07-25 17:41:34
  • Updated at : 2022-09-21 22:32:11
  • Link: https://hxiangdou.github.io/2022/07/25/Interview_experience/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments