本文へ移動

ホーム / Data / 第1部 データエンジニアとは

第1部 データエンジニアとは・第1章

データエンジニアとは

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

データエンジニアの仕事の範囲と、求められる技術の全体像を押さえる。

1.1データエンジニアとは

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

業務や行動のデータを集め、整え、分析や機械学習で使える形で提供する基盤を作る職種。

データエンジニアは、業務システムやアプリの行動ログなど、あちこちに散らばったデータを集めて・ためて・整えて、分析や機械学習で「そのまま使える形」で届ける仕組み(データ基盤)を作る職種です。自分で分析して結論を出すよりも、ほかの人が正しい数字を、決まった時間に、迷わず使える状態を作ることが仕事の中心です。

データは4段階を流れて「使える形」になる業務 DBSaaSログ・イベント取り込みバッチ・CDC保存レイク・DWH変換dbt・テスト活用BI・MLどの段階でも:やり直せるか・定義は利用者と合っているか・いくらかかるか
データ基盤の4段階の流れ

データの流れは、だいたい次の4段階です。

  • 取り込み:業務 DB・SaaS・ログ・イベントから集める。夜に1回まとめて取るバッチか、変更をほぼリアルタイムで流す CDC・ストリームか。
  • 保存:オブジェクトストレージ(S3 など)のデータレイクや、クラウド DWH(BigQuery・Snowflake など)に置く。
  • 変換:重複を除き、型をそろえ、テーブルをつないで、分析の単位(注文1件・1日など)に整える。品質のテストもここで流す。
  • 活用:BI のダッシュボード、アドホックな分析、機械学習の特徴量、業務システムへの書き戻し(リバース ETL)。

どの段階でも「途中で止まったら、やり直して同じ結果になるか」「数字の定義は利用者と合っているか」「いくらかかっているか」を意識するのが、この職種らしい視点です。

面接ではこう答える

データエンジニアは、業務 DB やアプリのログなど散らばったデータを集めて、ためて、整えて、分析や機械学習で使える形で届ける基盤を作る職種です。流れは取り込み・保存・変換・活用の4段階で、自分で結論を出すよりも、ほかの人が正しい数字を決まった時間に迷わず使える状態を作ることが仕事の中心です。どの段階でも、やり直して同じ結果になるか、定義が利用者と合っているか、コストはいくらかを意識します。

ひとことで

データエンジニアは基盤とデータを作り、アナリティクスエンジニアは DWH の中の分析用テーブルと指標を作り、アナリストとサイエンティストはそれを使って問いに答える。

データの仕事は、データの流れのどこを受け持つかで職種が分かれます。境目は会社によって違い、小さなチームでは1人が全部をやることもあります。

データの流れの上での、4つの職種の受け持ちデータエンジニア集める・ためる取り込み・基盤アナリティクスエンジニアmart・指標の定義データアナリスト問いに答えるBI・分析サイエンティスト予測・最適化ML・統計
データ職種の受け持ちのおおよその位置
職種主な仕事主な道具
データエンジニア取り込み・保存・変換のパイプラインを作り、止まらず正しく動かすSQL・Python・DWH・Kafka(データを流し続けるための仕組み)・Airflow・Spark
アナリティクスエンジニアDWH の中で分析しやすいテーブル(mart)と指標の定義を作るSQL・dbt・BI ツール
データアナリストデータから事業の問いに答え、意思決定を助けるSQL・BI・スプレッドシート
データサイエンティスト・ML エンジニア統計や機械学習で予測・最適化をするPython・ノートブック・ML の基盤

面接で「アナリストとの違いは?」と聞かれたら、誰のために何を作るかで答えると伝わります。データエンジニアは「データを使う人」のために基盤とデータそのものを作り、アナリストは「意思決定する人」のために答えを作ります。

面接ではこう答える

データの流れのどこを受け持つかで分かれます。データエンジニアは取り込みや変換のパイプラインを作り、止まらず正しく動かします。アナリティクスエンジニアは dbt などで DWH の中の分析用テーブルと指標の定義を作り、アナリストはそれを使って事業の問いに答え、サイエンティストは統計や機械学習で予測をします。境目は会社によって違うので、応募先ではどこまでを受け持つかを確かめます。

