Tools
Languages
C# / .NET 8
My primary backend language. ASP.NET Core — ergonomic, fast, onboardable.
TypeScript
For UI and small Node services. Strict mode, no any, no exceptions.
Python
Scripts, data work, small FastAPI services.
SQL (Postgres)
More expressive than people think. I write the query before the API.
Backend
ASP.NET Core
The main framework on the C# side. Minimal API for speed, MVC when needed.
FastAPI
On the Python side — type-safe, OpenAPI for free.
Postgres 16
Default database. JSONB covers most 'we need NoSQL' cases.
Redis
Caching, rate limits, ephemeral session state. Not as a primary store.
EF Core
ORM on .NET. Migration history is decent.
Infra & ops
Docker + Compose
Local dev. Reproducible enough for the team.
CI/CD pipelines
Tests, lint, deploy on tag. Self-hosted runner.
Nginx
Edge in front of every service. Boring, well-understood, fast.
Telegram Bot API
Internal notifications, deploy alerts, KPI reports.
Frontend
Next.js 14
App Router for new work. RSC where it pays for itself.
Tailwind
Stops me re-inventing CSS naming every project.
Framer Motion
Animations only when they communicate. This site is the maximum.
Editors & local
JetBrains Rider
.NET work. The refactor tools earn the license.
VS Code
Everything else. Vim bindings, minimal extensions.
Zsh + Starship
Nothing fancy. Two-line prompt and git status.
tmux
One window per project. Same layout on every machine.
Conspicuously absent: Kubernetes for three services, MongoDB on the first project, GraphQL for two endpoints, microservices for a team of three. Each has burned me. I'd use them again — at the sixth project that needs them, not the first.