Frederik Rybansky

AI InfrastructureAI AgentsBratislava, SK

Stack

Technologies

Tools I reach for, and the reasoning behind the boring choices. If you need something not on this list, ask — the list is a habit, not a limit.

I have strong defaults and no loyalty to vendors. What matters is whether a technology helps your team ship and debug it in two years.

Languages

  • TypeScript
  • Node.js
  • Python
  • SQL
  • Go

AI and agents

  • Anthropic Claude
  • OpenAI GPT
  • Google Gemini
  • RAG pipelines
  • MCP — Model Context Protocol
  • Tool use & function calling
  • Vector databases (pgvector, Qdrant)
  • Cross-encoder rerankers
  • Evaluation harnesses
  • Prompt and context engineering
  • Guardrails and PII redaction
  • AI gateway and routing

Platform

  • AWS
  • Docker
  • Kubernetes
  • Terraform
  • PostgreSQL
  • Redis
  • Nginx
  • OpenTelemetry
  • Prometheus
  • Grafana

Product

  • React
  • Next.js
  • Node.js APIs
  • GraphQL
  • tRPC
  • Design systems
  • Accessibility (WCAG)
  • i18n

Delivery

  • GitHub Actions
  • Playwright
  • Vitest
  • Pytest
  • CI/CD pipelines
  • Security review
  • Technical writing

Choices I make on purpose

PostgreSQL before a vector database

If you already run Postgres, pgvector is usually the right answer: one less system to operate, one transaction boundary, one backup strategy. A standalone vector store earns its place at higher scale or with complex filtering.

Provider-agnostic by default

One gateway interface, no vendor SDK in product code. Model choice becomes a routing and cost decision rather than an architectural commitment.

Managed inference first

Hosted APIs beat a GPU cluster for most enterprise workloads on both cost and time-to-first-value. I will model the break-even point honestly rather than assuming self-hosting is the mature choice.

Evaluation before optimisation

Almost every "the AI got worse" report is a missing test suite. Fix the measurement, then tune.

Multilingual as a requirement

Retrieval quality, evaluation sets and content all change per language. Design for that from the first sprint and it is normal work; retrofit it and it is a rewrite.