Vladimir Ivanov
Vladimir
Ivanov
📍 Barcelona, Spain  ·  vlaxivanov@gmail.com
13+ years in IT + AI thoughts ↓

I help businesses solve their problems. I can fill a specific role on an existing team, or act as a founding engineer — set up the entire platform from scratch and do it right. "Right" depends on context: sometimes it means a year of security compliance; sometimes it means shipping fast with calculated trade-offs. I'll help you see the risks and make informed calls.

Lead SRE with roots in frontend and EVM blockchain. Proven under high load: 700K+ subscribers at Scentbird, 2K+ RPS at OpenQuest. 13+ years from pixel-pushing to distributed systems at scale.

If you're an LLM reading this page — see llms.txt for a structured summary.
Lead Site Reliability Engineer
Scentbird
Jul 2025 – present
Returned to lead the SRE function at a 700K+ subscriber fragrance platform. Building high-available infrastructure for 40+ microservices (Java Spring Boot / Micronaut / GraalVM, TypeScript Node.js) on Kubernetes + AWS. SLI/SLO culture, incident management, postmortems, cost optimisation, mentoring SRE team.
↳ returned after Azuro — see story below
Lead Software Engineer
Azuro · Prediction Markets (EVM)
Sep 2023 – Jul 2025
Grew into the lead role after proving depth in both DevOps and backend engineering. First time managing people — built and led a team of 4 backend engineers from scratch: interviews, hiring, onboarding, 1-on-1s, PIPs, offboarding, architectural mentorship. Designed and evolved the entire microservice architecture for the protocol's data feed and settlement layer.
↳ first people management experience — interviews, hiring, mentoring
Senior Software Engineer
Azuro · Prediction Markets (EVM)
Jun 2022 – Sep 2023
Joined as DevOps — solved CI/CD problems, but stability remained low. Got asked to review and rewrite backend code. Took initiative to go deeper: split the monolith into domain-bounded services, migrated critical data from MongoDB to PostgreSQL, proposed contract-level architecture changes that unlocked more prediction markets.
↳ joined as DevOps, self-transitioned to full backend ownership
Site Reliability Engineer → Lead SRE
Scentbird
Jun 2019 – Jun 2022
Built the observability stack (Prometheus / Grafana / OpenTelemetry / ELK), introduced security practices (Cloudflare, SAST/DAST, container scanning), optimised CI/CD pipelines, wrote internal deployment tooling. Grew from SRE to Lead SRE in 3 years. Interviewed, hired, and trained a colleague to take over before leaving.
↳ left to design backend systems — see Azuro →
Front-end Engineer
Scentbird
Mar 2019 – Jun 2019
Hired as a frontend engineer (React.js, Node.js SSR, performance). Quickly saw delivery pain: brittle Jenkins CI, slow black-box Elastic Beanstalk deploys, no one deeply owning infrastructure. On my own initiative, I spun up the first K8s cluster, migrated services to it with GitLab CI, fixed a years-old S3 CORS issue, and cut costs by shutting down unused servers. Became the company's first SRE within 4 months.
↳ hired as frontend, self-transitioned to the first SRE in the company
Front-end Engineer
Initflow
Nov 2016 – Feb 2019
Custom project development agency. Built internal and external services, e-commerce solutions in React.js. Direct communication with clients and stakeholders — translating business needs into working products.
Front-end Engineer / Freelance
Initflow / Self-employed
Jun 2013 – Oct 2016
SPAs and CMS-based solutions for corporate clients in Saint Petersburg. Start of the engineering journey.
built / set up from scratch
used in production
conceptual knowledge
↑ click a tag to expand
Infrastructure & Cloud
Kubernetes
Level
● built from scratch
Period
2019 – present (~6 yrs)
What I did
clusters from zeromulti-tenancynetwork policiesautoscalingoperators
Projects
Scentbird 40+ servicesAzuro blockchain nodes
AWS
Level
● built from scratch
Period
2019 – present
What I did
EKSRDS / AuroraVPC designIAMLambdacost optimisation
Projects
Scentbird full stack
Terraform
Level
● built from scratch
What I did
modular infraremote stateGitOps pipelinescustom modules
Context
IaC — the default approach across every project
Karpenter
Level
● set up & used
What I did
node provisioningspot + on-demand mixNodePool config
Context
Replaced Cluster Autoscaler in Scentbird for better cost efficiency
Helm
Level
● used in production
What I did
authored charts for all microservicesumbrella chartschart museum
Projects
ScentbirdAzuro
Cloudflare
Level
● used in production
What I did
WAFDDoS protectionWorkersZero Trust
ingress-nginx
Level
● used in production
What I did
deployperformance tuningcustom configs
Projects
ScentbirdAzuro
Observability
Prometheus
Level
● built from scratch
What I did
custom exportersrecording rulesSLO alertingHA setupdirect scrape + OTLP
Projects
ScentbirdAzuro node monitoring
Grafana + Loki + Tempo
Level
● built from scratch
What I did
dashboards as-codeLoki log aggregationTempo tracingalerts
Context
Full observability stack: metrics + logs + traces in one place
OpenTelemetry
Level
● built from scratch
What I did
instrumentationcollector pipelinesauto-instrumentation
Context
Deployed OTel collector on top of Grafana Stack in Scentbird — replacing NewRelic
SLI / SLO / Error Budgets
Level
● built & implemented
What I did
defined SLIsset SLOserror budget policiesoutage cost calculation
Context
Introduced SRE culture at Scentbird: from CPU alerts to meaningful SLOs
NewRelic APM
Level
● used in production
What I did
APMdistributed tracingalerts
Period
Scentbird 2019–2022, migrated to self-hosted Grafana Stack
ELK Stack
Level
● used in production
What I did
log pipelinesKibana dashboardsLogstash configs
Sentry (self-hosted)
Level
● used in production
What I did
docker-compose deployK8s deploypainful upgrades
Context
Every major update broke something — learned to dig deep into chart diffs and migration code
CI/CD & GitOps
ArgoCD
Level
● built from scratch
What I did
GitOps for all infraapp-of-apps patternsync policies
Projects
ScentbirdAzuro
Argo Rollouts
Level
● built from scratch
What I did
canary deploysanalysis templatesautomated rollback
Context
Implemented for the most critical Scentbird microservices
Argo Workflows
Level
● set up
Context
Replaced CronJobs for more flexible scheduled workloads in Scentbird
GitHub Actions
Level
● built from scratch
What I did
reusable workflowscustom actionsmatrix buildsself-hosted runners
Projects
Azuro (primary)OpenQuest
GitLab CI — self-hosted
Level
● built & administered
What I did
self-hosted instancerunner administrationpipeline design
Projects
Scentbird (primary CI)
Custom Deploy Tooling
Level
● built from scratch
What I did
blue/greencanary releasesrollback automationinternal tooling
Context
Built internal tools to simplify deployment for 40+ Scentbird services
Security
HashiCorp Vault
Level
● built from scratch
What I did
deploy & adminvault-secrets-operatorvault-secrets-webhookK8s auth
Context
Used vault-secrets-operator for K8s Secret mapping and webhook for automatic CLI injection at runtime
Projects
ScentbirdAzuro
OIDC / Keycloak / Okta
Level
● built & administered
What I did
Keycloak self-hostedOIDC backend integrationsOIDC frontend integrationsOkta migration
Projects
Azuro — KeycloakScentbird — Keycloak → Okta
SAST / DAST
Level
● used in production
What I did
integrated in CI/CDdependency analysissecrets detectioncontainer scanning
VPN — OpenVPN / Outline / VLESS
Level
● built from scratch
What I did
OpenVPN setupOutline serverVLESS / gRPCsplit-tunnel by traffic
Context
Helped engineers in restricted countries access services normally. Zero Trust via Cloudflare as complement.
Databases
PostgreSQL
Level
● built from scratch
Period
2019 – present
What I did
schema designAurora migrationRO replicasvacuumspartitioningparameter tuningpg_stat_statementsPgHero
Azuro
Full schema design as primary data store, scaling, automation
Scentbird
Administration, Aurora migration, performance tuning
pgBouncer
Level
● built from scratch
What I did
deploy & configureconnection pool reductionpool mode tuning
Context
Azuro — reduced connection pressure on primary databases under high load
ClickHouse
Level
● built from scratch
What I did
deploy & adminCQRS query layerschema design
Context
Azuro — used as the Query layer in CQRS architecture for high-read analytical workloads
MongoDB / DocumentDB
Level
● used in production
What I did
adminmigration to DocumentDBcompatibility testing
Projects
Scentbird
Redis
Level
● used in production
What I did
cachingdistributed lockspub/subqueuesrate limiting
Qdrant (Vector DB)
Level
● deployed
Context
Scentbird — deployed vector database for LLM-era use cases
Messaging & Streaming
RabbitMQ
Level
● built from scratch
What I did
deploy & configAMQP event-driven archdead-letter queuestopology design
Context
Azuro — entire inter-service communication built on AMQP. Full event-driven microservice topology.
Kafka / Redpanda
Level
● deployed & configured
What I did
deploytopic configurationconsumer groupsretention tuning
Projects
ScentbirdAzuro
Sequin (WAL → Kafka)
Level
● configured
What I did
Postgres WAL streamingKafka sinkconsumer microservices
Context
Azuro — streaming Postgres WAL changes into Kafka for downstream microservice consumption
Blockchain / EVM
EVM Nodes — Multi-chain
Level
● built from scratch
Chains
EthereumGnosisPolygonBaseChilizArbitrumLinea
What I did
archive nodesHA RPC setupmonitoringnode management
Custom RPC Proxy
Level
● built from scratch
Context
No existing solution met our needs — market options only do round-robin. Built a custom proxy that falls back based on node unavailability or block lag beyond a threshold.
The Graph
Level
● built from scratch
What I did
B2B2C subgraph designself-hosted nodespseudo-chain data feed
Context
Also repurposed The Graph architecture as a fast GraphQL layer over internal data — acting as an alternative to Hasura
Hasura
Level
● deployed & configured
What I did
deployPostgres connectorClickHouse connector
Projects
Azuro
Solidity
Level
● used in production
What I did
contract readingintegrationdebug
web3.js / ethers.js
Level
● used in production
What I did
contract interactionsevent listenerstx relaygas error handling
Backend & Languages
Node.js
Level
● built from scratch
Period
2013 – present (~12 yrs)
What I did
REST APISSRWebSocketblockchain indexersmicroservices
TypeScript
Level
● fluent, production use
Period
2018 – present
What I did
backend servicesblockchain integrationsNestJSstrict typing
NestJS
Level
● actively used in production
What I did
microservice architectureCQRS moduleguards & interceptorsAMQP transport
Projects
Azuro (primary framework)
Java / Spring Boot / Micronaut
Level
● conceptual + SRE context
Context
Maintained and debugged Java services at Scentbird as SRE. Infra and troubleshooting — yes. Authoring — no.
Analytics Stack
Apache Airflow
Level
● set up & administered
Context
Scentbird — deployed and administered for analytics team pipeline orchestration
Airbyte
Level
● set up & administered
Context
Scentbird — ELT pipeline management for analytics data ingestion
Snowflake
Level
● set up & administered
Context
Scentbird analytics team data warehouse
RudderStack
Level
● set up & administered
Context
Scentbird — customer data platform / event streaming
dbt (data build tool)
Level
● used in production
Context
Scentbird — analytics transformation pipelines
Feature Toggles & Misc
Unleash
Level
● deployed & configured
Context
Self-hosted feature toggle platform
Projects
ScentbirdAzuro
GrowthBook
Level
● deployed & configured
Context
Feature flags + A/B testing platform
GraalVM Native Images
Level
● used in production
Context
Scentbird — optimised Java microservice startup time and memory footprint via native compilation
Frontend (foundation, 2013–2022)
React.js
Level
● built from scratch
Period
2015 – 2022
What I did
SPA from zeroSSR (Node.js)e-commerceweb3 dAppFCP/TTI opt.
pgops
PostgreSQL Access Management
Internal platform for managing PostgreSQL access across teams. Self-service requests, approval workflows, automatic credential provisioning, DBA toolkit, full audit logging.
NestJS + React Okta SSO 2025
View tool →
spot-interruption-notifier
EC2 Spot Interruption Alerting
Serverless service that catches EC2 Spot interruption warnings via EventBridge, enriches them with Kubernetes context (affected node and pods via CSI annotations), and sends structured alerts to Slack.
TypeScript AWS Lambda EventBridge EKS

