
Terraform - Infrastructure as Code
Providers, resources, state, modules, variables, outputs, plan/apply, workspaces, backends
1What is Terraform and what is its main advantage over manual infrastructure configuration?
What is Terraform and what is its main advantage over manual infrastructure configuration?
Answer
Terraform is an Infrastructure as Code (IaC) tool developed by HashiCorp that allows defining and provisioning infrastructure declaratively via configuration files. Its main advantage is reproducibility: the same configuration always produces the same result, eliminating human errors and enabling infrastructure versioning like code.
2What is the role of a provider in Terraform?
What is the role of a provider in Terraform?
Answer
A provider is a plugin that allows Terraform to interact with a specific platform (AWS, GCP, Azure, etc.). It translates Terraform resources into API calls to the target service. Each provider must be configured with necessary credentials and exposes the available resource types for that platform.
3What is the difference between a resource and a data source in Terraform?
What is the difference between a resource and a data source in Terraform?
Answer
A resource creates and manages an infrastructure element (creation, modification, deletion), while a data source allows reading information about existing resources without modifying them. Data sources are useful for referencing elements created outside Terraform or by other configurations.
What is the purpose of the terraform.tfstate file?
Which command should be run to see the changes Terraform will make without applying them?
+17 interview questions
Other Data Engineering interview topics
Linux & Shell - Fundamentals
Git & GitHub - Fundamentals
Advanced Python for Data Engineering
Docker - Fundamentals
Google Cloud Platform - Fundamentals
CI/CD and Code Quality
Docker Compose
FastAPI - Data APIs
Advanced SQL for Data Engineering
Data Lake - Architecture and Ingestion
BigQuery for Data Engineering
PostgreSQL - Administration
Data Modeling for Data Engineering
Fivetran & Airbyte - Data Ingestion
dbt - Fundamentals
Apache Airflow - Fundamentals
Kubernetes - Fundamentals
dbt - Advanced Features
ETL / ELT / ETLT Patterns
Apache Airflow - Advanced
Airflow + dbt - Pipeline Orchestration
PySpark - Large-Scale Processing
Google Pub/Sub - Data Streaming
Apache Beam & Dataflow
Kubernetes - Production and Scaling
NoSQL Databases
Modern Data Architecture
Monitoring and Observability
IAM and Data Security
Master Data Engineering for your next interview
Access all questions, flashcards, technical tests, code review exercises and interview simulators.
Start for free