データエンジニアの毎日は、依頼への対応とパイプラインの運用が中心です。依頼をそのまま作ると「思っていた数字と違う」になりがちなので、作る前に確かめることを決めておきます。

よくある依頼最初に確かめること
「この数字を毎日ダッシュボードで見たい」何を決めるために見るか、指標の定義(税込か、キャンセルを引くか)、何時までに必要か
「SaaS のデータも DWH に入れてほしい」API の制限、取りたい項目、更新の頻度、個人情報が含まれるか
「先月の数字が変わった」いつの時点の数字と比べたか、遅れて届いたデータや定義の変更がなかったか
「クエリが遅い・高い」どのテーブルをどれだけ読んでいるか、毎回同じ集計をしていないか
「このテーブルを使ってよいか」持ち主、更新の頻度、テストの有無、権限

運用では、朝いちばんにパイプラインの失敗とデータのテストの結果を確かめ、利用者が見る前に直すのが基本の動きです。

ひとことで

取り込み・保存・変換・実行の管理・活用の層ごとに道具を組み合わせる、クラウド DWH 中心の構成。

クラウド DWH を中心に、役割ごとの道具を組み合わせる構成をモダンデータスタックと呼ぶことがあります。製品の名前は変わっても、層の役割は変わりません。

データ基盤の道具を層で見る活用BI・ノートブック・リバース ETL・ML指標・カタログセマンティックレイヤー・データカタログ変換・品質dbt・Spark・データのテスト保存クラウド DWH・データレイク(Parquet・Iceberg)取り込み取り込みサービス・CDC・Kafka
下から上へデータが流れる。オーケストレーターが全体の実行を管理する
層役割道具の例
取り込み業務 DB・SaaS・ログから集めるFivetran・Airbyte などの取り込みサービス、Debezium、Kafka
保存安く大量に置き、SQL で読めるようにするBigQuery・Snowflake・Redshift、S3 と Iceberg・Delta Lake
変換・品質使える形に整え、テストするdbt、Spark、Great Expectations
実行の管理依存関係・スケジュール・再実行Airflow・Dagster・Prefect
活用見る・分析する・業務に戻すLooker・Tableau・Power BI、ノートブック、リバース ETL

面接で道具の名前を並べるより、「この層で何を解決するために、なぜその道具を選んだか」を話せることが大事です。

面接ではこう答える

モダンデータスタックは、クラウド DWH を中心に、取り込み、変換、実行の管理、BI などを層ごとに別の道具で組み合わせる構成です。たとえば取り込みサービスで DWH に入れ、dbt で SQL の変換とテストをし、Airflow で順番に実行し、BI で見る形です。道具は入れ替えられるので、層ごとに何を解決したいかで選ぶのが大事です。

データエンジニアに求められる技術を、このサイトの章と対応させると次のとおりです。★の多いものから順に固めると、実務にも面接にも早く効きます。

分野最低限できること章
SQLウィンドウ関数・CTE・集計を何も見ずに書ける。読む量を意識できる分析のための SQL
モデリングファクトの粒度を決め、スター型スキーマと SCD を説明できるデータモデリング
取り込みバッチと CDC とストリームを使い分けられるデータの取り込み
変換・運用冪等な処理・増分処理・バックフィルを設計できる変換
基盤DWH の料金の仕組みと、分散処理が遅くなる理由を説明できるDWH
品質・ガバナンステストと監視を置き、権限と個人情報を扱えるデータ品質
プログラミングPython で API から取り込む・ファイルを処理する程度は書ける—
ひとことで

地道な品質の作り込みと、利用者との合意(指標の定義)の両方を楽しめる人に向く。

向いている人は、目立たない品質の作り込み(NULL や重複を1つずつつぶす、失敗したら自動でやり直せるようにする)を面倒がらず、同時に「売上ってキャンセル分を引きますか?」のように利用者と定義を合意する会話も楽しめる人です。SQL を書くのが好き、仕組みで手作業をなくすのが好き、という人にも向きます。

