Denis Khalizov

Senior Backend Engineer

Paris, FR | [email protected] | linkedin.com/in/deniskhalizov

Profile

Backend engineer with seven years of experience in Go and Java. At PerfectStay, I build and run Go services on AWS, mostly around pricing and cache pipelines. I recently replaced a cache pipeline after identifying scaling problems and profiled a slow path in a Go rule engine. I have also been adding OpenTelemetry to services that were difficult to debug. Based in Paris and fluent in English and French.

Technical Skills

Languages: Go, Java (11/Spring), Kotlin, Python, Rust, JavaScript
Cloud & Infra: AWS (ECS/Fargate, Lambda, DynamoDB, SQS/SNS, S3, ElastiCache), Docker, Kubernetes, Terraform
Data: PostgreSQL, MySQL, MariaDB, DynamoDB, Redis, ElastiCache
Observability: OpenTelemetry, Datadog, CloudWatch, Prometheus, Grafana, pprof
Testing & CI/CD: Go testing, GitHub Actions, GitLab CI, GoReleaser, Helm, Argo CD
Spoken Languages: English (Fluent), French (Fluent), Russian (Native)

Professional Experience

PerfectStay

Senior Backend Engineer (Go)

Paris, FR (Hybrid)
  • Replaced a serverless cache pipeline after identifying AWS quota and cost problems. The new Go pipeline runs on ECS Fargate Spot with SQS and Redis. After the cutover, DynamoDB spend for the pipeline fell by 97% and ECS spend by 88%.
  • Profiled a slow path in our Go rule engine with pprof. Preprocessing rules and reusing result slices cut allocations from 26 to 2 for indexed operations and from 2,619 to zero for full scans. The two benchmarks ran 2× and 5× faster.
  • Built a shared OpenTelemetry library used across eight Go services, covering HTTP and AWS SDK instrumentation, structured logging and trace propagation across queue boundaries.
  • Wrote our Go testing guide and technical documentation covering service architecture, data flows, APIs and CI/CD.
  • Added snapshot-based rollback to the release workflow after finding that production releases had no documented rollback path.
  • Investigated production problems involving goroutine leaks, Redis eviction, excessive retries, third-party API limits and batch jobs running beyond their execution window.

PopScreen Games

Backend Developer

Paris, FR
  • Sole backend engineer for a 20-person studio after the founding architect left. Owned the backend and cloud infrastructure for all of the studio's games.
  • Architected the backend for Wacky Battles, selected as Apple's "Game of the Day" in 83 countries, and supported the resulting global traffic.
  • Wrote the studio's core services: identity, billing and gameplay logic.

Rostelecom

Java Developer

Moscow, RU
  • Refactored a legacy Java 11/Kotlin codebase, mostly for performance and stability.

Technoserv Consulting

Java Developer

Moscow, RU
  • Built internal automation tools for test and release workflows, reducing repetitive manual verification.
  • Mentored junior developers and set up the team's onboarding process.

Personal Projects

These are five public examples from a wider set of products and personal tools. Most of the services run on my home k3s cluster with Helm and Argo CD; some use Cloudflare at the edge.

View all eight current projects →

Rivers

Real-time visualization of the French river network using official topology and live hydrometric observations.

  • Built a Go ingestion/API service and directed graph over official BD TOPAGE topology, compact custom binary protocols with 24-hour replay, and a five-pass WebGL2 flow renderer; deployed on k3s with Helm, Argo CD and Cloudflare.

Économie française

Interactive observatory of French economic activity built from official government datasets.

  • Built the Go/TypeScript stack: ingestion and reconciliation of eight datasets from three official sources, PostgreSQL aggregation, custom Brotli-compressed binary formats, and a two-pass WebGL2 density renderer; deployed on k3s with Helm, Argo CD and Cloudflare.

LegiFeed

Plain-language summaries and impact scores for new French laws. 1,400+ Journal Officiel texts processed, each linked back to its source.

  • Go and PostgreSQL ingest the DILA/Légifrance (PISTE) feeds. A DeepSeek model classifies and summarizes each text. A local extractive summary is the fallback. Strict JSON validation checks each output. React SSR on k3s, deployed with Helm and ArgoCD.

AssoRadar

Searchable directory of 2M+ French nonprofits built on the official open registries, with deduplication, ranking and source verification.

  • Go + PostgreSQL data API with in-memory search; daily CronJob refresh of the RNA/Waldec import pipeline; React SSR + MapLibre; distroless images on k3s behind Cloudflare edge cache.

Objectif Civique

Free, no-account preparation for France's 2026 civic exam, with sourced questions, practice scenarios, guides and a timed mock exam.

  • React PWA with local-only progress, custom SEO prerendering, and Playwright/Vitest coverage. Cloudflare Pages serves the frontend; scheduled quality checks run separately on k3s.

Education

Moscow Power Engineering Institute (MPEI)

Master's in Computer Engineering

Moscow, RU

Moscow Power Engineering Institute (MPEI)

Bachelor's in Computer Engineering

Moscow, RU

Conferences

Attendee: AWS Summit Paris (2025), FOSDEM (2025), DevFest Strasbourg (2024), Heisenbug (2019)