# dbt - Zaawansowane funkcje (Data Engineering) > Makra Jinja, testy niestandardowe, packages, hooks, snapshots (SCD), incremental models, dbt Cloud, CI/CD - 20 pytań z rozmów - Senior - [Pytania z rozmów: Data Engineering](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne.md) ## 1. Jaka jest główna funkcja makr Jinja w dbt? **Odpowiedź** Makra Jinja umożliwiają ponowne wykorzystanie kodu SQL w wielu modelach dbt. Działają jak funkcje, które przyjmują parametry i zwracają dynamicznie generowany kod SQL. Pozwala to uniknąć duplikacji kodu i ułatwia utrzymanie złożonych transformacji w całym projekcie. ## 2. Jak zdefiniować w pliku makro dbt nadające się do wielokrotnego użytku? **Odpowiedź** Makro dbt definiuje się za pomocą składni Jinja macro/endmacro w pliku .sql w folderze macros. Nazwa makra jest podawana po słowie kluczowym macro, a po niej parametry w nawiasach. Takie makro można następnie wywołać z dowolnego modelu w projekcie. ## 3. Jaka jest różnica między strategiami 'timestamp' i 'check' dla snapshots w dbt? **Odpowiedź** Strategia timestamp porównuje kolumnę daty aktualizacji (updated_at), aby wykryć zmiany, co jest bardziej wydajne, ponieważ porównuje tylko jedną kolumnę. Strategia check porównuje wartości określonych kolumn (check_cols), aby wykryć jakąkolwiek zmianę, przydatna, gdy nie ma niezawodnej kolumny timestamp. ## Jeszcze 17 dostępnych pytań - Które kolumny są automatycznie dodawane przez dbt podczas tworzenia snapshot? - Jak skonfigurować model incremental ze strategią 'merge' w dbt? Zarejestruj się za darmo: https://sharpskill.dev/pl/login ## Inne tematy rekrutacyjne Data Engineering - [Linux & Shell - Podstawy](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/linux-shell-basics.md): 20 pytań, Junior - [Git & GitHub - Podstawy](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/git-github-fundamentals.md): 20 pytań, Junior - [Zaawansowany Python dla Data Engineering](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/python-advanced-de.md): 25 pytań, Junior - [Docker - Podstawy](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/docker-fundamentals.md): 25 pytań, Junior - [Google Cloud Platform - Podstawy](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/gcp-fundamentals.md): 20 pytań, Junior - [CI/CD i jakość kodu](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/ci-cd-code-quality.md): 20 pytań, Mid-Level - [Docker Compose](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/docker-compose.md): 20 pytań, Mid-Level - [FastAPI - API danych](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/fastapi.md): 20 pytań, Mid-Level - [Zaawansowany SQL dla Data Engineering](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/sql-advanced-de.md): 20 pytań, Mid-Level - [Data Lake - Architektura i wprowadzanie danych](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/data-lake.md): 20 pytań, Mid-Level - [BigQuery dla Data Engineering](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/bigquery-de.md): 20 pytań, Mid-Level - [PostgreSQL - Administracja](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/postgresql-admin.md): 20 pytań, Mid-Level - [Data Modeling dla Data Engineering](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/data-modeling-de.md): 20 pytań, Mid-Level - [Fivetran & Airbyte - Pozyskiwanie danych](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/fivetran-airbyte.md): 20 pytań, Mid-Level - [dbt - Podstawy](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/dbt-fundamentals-de.md): 20 pytań, Mid-Level - [Apache Airflow - Podstawy](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/airflow-fundamentals.md): 20 pytań, Mid-Level - [Kubernetes - Podstawy](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/kubernetes-fundamentals.md): 20 pytań, Mid-Level - [Wzorce ETL / ELT / ETLT](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/etl-elt-patterns.md): 20 pytań, Senior - [Apache Airflow - Zaawansowany](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/airflow-advanced.md): 20 pytań, Senior - [Airflow + dbt - Orkiestracja pipeline'ów](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/airflow-dbt-integration.md): 20 pytań, Senior - [PySpark - Przetwarzanie na dużą skalę](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/pyspark.md): 20 pytań, Senior - [Google Pub/Sub - Streaming danych](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/pubsub-streaming.md): 20 pytań, Senior - [Apache Beam & Dataflow](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/apache-beam-dataflow.md): 20 pytań, Senior - [Kubernetes - Produkcja i skalowanie](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/kubernetes-advanced.md): 20 pytań, Senior - [Terraform - Infrastructure as Code](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/terraform.md): 20 pytań, Senior - [Bazy danych NoSQL](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/nosql-databases.md): 20 pytań, Senior - [Nowoczesna Data Architecture](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/data-architecture.md): 20 pytań, Senior - [Monitorowanie i obserwowalność](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/monitoring-observability.md): 20 pytań, Senior - [IAM i bezpieczeństwo danych](https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/iam-security-de.md): 20 pytań, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pl/technologies/data-engineering/pytania-rekrutacyjne/dbt-advanced-de