# dbt - Fitur lanjutan (Data Engineering) > Macro Jinja, tes kustom, packages, hooks, snapshots (SCD), incremental models, dbt Cloud, CI/CD - 20 pertanyaan wawancara - Senior - [Pertanyaan Wawancara: Data Engineering](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara.md) ## 1. Dalam dbt, apa fungsi utama dari macro Jinja? **Jawaban** Macro Jinja memungkinkan penggunaan kembali kode di beberapa model dbt. Macro bekerja seperti fungsi yang menerima parameter dan mengembalikan kode SQL yang dihasilkan secara dinamis. Hal ini menghindari duplikasi kode dan memudahkan pemeliharaan transformasi kompleks di seluruh proyek. ## 2. Bagaimana cara mendefinisikan macro dbt yang dapat digunakan kembali dalam sebuah file? **Jawaban** Macro dbt didefinisikan menggunakan sintaks Jinja macro/endmacro dalam file .sql di dalam folder macros. Nama macro ditentukan setelah kata kunci macro, diikuti oleh parameter dalam tanda kurung. Macro ini kemudian dapat dipanggil dari model mana pun dalam proyek. ## 3. Apa perbedaan antara strategi 'timestamp' dan 'check' untuk snapshots dbt? **Jawaban** Strategi timestamp membandingkan kolom tanggal pembaruan (updated_at) untuk mendeteksi perubahan, yang lebih performant karena hanya membandingkan satu kolom. Strategi check membandingkan nilai kolom yang ditentukan (check_cols) untuk mendeteksi perubahan apa pun, berguna ketika tidak ada kolom timestamp yang dapat diandalkan. ## 17 pertanyaan lagi tersedia - Kolom apa yang secara otomatis ditambahkan oleh dbt saat membuat snapshot? - Bagaimana cara mengkonfigurasi model incremental dengan strategi 'merge' di dbt? Daftar gratis: https://sharpskill.dev/id/login ## Topik wawancara Data Engineering lainnya - [Linux & Shell - Dasar-dasar](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/linux-shell-basics.md): 20 pertanyaan, Junior - [Git & GitHub - Dasar-dasar](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/git-github-fundamentals.md): 20 pertanyaan, Junior - [Python lanjutan untuk Data Engineering](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/python-advanced-de.md): 25 pertanyaan, Junior - [Docker - Dasar-dasar](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/docker-fundamentals.md): 25 pertanyaan, Junior - [Google Cloud Platform - Dasar-Dasar](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/gcp-fundamentals.md): 20 pertanyaan, Junior - [CI/CD dan Kualitas Kode](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/ci-cd-code-quality.md): 20 pertanyaan, Mid-Level - [Docker Compose](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/docker-compose.md): 20 pertanyaan, Mid-Level - [FastAPI - API Data](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/fastapi.md): 20 pertanyaan, Mid-Level - [SQL Lanjutan untuk Data Engineering](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/sql-advanced-de.md): 20 pertanyaan, Mid-Level - [Data Lake - Arsitektur dan Ingesti](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/data-lake.md): 20 pertanyaan, Mid-Level - [BigQuery untuk Data Engineering](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/bigquery-de.md): 20 pertanyaan, Mid-Level - [PostgreSQL - Administrasi](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/postgresql-admin.md): 20 pertanyaan, Mid-Level - [Data Modeling untuk Data Engineering](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/data-modeling-de.md): 20 pertanyaan, Mid-Level - [Fivetran & Airbyte - Ingesti Data](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/fivetran-airbyte.md): 20 pertanyaan, Mid-Level - [dbt - Dasar](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/dbt-fundamentals-de.md): 20 pertanyaan, Mid-Level - [Apache Airflow - Dasar-Dasar](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/airflow-fundamentals.md): 20 pertanyaan, Mid-Level - [Kubernetes - Dasar-Dasar](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/kubernetes-fundamentals.md): 20 pertanyaan, Mid-Level - [Pola ETL / ELT / ETLT](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/etl-elt-patterns.md): 20 pertanyaan, Senior - [Apache Airflow - Lanjutan](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/airflow-advanced.md): 20 pertanyaan, Senior - [Airflow + dbt - Orkestrasi Pipeline](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/airflow-dbt-integration.md): 20 pertanyaan, Senior - [PySpark - Pemrosesan Skala Besar](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/pyspark.md): 20 pertanyaan, Senior - [Google Pub/Sub - Streaming Data](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/pubsub-streaming.md): 20 pertanyaan, Senior - [Apache Beam & Dataflow](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/apache-beam-dataflow.md): 20 pertanyaan, Senior - [Kubernetes - Produksi dan Penskalaan](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/kubernetes-advanced.md): 20 pertanyaan, Senior - [Terraform - Infrastructure as Code](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/terraform.md): 20 pertanyaan, Senior - [Database NoSQL](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/nosql-databases.md): 20 pertanyaan, Senior - [Data Architecture Modern](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/data-architecture.md): 20 pertanyaan, Senior - [Monitoring dan Observability](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/monitoring-observability.md): 20 pertanyaan, Senior - [IAM dan Keamanan Data](https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/iam-security-de.md): 20 pertanyaan, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/id/technologies/data-engineering/pertanyaan-wawancara/dbt-advanced-de