# CI/CD et qualité de code (Data Engineering) > Ruff, Pylint, Poetry, GitHub Actions, pipelines CI/CD, tests automatisés, pre-commit hooks, code coverage - 20 questions d'entretien - Confirmé - [Questions d'entretien: Data Engineering](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien.md) ## 1. Qu'est-ce que Ruff dans l'écosystème Python ? **Réponse** Ruff est un linter et formateur Python extrêmement rapide écrit en Rust. Il remplace avantageusement des outils comme Flake8, isort, et Black en offrant des performances 10 à 100 fois supérieures. Ruff supporte plus de 700 règles de linting et s'intègre facilement dans les pipelines CI/CD et les hooks pre-commit. ## 2. Quel est le rôle principal du fichier pyproject.toml avec Poetry ? **Réponse** Le fichier pyproject.toml est le fichier central de configuration d'un projet Python avec Poetry. Il définit les métadonnées du projet (nom, version, description), les dépendances de production et de développement, les scripts, et les configurations d'outils comme Ruff ou pytest. Ce fichier standardisé remplace setup.py, requirements.txt et setup.cfg. ## 3. Quelle commande Poetry permet d'installer toutes les dépendances d'un projet existant ? **Réponse** La commande poetry install lit le fichier pyproject.toml et le fichier poetry.lock pour installer toutes les dépendances du projet dans un environnement virtuel isolé. Si poetry.lock existe, les versions exactes sont utilisées pour garantir la reproductibilité. Sinon, Poetry résout les dépendances et crée le fichier lock. ## 17 questions supplémentaires disponibles - Qu'est-ce qu'un pre-commit hook dans le contexte Git ? - Quelle est la structure de base d'un workflow GitHub Actions ? S'inscrire gratuitement: https://sharpskill.dev/fr/login ## Autres sujets d'entretien Data Engineering - [Linux & Shell - Fondamentaux](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/linux-shell-basics.md): 20 questions, Junior - [Git & GitHub - Fondamentaux](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/git-github-fundamentals.md): 20 questions, Junior - [Python avancé pour le Data Engineering](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/python-advanced-de.md): 25 questions, Junior - [Docker - Fondamentaux](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/docker-fundamentals.md): 25 questions, Junior - [Google Cloud Platform - Fondamentaux](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/gcp-fundamentals.md): 20 questions, Junior - [Docker Compose](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/docker-compose.md): 20 questions, Confirmé - [FastAPI - APIs de données](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/fastapi.md): 20 questions, Confirmé - [SQL avancé pour le Data Engineering](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/sql-advanced-de.md): 20 questions, Confirmé - [Data Lake - Architecture et ingestion](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/data-lake.md): 20 questions, Confirmé - [BigQuery pour le Data Engineering](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/bigquery-de.md): 20 questions, Confirmé - [PostgreSQL - Administration](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/postgresql-admin.md): 20 questions, Confirmé - [Data Modeling pour le Data Engineering](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/data-modeling-de.md): 20 questions, Confirmé - [Fivetran & Airbyte - Ingestion de données](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/fivetran-airbyte.md): 20 questions, Confirmé - [dbt - Fondamentaux](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/dbt-fundamentals-de.md): 20 questions, Confirmé - [Apache Airflow - Fondamentaux](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/airflow-fundamentals.md): 20 questions, Confirmé - [Kubernetes - Fondamentaux](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/kubernetes-fundamentals.md): 20 questions, Confirmé - [dbt - Fonctionnalités avancées](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/dbt-advanced-de.md): 20 questions, Senior - [Patterns ETL / ELT / ETLT](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/etl-elt-patterns.md): 20 questions, Senior - [Apache Airflow - Avancé](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/airflow-advanced.md): 20 questions, Senior - [Airflow + dbt - Orchestration de pipelines](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/airflow-dbt-integration.md): 20 questions, Senior - [PySpark - Traitement à grande échelle](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/pyspark.md): 20 questions, Senior - [Google Pub/Sub - Streaming de données](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/pubsub-streaming.md): 20 questions, Senior - [Apache Beam & Dataflow](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/apache-beam-dataflow.md): 20 questions, Senior - [Kubernetes - Production et scaling](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/kubernetes-advanced.md): 20 questions, Senior - [Terraform - Infrastructure as Code](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/terraform.md): 20 questions, Senior - [Bases de données NoSQL](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/nosql-databases.md): 20 questions, Senior - [Architecture Data moderne](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/data-architecture.md): 20 questions, Senior - [Monitoring et observabilité](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/monitoring-observability.md): 20 questions, Senior - [IAM et sécurité des données](https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/iam-security-de.md): 20 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/fr/technologies/data-engineering/questions-entretien/ci-cd-code-quality