Crescentek

Python

One language, four production roles.

Python's breadth is the pitch: web APIs, data pipelines, ML/LLM integration, and automation scripts all on one stack. FastAPI for APIs, Pandas for data, PyTorch for ML, AsyncIO for jobs — one team, one language, four use cases.

Web API
Data pipeline
ML / LLM
Automation
api/routes/properties.py
Python 3.12
FastAPI · PostgreSQL · SQLAlchemy
1from fastapi import FastAPI
2from sqlalchemy.orm import Session
3 
4app = FastAPI()
5 
6@app.get("/properties/{id}")
7async def get_property(
8 id: int, db: Session
9) -> PropertyResponse:
10 return db.query(Property)...
JSON APIs with auto-generated OpenAPI docs, type-safe requests, async I/O. Django REST Framework for heavier needs.
Where Python is the pragmatic pick

Python's strong suits, for real.

ML + LLM integrations
Anthropic, OpenAI, Hugging Face, LangChain — all Python-first. If you're building RAG, agent, or ML-powered features, Python is the shortest path.
Data processing at scale
Pandas, Polars, DuckDB, Dask. Processing gigabytes of CSV, transforming Excel exports, running analytics queries — this is Python's home turf.
Traditional web apps
Django for opinionated, batteries-included apps with admin + auth + ORM baked in. FastAPI for modern typed APIs. Flask for simple services.
Automation + scripting
Cron replacements, integration glue, API polling, file processing. Python ships on every Linux server; hires are abundant.
Reporting + BI pipelines
Generating scheduled reports, powering dashboards with pre-aggregated data, database migrations, data warehouse ETL. Airflow, dbt, and friends.
Scientific + numeric computing
NumPy, SciPy, PyTorch, TensorFlow. Anything where Python's slower interpreter is offset by C-backed libraries. Common in finance, research, engineering.
Framework by workload

Which Python framework fits which kind of project.

Django
The full-stack framework
Admin panel + ORM + auth + migrations + templating. Pick this when you'd otherwise reach for Rails or Laravel — batteries included for full web apps.
FastAPI
Modern typed APIs
JSON APIs with Pydantic validation, automatic OpenAPI docs, async support. Best Python framework for API-only backends in 2026.
Flask
Microframework for small services
Single-file services, internal tools, prototypes. Minimal opinions, maximum flexibility.
Airflow / Prefect / Dagster
Orchestration for data pipelines
Scheduled ETL, DAG-based workflows, retries and alerting, data quality checks. Industry standard for data engineering.
Celery / RQ
Background job workers
Redis-backed task queues, retries, scheduled jobs. Pairs with Django or Flask for any workload too slow for HTTP timeout.
LangChain / LlamaIndex
LLM application framework
RAG pipelines, agent orchestration, prompt templates, vector store integrations. Python's default for LLM apps.
The modern stack

The Python tooling we actually use in 2026.

Python's tooling has genuinely improved. Ruff for linting. uv for package management. Pyright/mypy for types. None of the 2010s-era pain.

Package management
Modern
uv (Rust-based, 10-100× faster)
Legacy
pip + pip-tools / Poetry
uv handles installs in seconds. Migrate old projects first chance.
Linting + formatting
Modern
Ruff (does both, ~100× faster)
Legacy
flake8 + black + isort
Ruff replaces three tools. Config in pyproject.toml. Faster than saving a file.
Type checking
Modern
Pyright (for VS Code users) / mypy
Legacy
No type checking
Static typing is table stakes. Type everything public; test-driven types in internal code.
Testing
Modern
pytest with fixtures + parametrize
Legacy
unittest
pytest is the default. hypothesis for property-based tests where relevant.
Dependencies
Modern
pyproject.toml (PEP 621)
Legacy
requirements.txt / setup.py
One file for deps, build config, tool config. requirements.txt only for lockfile backup.
Task running
Modern
just / make / poe
Legacy
Shell scripts
`just` for cross-platform task shortcuts (just test, just deploy). Less than 10 lines saves hours.
The honest tradeoffs

Where Python isn't the answer.

High-throughput real-time APIs
GIL-limited concurrency means Node.js or Go often outperforms Python for 10k+ req/s use cases. Async Python helps but has a ceiling.
Browser UI / frontend work
Python runs server-side. For frontend, JavaScript/TypeScript is the only real option. Pyodide exists but is niche.
Memory-constrained services
Python's runtime overhead is significant vs Go/Rust. For memory-limited environments (AWS Lambda cold starts, edge functions), smaller runtimes win.
Tight mobile app backends
If you need Swift/Kotlin/ObjC integration without a wrapper layer, native backends fit better. Python talks to mobile fine via REST but isn't embedded.
Systems programming / kernel work
Python is too high-level. This is Rust, C, or Go territory — Python slows to a crawl when you need OS-level control.
Teams forbidden from Python by policy
Some enterprises ban interpreted languages for specific workloads. Arguing policy is worse than choosing another stack.
Frequently asked

Python questions.

Django if you need admin, auth, ORM, sessions, templates all pre-wired. FastAPI if you're building API-only backends where speed and typing matter. They can coexist — admin in Django, public API in FastAPI sharing the database.
For 90% of business backends, no. Database queries, API calls, and I/O dominate the runtime. Python's interpreter speed only matters when you're CPU-bound. When it does matter, drop to NumPy/Rust extensions or Cython for hot paths.
Yes — Render, Railway, Fly.io, DigitalOcean App Platform all host Python services from ~€5–20/mo. For heavier workloads: AWS ECS, GCP Cloud Run, or self-hosted Kubernetes. ML-specific hosting: Modal, Replicate, HuggingFace.
Common and works well. Python backend, TypeScript frontend, shared types generated from OpenAPI spec. Tools like Nx, Turbo, or Nx's Python plugin help coordinate. We've built several of these.
Python is the default language for LLM applications. Anthropic SDK, OpenAI SDK, LangChain, LlamaIndex, and the entire ML ecosystem are Python-first. JavaScript ports exist but lag. For any serious AI work, Python is the practical choice.

Python for your project? Let's check the fit.

Share the workload — API, data pipeline, ML integration, automation — and we'll tell you if Python is the pragmatic pick or if another stack makes more sense.