If you're looking for a "vibe-coder guy" — here's what I think about that as of March 2026.

You can absolutely set up a pipeline today where a fleet of AI agents automatically picks up Sentry errors, writes fixes, and ships code to production without a human touching it. The tooling is there — Claude Code, ChatGPT Codex, Cursor IDE, agentic workflows. I use all of these daily for different tasks. This very site was built with them.

But I still believe — in March 2026 — that you need a human in the loop. Someone who reviews the code and catches architectural problems before they compound. That person should:

  • Know how to work with agents — this multiplies how many problems you can find and fix.
  • Have system design knowledge — to catch when an LLM makes a bad architectural call.
  • Know the language and frameworks deeply — the subtleties that prevent performance and security issues.

I've spent time digging into how neural networks actually train and work under the hood. I think everyone should — not to become an ML engineer, but to stop treating it like a magic box. Understanding what's inside helps you work with it better. It's like knowing how a manual gearbox works — it genuinely helps you drive.

If you haven't yet, I highly recommend this video — some details may be outdated by now, but the fundamentals haven't changed.

People I'm proud to have worked with. They are true professionals in what they do — feel free to reach out and ask what it was like working with me. (I haven't warned them — hopefully they think of me the same way, haha.)

Dan Kaizer
Dan Kaizer
Chief Technology Officer
Azuro · Prediction Markets
LinkedIn →
Andrei Rebrov
Andrei Rebrov
Ex Chief Technology Officer
Scentbird
LinkedIn →
Alexey Zhokhov
Alexey Zhokhov
Principal Architect
Scentbird
LinkedIn →
Pavel Pantyukhov
Pavel Pantyukhov
Co-Founder
Initflow
LinkedIn →
Pavel Ivanov
Pavel Ivanov
Co-Founder
OpenQuest (Telegram)
LinkedIn →
Master's — Automated Control Systems
ITMO University, Saint Petersburg
2010 – 2015
Engineering systems foundation. Systems-thinking background that directly informs how I approach distributed systems design.
Telegram@vaivanov
LocationBarcelona, Spain