Dashboard penjualan yang selalu mutakhir, laporan mingguan yang angkanya konsisten, dan model rekomendasi yang menerima data terbaru — semuanya bergantung pada pekerjaan yang jarang terlihat oleh pengguna akhir. Data engineer adalah orang yang berada di balik layar tersebut: merancang pipeline, menjaga data tetap mengalir, dan memadamkan masalah sebelum dirasakan konsumen data. Pada chapter ini kita membedah tanggung jawab utamanya, kesehariannya, dan keterampilan yang perlu dikuasai.
Tanggung Jawab Utama #
Tanggung jawab data engineer dapat dikelompokkan menjadi lima area berikut:
- Membangun dan merawat pipeline: menulis kode ingestion dan transformation, lalu memastikan pipeline berjalan sesuai jadwal.
- Merancang penyimpanan data: menentukan struktur tabel di data warehouse, memilih strategi partition, dan menstandarkan penamaan agar mudah dicari.
- Menjaga kualitas data: memasang validasi schema, memantau anomali volume, dan menyelidiki penyebab data yang tidak lengkap.
- Mengelola infrastruktur: menyiapkan environment untuk tools seperti Apache Airflow atau Spark, termasuk pembaruan versi dan pengaturan kapasitas.
- Mendukung konsumen data: menjawab pertanyaan dari analis, mendokumentasikan lineage tabel, dan menambahkan sumber data baru sesuai kebutuhan bisnis.
Kelima area tersebut menuntut pemrograman, pemahaman sistem, dan komunikasi — alasan peran ini dianggap posisi rekayasa perangkat lunak yang berfokus pada data.
Sehari Bersama Data Engineer #
Jadwal berikut menggambarkan satu hari kerja data engineer di sebuah perusahaan e-commerce:
| Waktu | Aktivitas |
|---|---|
| 09.00 | Memeriksa hasil pipeline malam: apakah tabel fact_orders terisi lengkap tanpa kegagalan? |
| 09.30 | Menindaklanjuti alert kualitas: 2.300 baris pesanan kemarin tidak memiliki customer_id. |
| 10.30 | Menambahkan kolom channel pada pipeline ingestion sesuai permintaan tim marketing. |
| 13.00 | Meninjau pull request pipeline dbt dari rekan satu tim sebelum digabungkan. |
| 15.00 | Menangani job Spark yang gagal karena kolom di database sumber berubah tanpa pemberitahuan. |
| 16.30 | Memperbarui dokumentasi lineage untuk tabel baru yang akan dipakai tim analis. |
Pola dari jadwal di atas: sebagian besar waktu dihabiskan menjaga sistem yang sudah berjalan, bukan membangun yang baru dari nol. Perubahan schema di sumber, permintaan fitur, dan insiden kualitas adalah tiga pemicu kerja yang paling sering muncul. Karena itu, data engineer yang baik membangun sistem yang tahan perubahan — misalnya validasi schema sebelum proses utama berjalan.
Satu permintaan fitur kecil pun melalui siklus kerja yang khas. Kolom channel dari jadwal di atas, misalnya, dikerjakan dengan urutan berikut:
- Memperjelas definisi “channel” bersama tim marketing: sumber trafik atau kanal pembayaran?
- Memeriksa apakah data sumber sudah mencatat informasi tersebut.
- Menambahkan kolom pada job ingestion beserta pemetaan nilainya.
- Menguji pipeline pada data kemarin sebelum diaktifkan di produksi.
- Memberi tahu analis bahwa kolom baru sudah tersedia beserta makna nilainya.
Siklus singkat inilah yang mengisi kalender kerja data engineer — bukan proyek raksasa, melainkan deretan perubahan kecil yang harus selalu aman.
Keterampilan yang Dibutuhkan #
Peta keterampilan berikut perlu dikuasai sebelum melamar posisi ini:
- SQL dan Python: fondasi hampir semua pekerjaan data — dari menulis query hingga membangun logika pipeline.
- Database dan warehouse: memahami perbedaan database operasional seperti PostgreSQL dengan warehouse analitik, termasuk dimensional modeling.
- Orchestration: menguasai minimal satu tool penjadwalan seperti Apache Airflow atau Dagster .
- Pemrosesan data skala besar: memahami cara kerja Apache Spark untuk data yang tidak muat di satu mesin.
- Transformasi berbasis SQL: menggunakan dbt untuk mengelola transformasi warehouse secara teruji dan terdokumentasi.
- Komunikasi: menerjemahkan kebutuhan bisnis menjadi desain teknis, dan menjelaskan kendala teknis ke pihak non-teknis dengan jelas.
Bekerja dalam Tim Data #
Data engineer jarang bekerja sendiri. Analis datang dengan pertanyaan bisnis, data scientist meminta fitur untuk model, engineer backend mengubah schema database aplikasi, dan tim produk menentukan prioritas sumber data baru. Data engineer berada di titik temu semua pihak tersebut — menyediakan jalur data yang sama agar tiap tim tidak membangun salurannya sendiri.
Ketergantungan tersebut menjelaskan mengapa dokumentasi penting dalam pekerjaan ini. Ketika lineage tiap tabel tercatat jelas, analis tahu angka mana yang dapat dipercaya, dan penyelidikan insiden berjalan jauh lebih cepat. Peran data engineer, pada akhirnya, menumbuhkan kepercayaan terhadap data di seluruh organisasi.
Namun di lapangan, judul lowongan sering mencampurkan data engineering dengan peran data lain — yang paling sering tertukar adalah data science. Kita bedah perbedaannya pada chapter Data Engineering vs Data Science.