Расскажи про опыт работы с CI/CD

«Расскажи про опыт работы с CI/CD» — вопрос из категории Софт-скиллы, который задают на 31% собеседований Android Разработчик. Ниже — развёрнутый пример ответа, который можно адаптировать под свой опыт.

Ответ

Имею опыт настройки и поддержки CI/CD пайплайнов на GitHub Actions, Bitrise и GitLab CI/CD.

Основные задачи:

  • Автоматизация сборки, тестирования (Unit, UI тесты) и деплоя в Firebase App Distribution / Play Console.
  • Интеграция SonarQube для анализа кода.
  • Управление flavors и build variants для разных окружений (dev, staging, prod).

Пример GitHub Actions для сборки и деплоя APK:

name: Android CI  
on: push  
jobs:  
  build:  
    runs-on: ubuntu-latest  
    steps:  
      - uses: actions/checkout@v3  
      - uses: actions/setup-java@v3  
        with: { java-version: '17' }  
      - run: ./gradlew assembleRelease  
      - uses: actions/upload-artifact@v3  
        with: { name: app-release, path: app/build/outputs/apk/release/ }  

Также работал с Fastlane для автоматизации публикации в маркетплейсы.

Видео-ответы