# CI/CDとコード品質 (Data Engineering) > Ruff、Pylint、Poetry、GitHub Actions、CI/CDパイプライン、自動テスト、pre-commit hooks、code coverage - 20 面接問題 - Mid-Level - [面接問題: Data Engineering](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions.md) ## 1. PythonエコシステムにおけるRuffとは何ですか? **回答** Ruffは、Rustで書かれた非常に高速なPython用linterおよびformatterです。Flake8、isort、Blackなどのツールを有利に置き換え、10〜100倍のパフォーマンスを提供します。Ruffは700以上のlintingルールをサポートし、CI/CDパイプラインやpre-commit hooksに簡単に統合できます。 ## 2. Poetryにおけるpyproject.tomlファイルの主な役割は何ですか? **回答** pyproject.tomlファイルは、PoetryによるPythonプロジェクトの中央設定ファイルです。プロジェクトのメタデータ(名前、バージョン、説明)、本番および開発依存関係、スクリプト、Ruffやpytestなどのツール設定を定義します。この標準化されたファイルは、setup.py、requirements.txt、setup.cfgを置き換えます。 ## 3. 既存プロジェクトのすべての依存関係をインストールするPoetryコマンドはどれですか? **回答** poetry installコマンドはpyproject.tomlとpoetry.lockファイルを読み取り、分離された仮想環境にプロジェクトのすべての依存関係をインストールします。poetry.lockが存在する場合、再現性を保証するために正確なバージョンが使用されます。それ以外の場合、Poetryは依存関係を解決し、lockファイルを作成します。 ## さらに17問利用可能 - Gitコンテキストにおけるpre-commit hookとは何ですか? - GitHub Actionsワークフローの基本構造は何ですか? 無料で登録: https://sharpskill.dev/ja/login ## その他のData Engineering面接トピック - [Linux & Shell - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/linux-shell-basics.md): 20問, Junior - [Git & GitHub - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/git-github-fundamentals.md): 20問, Junior - [データエンジニアリングのための高度なPython](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/python-advanced-de.md): 25問, Junior - [Docker - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/docker-fundamentals.md): 25問, Junior - [Google Cloud Platform - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/gcp-fundamentals.md): 20問, Junior - [Docker Compose](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/docker-compose.md): 20問, Mid-Level - [FastAPI - データAPI](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/fastapi.md): 20問, Mid-Level - [Data Engineering向けの高度なSQL](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/sql-advanced-de.md): 20問, Mid-Level - [Data Lake - アーキテクチャと取り込み](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/data-lake.md): 20問, Mid-Level - [データエンジニアリングのためのBigQuery](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/bigquery-de.md): 20問, Mid-Level - [PostgreSQL - 管理](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/postgresql-admin.md): 20問, Mid-Level - [Data EngineeringのためのData Modeling](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/data-modeling-de.md): 20問, Mid-Level - [Fivetran & Airbyte - データ取り込み](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/fivetran-airbyte.md): 20問, Mid-Level - [dbt - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/dbt-fundamentals-de.md): 20問, Mid-Level - [Apache Airflow - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/airflow-fundamentals.md): 20問, Mid-Level - [Kubernetes - 基礎](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/kubernetes-fundamentals.md): 20問, Mid-Level - [dbt - 高度な機能](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/dbt-advanced-de.md): 20問, Senior - [ETL / ELT / ETLT パターン](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/etl-elt-patterns.md): 20問, Senior - [Apache Airflow - 上級](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/airflow-advanced.md): 20問, Senior - [Airflow + dbt - パイプラインオーケストレーション](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/airflow-dbt-integration.md): 20問, Senior - [PySpark - 大規模処理](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/pyspark.md): 20問, Senior - [Google Pub/Sub - データストリーミング](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/pubsub-streaming.md): 20問, Senior - [Apache Beam & Dataflow](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/apache-beam-dataflow.md): 20問, Senior - [Kubernetes - 本番環境とスケーリング](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/kubernetes-advanced.md): 20問, Senior - [Terraform - Infrastructure as Code](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/terraform.md): 20問, Senior - [NoSQLデータベース](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/nosql-databases.md): 20問, Senior - [モダンなData Architecture](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/data-architecture.md): 20問, Senior - [モニタリングとオブザーバビリティ](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/monitoring-observability.md): 20問, Senior - [IAMとデータセキュリティ](https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/iam-security-de.md): 20問, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/ja/technologies/data-engineering/interview-questions/ci-cd-code-quality