本文へ移動

ホーム / Data / 第6部 面接の実践

第6部 面接の実践・第14章

面接の全体像と答え方

★★☆ 重要5トピック・面接 3問

データエンジニアの面接の流れと評価のされ方、技術の質問への答え方の型を押さえる。設計と SQL の実技は次の章、経験の話し方はその次の章で扱う。

14.1面接の典型的な流れ

用語★★☆ 重要
ひとことで

SQL の実力、設計の判断、品質とコストの意識、利用者との協力が見られる。

データエンジニアの選考は、だいたい次の流れです。SQL の実技と設計の面接があるのが、この職種の特徴です。

データエンジニアの選考のよくある流れカジュアル面談30〜60分1次面接経歴と技術技術面接SQL・設計2次面接チーム・協業最終面接価値観・意欲
会社によって順番や回数は変わる。技術面接が課題の提出になることもある
選考段階主な内容準備のポイント
カジュアル面談会社紹介、データ基盤の課題、お互いの興味応募先の技術ブログや登壇資料で、基盤の構成と使っている道具を調べておく
1次面接(現場のエンジニア)経歴の深掘り、SQL・モデリング・パイプラインの基礎職務経歴書の各項目を「なぜ・どうやって・結果」で話せるように
技術面接・課題SQL のライブコーディング、データ基盤の設計、持ち帰りの課題考えを声に出す練習。前提を質問で確かめてから書く
2次面接(マネージャー)利用者や他チームとの協業、障害対応、キャリアエピソードを STAR で整理。利用者に何が変わったかを数字で
最終面接(役員・CTO)価値観、入社の意欲、事業とデータの関わり応募先の事業でデータが何に使われるかと、自分の役割を結びつける

面接ではこう答える

データエンジニアの面接は、経歴と経験の深掘り、SQL の実技、データ基盤の設計、チームや利用者との協業の順に進むことが多いです。見られるのは、SQL の実力、なぜそれを選んだかという設計の判断、品質とコストの意識、利用者と協力して定義を合意する力です。

技術の質問は、次の4段で答えると「用語を知っている」だけでなく「実務で使える」ことが伝わります。最初の一言で結論を言い、長くなりそうなら「詳しく話しましょうか」と相手に選ばせます。

「知っている」を「使える」に変える4段の答え方1 結論一言で答える2 仕組みなぜそうなるか3 注意点弱点・使い分け4 実体験自分がどう使ったか
例:冪等性の質問にこの順で答える
段内容例(「パイプラインを冪等にするには?」)
1. 結論一言で答える何度やり直しても同じ結果になるよう、MERGE かパーティションの入れ替えで書きます
2. 仕組みなぜそうなるか一意キーで照合する、対象の日を丸ごと置き換えるので、2回流しても行が増えません
3. 注意点弱点・使い分けMERGE の元にキーの重複があるとエラーや不定になるので、先に1行にします
4. 実体験自分がどう使ったか例えば、再実行で売上が2倍になる事故のあと、全ジョブを日付の引数つきの入れ替えに直しました
評価軸高評価の振る舞い低評価の振る舞い
SQL の実力粒度とキーを確かめてから、段階に分けて書き、検算するいきなり書き始め、NULL や同点で結果が変わることに気づかない
設計の判断要件(鮮度・量・利用者)から選び、選ばなかった案と理由を言える流行りの道具の名前を並べる
品質の意識テスト・突き合わせ・再実行を最初から設計に入れる「正しく動くはず」で終わる
コストの意識読む量・増分処理・計算資源の大きさを考えるお金の話が一度も出ない
利用者との協力指標の定義を合意し、期待値を調整した話ができる言われたものを作っただけ
当事者意識自分が何を判断し、何をしたかを具体的に話す「チームで」ばかりで自分の役割が見えない

データエンジニアの技術面接で聞かれることは、だいたい次の分野に分かれます。各章の「面接ではこう聞かれる」で練習できます。