キャリアとしては、基盤(取り込み・ストリーム・分散処理)を深める道のほかに、アナリティクスエンジニアという道があります。dbt などで DWH の中のモデリングと指標の定義を担当し、アナリストとエンジニアの間に立つ役割です。そこから、データ基盤全体の設計(データアーキテクト)や、ML の基盤、データのチームのリーダーへ進む人も多くいます。

道主に扱うもの伸ばすとよい力
データエンジニア(基盤)取り込み・ストリーム・分散処理・運用クラウド・プログラミング・障害対応
アナリティクスエンジニアDWH の中のモデリング・指標の定義・テストSQL・dbt・利用者との合意
データアーキテクト基盤全体の設計・権限・コスト技術の比較・説明・ガバナンス
ML の基盤特徴量・学習データ・モデルの配信ML の知識・ストリーム処理

面接ではこう答える

データエンジニアに向いているのは、NULL や重複を1つずつつぶすような地道な品質の作り込みを面倒がらず、同時に「売上はキャンセルを引きますか」のような定義の合意を利用者と楽しめる人です。キャリアは基盤を深める道のほか、DWH の中のモデリングを担うアナリティクスエンジニア、基盤全体を設計するデータアーキテクト、ML の基盤へ進む道があります。

この章のまとめ

🖨 まとめシート(印刷・PDF)
  • データエンジニア・アナリティクスエンジニア・アナリスト・サイエンティストの違い
  • 使われるデータを、正しく・新鮮に・安く届けるのが仕事
  • 道具は層ごとに役割で選ぶ

この章のクイズ

面接ではこう聞かれる

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

Q1データエンジニアとして大事にしていることは?

模範回答

一番は「信頼できるデータ」を届けることです。数字が一度でも間違うと、ダッシュボード自体が使われなくなるので、重複・欠損・鮮度をテストで自動的に見張り、おかしいときは利用者より先に気づけるようにしています。

次に利用者の視点です。テーブルを作る前に「誰が何を決めるために使うのか」「どのくらい新しい必要があるか」を聞き、指標の定義を文章にして合意してから作ります。最後にコストで、DWH は読む量がそのまま料金になるので、パーティションや増分処理で無駄に読まない設計を心がけています。

深掘りされたら

  • データの品質に問題が出たとき、利用者にどう伝えますか?
  • 鮮度とコストがぶつかったら、どう決めますか?

見られているポイント信頼できるデータ・利用者視点・コスト

Q2データエンジニアとアナリティクスエンジニア、データアナリストの違いは何ですか?

模範回答

データの流れのどこを受け持つかが違います。データエンジニアは、業務 DB やログからデータを取り込み、保存し、止まらず正しく動くパイプラインを作る、基盤の担当です。アナリティクスエンジニアは、DWH に入ったデータを dbt などで分析しやすいテーブルに整え、「売上」などの指標の定義をそろえる担当です。データアナリストは、そのテーブルを使って事業の問いに答え、意思決定を助ける担当です。

小さな会社では1人が全部をやることも多いので、名前より「自分はどこが得意で、どこまで責任を持てるか」を説明できることが大事だと考えています。

深掘りされたら

  • 小さなチームで1人しかいないとき、何から作りますか?

見られているポイント役割の境目を、データの流れに沿って説明できるか

Q3利用者から「このデータを毎日ほしい」と頼まれたら、まず何を確認しますか?

模範回答

作り始める前に、目的・定義・鮮度・使い方の4つを確認します。目的は「そのデータで何を決めるのか」で、ここが分かると本当に必要な粒度や列が見えてきます。定義は「売上はキャンセルを引くか、税込か」のような数字の意味で、文章にして合意します。鮮度は「何時までに、どの日の分まであればよいか」で、毎時か日次かで作りもコストも大きく変わります。

使い方は、ダッシュボードで見るのか、スプレッドシートに出すのか、別のシステムに渡すのかです。例えば「毎日」と言われても、実は週1回の会議で使うだけなら、日次のバッチで十分で、リアルタイムにする必要はありません。最後に、データの持ち主と、おかしいときの連絡先も決めておきます。

深掘りされたら

  • 要望が「とにかく全部ほしい」だったらどうしますか?
  • 鮮度の要望が厳しすぎるときは?

見られているポイント作る前に要件と定義を固める姿勢