Python
Что такое контекстный менеджер в Python? Зачем нужен? Как написать свой?
from fastapi import FastAPI, UploadFile, Response from fastapi.responses import StreamingResponse from pydantic import BaseModel, field_validator import base64 app = FastAPI() class PdfSchema(BaseModel): filename: str content_type: str data: str # base64 pdf 10мб @app.get("/data", response_model=PdfSchema) async def get_data(): return await service.get_big_data() @app.get("/download") async def download(): with open("big.pdf", "rb") as f: data = f.read() return Response(content=data, media_type="application/pdf") def heavy_pdf_parse(data: bytes) -> dict: # CPU-heavy логика return {"size": len(data)} @app.post("/parse") async def parse(file: UploadFile): content = await file.read() result = heavy_pdf_parse(content) return result @app.get("/users") async def get_users(): users = await repo.get_users() result = [] for u in users: posts = await repo.get_posts(u["id"]) result.append({"user": u, "posts": posts}) return result @app.get("/download-two") async def download_two(): def iterfile(): with open("big.pdf", "rb") as f: yield from f return StreamingResponse(iterfile(), media_type="application/pdf") class service: @staticmethod async def get_big_data(): return { "filename": "file.pdf", "content_type": "application/pdf", "data": base64.b64encode(b"fake").decode(), } class repo: @staticmethod async def get_users(): return [{"id": 1}, {"id": 2}] @staticmethod async def get_posts(user_id: int): return [{"id": 1, "user id": user_id}]
Классический вопрос: что произойдёт, если положить в словарь ключи 1 (int), 1.0 (float) и True (bool)?
Что такое интерфейс в Go, как он устроен внешне и внутренне?
Что такое alignment и padding в Go, как они работают?
Что такое ресивер (receiver) в Go, какие они бывают, для чего используются?
Что такое слайс в Go, из чего он состоит, как работает?
Как проверить что значение внутри interface{} равно nil (написать код)?
Работал с Protocol в Python? Что такое дженерики (Generics)?
Как работает Read Committed на уровне двух транзакций? Приведи пример.
Расскажи про уровни изоляции транзакций.
Расскажи про Pydantic. Чем отличается от dataclass?
Расскажи про способы выполнения кода в Python: многопроцессорность, многопоточность, асинхронность.
Расскажи про индексы в Postgres. Какие бывают, как работает B-tree индекс?
Расскажи про свой опыт. Чем занимался, с чем работал?
Расскажи про MVCC (Multi-Version Concurrency Control).
Какие пакетные менеджеры используешь? Зачем нужен lock-файл?
Расскажи про оконные функции в SQL.
Можно ли использовать Nginx в качестве сервера для FastAPI? Может ли он заменить Uvicorn?
Что-нибудь про паттерн Singleton можешь рассказать?