分野よく聞かれる質問
SQLユーザーごとの最新の1件、7日移動平均、連続ログイン日数、重複の除去
モデリングスター型スキーマの粒度の決め方、SCD Type 2 はいつ使うか
パイプライン冪等にする方法、遅れて届くデータの扱い、CDC とバッチの使い分け
品質・運用ダッシュボードの数字がおかしいと言われたら、どんなテストを入れているか
コストDWH の料金が急に増えたらどう調べるか
経験作った基盤で利用者に何が変わったか、一番大きな障害と再発防止

設計・SQL の実技の面接

経験・行動面接

準備期間やること
1週間しかない経験のエピソードの整理(最優先)、ウィンドウ関数の定番(最新の1件・移動平均・連続日数)、冪等性と増分処理、スター型スキーマと粒度
2〜3週間上記+ CDC とバッチの使い分け、遅れて届くデータ、データのテストと障害対応、DWH のコストの仕組み
1か月以上上記+設計面接のお題を時間を計って 3つ以上、Kafka とストリーム、Spark のシャッフルとスキュー、権限と個人情報

SQL は読むだけでは身につきません。このサイトの DB ラボで、実際に書いて流す練習を毎日少しずつ続けるのが近道です。

この章のまとめ

🖨 まとめシート(印刷・PDF)
  • 選考の流れと、SQL・設計の実技があること
  • 結論→仕組み→注意点→実体験の4段で答える
  • 準備期間に合わせて優先順位をつける

この章のクイズ

面接ではこう聞かれる

まず答えを見ずに声に出して答え、そのあと開いて比べる。

Q1作ったデータ基盤で、利用者にどんな変化がありましたか?

模範回答

例えば「営業のレポートを作り直した」という経験なら、次のように話します。それまでは各担当者が業務 DB から毎週 CSV を出し、スプレッドシートで集計していて、人によって数字が違い、作るのに半日かかっていました。そこで注文と顧客を DWH に毎晩取り込み、dbt で「売上」の定義を1つにまとめた mart とダッシュボードを作り、主キーの重複や件数の急変をテストで見張るようにしました。

結果として、レポート作りの時間はほぼなくなり、会議で数字が食い違うことがなくなりました。ダッシュボードの閲覧数も追っていて、営業の大半が毎週見るようになったことを確かめています。一方で、最初は定義を合意しないまま作り始めて手戻りがあったので、今は作る前に指標の定義を文章で合意するようにしています。このように「前の状態 → したこと → 測った変化 → 学び」の順で、自分の経験の数字に置き換えて話します。

深掘りされたら

  • 利用が伸びなかったものはありますか? その理由は?
  • 成果をどうやって測りましたか?

見られているポイント利用状況と成果

Q2これまでで一番大きかったデータの障害と、そこから変えたことを教えてください。

模範回答

例えば、次のような話し方をします。CDC の取り込みが週末に止まり、月曜の朝まで誰も気づかず、週末の売上が0と表示されたことがありました。原因は、読み手が止まっている間に PostgreSQL のレプリケーションスロットが WAL をため続け、業務 DB のディスクも圧迫しかけていたことでした。

その場では、取り込みを再開して週末分を取り直し、利用者には影響の範囲を説明しました。変えたことは3つで、取り込みの遅延とスロットの大きさに監視とアラートを入れたこと、テーブルの鮮度のチェックを入れて「更新が止まった」ことに数時間で気づけるようにしたこと、復旧の手順を書いて誰でも対応できるようにしたことです。

深掘りされたら

  • その障害で、利用者はどう感じていましたか?

見られているポイント原因の理解の深さと、仕組みでの再発防止

Q3利用者の要望と、データ基盤の品質やコストがぶつかったときは、どうしましたか?

模範回答

例えば、営業から「ダッシュボードを1分ごとに更新してほしい」と頼まれたときの話をします。そのまま作ると DWH の料金が大きく増えるので、まず「1分ごとの数字で何を決めるのか」を聞きました。すると、実際に必要なのはセールの当日だけで、普段は1時間ごとで足りることが分かりました。

そこで、普段は毎時、セールの日だけ15分ごとに更新する案と、それぞれの費用を見せて合意しました。要望を断るのではなく、目的に立ち返って選択肢と費用を並べ、利用者に選んでもらうのが大事だと考えています。

深掘りされたら

  • 合意できなかったら、どうしますか?

見られているポイント目的に立ち返る姿勢と、選択肢・費用を示す交渉