Какой технологический стек ты используешь в работе?

«Какой технологический стек ты используешь в работе?» — вопрос из категории Софт-скиллы, который задают на 26% собеседований Data Scientist / ML Инженер. Ниже — развёрнутый пример ответа, который можно адаптировать под свой опыт.

Ответ

В моей текущей работе основным стеком является Python для бэкенда и анализа данных. Я активно использую:

  • Бэкенд-фреймворки: FastAPI для высоконагруженных API и Django для монолитных приложений.
  • Базы данных: PostgreSQL для реляционных данных, Redis для кэширования и Celery для фоновых задач.
  • Инфраструктура: Docker для контейнеризации, Git для контроля версий, и CI/CD пайплайны на основе GitHub Actions.
  • Тестирование: pytest для модульного и интеграционного тестирования.

Пример настройки простого эндпоинта на FastAPI:

from fastapi import FastAPI
from pydantic import BaseModel

app = FastAPI()

class Item(BaseModel):
    name: str
    price: float

@app.post("/items/")
async def create_item(item: Item):
    # Логика сохранения в БД
    return {"item_name": item.name, "message": "Item created"}

Также имею опыт работы с облачными платформами, в частности с развертыванием сервисов на AWS (EC2, RDS, S3).