Python
Sei stato uno sviluppatore senior alla Tochka Bank o non c'era un sistema di livelli?
da 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}]
Parlaci dell'ultimo compito che hai svolto per l'applicazione principale.
Cos'è Python e come viene eseguito il codice in esso (esecuzione del codice)?
Cos'è il teorema CAP?
Come correggere una condizione di race durante la deduzione del saldo in Django?
Cos'è un gestore di contesto, a cosa serve e come crearne uno?
Cosa è davvero importante per te in un luogo di lavoro? Puoi descrivere un'azienda datrice di lavoro in cui sarebbe confortevole lavorare a lungo termine?
Come implementare A() + B() = C()? Come sommare due oggetti e ottenere un terzo?
Come ti comporti riguardo alla revisione del codice, alle critiche durante la revisione del codice? Fornisci tu stesso un feedback dettagliato? Hai avuto conflitti con i colleghi a causa di questo, come li hai risolti?
Parliamo più dettagliatamente del microservizio di notifiche: la sua logica, le difficoltà di sviluppo e il vostro contributo.
Cosa ti motiva e cosa ti demotiva nel lavoro?
Cos'è GraphQL e in cosa si differisce da REST?
C'erano aree di responsabilità tra i quattro sviluppatori backend?
Come avviene il routing delle richieste (classificazione per tipo di domanda)?
Potresti sostenere un colloquio tecnico domani per evitare ritardi?
Come definisci i confini delle funzionalità che devono essere separate in un microservizio?
Sei disposto a imparare nuove tecnologie?
Oltre a Python, in quali altri linguaggi hai lavorato o ti interessano ora?
Parlaci di te e soprattutto della tua attuale azienda e progetto.