AWS · Terraform · Kubernetes · Node.js · PHP · Plovdiv, Bulgaria (EU)

DevOps & Backend engineering

I'm Hristo Boyarov. 12+ years of professional experience. Building and operating AWS infrastructure as code using Terraform, Kubernetes, CI/CD and monitoring. Alongside that, developing backend services in Node.js and PHP, and supporting infrastructure for a client operating in a DORA-regulated environment. VGravity is the core: the infrastructure as code that supports everything on top of it. I work B2B, on my own or embedded in your team.

  • 12+ yearsprofessional experience
  • Severalproduction AWS infrastructures under management
  • DORAone regulated fintech platform among them
  • Weeklybackups restore-tested automatically
  • Any hourimmediate response to critical incidents

Services

What I do

01 / infrastructure

Cloud infrastructure & DevOps

I build the AWS side as code, then keep it running. Nothing gets clicked together in the console and forgotten.

  • Terraform for the whole infrastructure: network, compute, databases, storage, IAM
  • Compute sized to the need: ECS with Fargate as the simple start, Kubernetes (k3s or EKS) when the workload calls for it
  • CI/CD with GitHub Actions, including image scanning that blocks deploys on critical vulnerabilities
  • Monitoring with Prometheus, Grafana, Loki and Tempo, alerts defined as code
  • AWS budget configuration, with notifications for incidents and cost thresholds on the channel you use: email, Slack, SMS or anything else
  • DNS and mail configuration: records as code, DKIM, SPF and DMARC set up properly
  • Backups with scheduled, automated restore verification
  • DORA: I run a regulated infrastructure today and can map your controls against the regulation

02 / backend

Backend systems

Node.js and PHP, 12 years of both. Most of what I build moves money or data that can't quietly go missing.

  • Payment integrations: Stripe, PayPal, ledgers, reconciliation jobs
  • Financial systems: double-entry ledgers, monitoring and reporting, incident detection and reports
  • REST and RPC APIs with Symfony, Laravel or Express, documented and tested
  • Real-time features with Socket.IO and Redis
  • Event-driven services on SQS/SNS where the complexity is justified
  • Database design on PostgreSQL and MySQL: schemas, constraints, transactions, replication
  • Integrations with Google, Slack, Mailchimp, SendGrid, OpenAI, Anthropic and other services

03 / operations

Ongoing operations

I keep systems running, and when something breaks, I'm the one who answers.

  • Monitoring that reaches a person, not just a dashboard
  • Immediate response to critical incidents, any day, any hour
  • Patching, upgrades, backup checks, budget alerts and cost review
  • Small improvements shipped continuously instead of piling up

End to end

Full solutions: from backend to infrastructure

Most of the problems I get called into live in the gap between whoever wrote the code and whoever runs it. The simplest way to close that gap is not to have one. I write the backend in Node.js or PHP, build the AWS infrastructure underneath it, wire the pipeline, set up monitoring, backups and budget alerts, and then keep the whole thing alive. One contract, one person to call.

  • Backend: Node.js · PHP
  • Infrastructure: Terraform · AWS
  • Kubernetes or Fargate
  • CI/CD · monitoring · backups
  • Ongoing operations

Process

How we work

  1. Email

    Write a few lines about what you have and what is going wrong with it. The form below, or straight to [email protected]. I answer within a business day.

  2. Meeting

    Half an hour, free. You describe the system, I ask the questions that usually get skipped, and we work out whether this is a fit. Sometimes it isn't, and I'll say so.

  3. Estimate

    For something that already exists, usually an audit first, estimated in hours before I start. For a new build, a written proposal with scope, milestones and a number.

  4. Build

    In your AWS accounts and your repositories from day one. Everything as code, built on the VGravity core - the Terraform, Kubernetes and CI/CD foundation I reuse and adapt for every setup. A short written update every week.

  5. Operate or hand over

    Either I stay on and run it, or you get the documentation, the runbooks and a walkthrough call. Either way it's yours. It has been sitting in your accounts and your repositories the whole time.

Method

Spec-driven development

AI made me write less code and more specification. 12 years of writing software taught me that planning decides whether a project goes well or badly. AI did not change that. It made it more important.

Planning comes first, before any tool. The feature, the constraints, the parts that will break later. That comes from experience, not from a model.

I write the first spec myself, let AI expand it, and refine it until nothing can be read two ways. That includes acceptance criteria: if I cannot say how the feature will be verified, the spec is not done.

The standards are in place before I generate anything. I keep skills - files describing how things are built here: patterns, structure, error handling, tests. The spec says what to build. The skills say how it is always built. Without them, every generation drifts and review turns into fixing style instead of logic.

Then I generate. Then the gates: tests, linter, type checks, with the acceptance criteria as the tests. Then the review. I read the code line by line, then run an AI review on top. The two find different problems.

Everything the review finds goes back into the spec, not into the code. Generate again. Test again. Review again, until it is clean. Then I polish by hand, and if I fix the same kind of thing twice, it becomes a rule so the system is less likely to produce it again. One last review, and I ship.

Infrastructure works the same way. Terraform modules, alert rules and pipelines are specified, generated, then read as a plan before anything is applied.

The spec is the source of truth, not the code. Code can be regenerated in a minute; a precise spec, and the standards behind it, take 12 years to learn how to write. That spec is also what you keep at the end: documentation that matches the system, because the system was built from it.

Pricing

Pricing

Two ways to work with me: a fixed quote for the setup package, hourly for everything else. Prices excluding VAT.

Production infrastructure setup

Custom quotefixed price, agreed in writing

A full production environment on AWS, built as code and handed over with documentation. What it costs depends on what goes into it. After the meeting you get one number in writing, and it doesn't move afterwards.

  • Terraform for the whole infrastructure: VPC, networking, security groups, load balancer with TLS
  • Container registry (ECR) with vulnerability scanning on push
  • CI/CD pipeline in GitHub Actions: test, build, scan, deploy; deploys blocked on critical findings
  • AWS budget configuration, with spending and incident notifications on the channel you use: email, Slack, SMS or anything else
  • Backups to S3
  • Documentation and a handover call

The simple start

ECS on Fargate, CloudWatch monitoring and alerts, S3 backups. No cluster to operate, no nodes to patch. Right for one normal web application running only on AWS.

The full setup

A production-ready k3s Kubernetes cluster with autoscaling workers, Prometheus, Grafana and Loki monitoring, a structured audit log stream, managed PostgreSQL or MySQL with a verified restore test, DNS configuration, mail configuration with DKIM, SPF and DMARC, and a staging environment.

Scope: the quote lists exactly what is included; anything beyond it is billed by the hour. Typical duration: 2-5 weeks depending on scope.

Not included: changes to your application code beyond deploy wiring, and your AWS bill itself.

Everything else

Hourly rateestimated before I start

Everything outside the setup package is hourly, at one rate regardless of the type of work. You get a written estimate before I start, and hours reported with every invoice.

  • Backend development in Node.js and PHP, integrations and fixes
  • Infrastructure audits: a full review typically takes 20-30 hours
  • Migrations, DORA gap work and one-off projects
  • Ongoing operations: monitoring I personally answer, patching, upgrades, backup checks and cost review
  • Immediate response to critical incidents, any day or hour. The monthly minimum of 10 hours covers the on-call commitment; cancel with 30 days' notice

Either way it starts with an email and a half-hour call, both free.

About

Who you're hiring

Hristo Boyarov

Hristo Boyarov, in Plovdiv, Bulgaria.

I've been building for the web for over 15 years, the last 12 professionally. Full-stack work at a web studio. Four years leading backend at a medical fundraising platform: architecture, payments, real-time systems. Three years on event-driven microservices on AWS for large-scale platforms. Independent since 2024. Right now I maintain several production AWS infrastructures built with Terraform and running Kubernetes; one of them operates under DORA.

I keep the setup small on purpose. You talk to the person who writes the code and gets the alerts. When a project needs frontend or design, I bring in people I've worked with for years: a React developer and a UI/UX designer, under one contract.

B2B only · Plovdiv, Bulgaria · EU VAT invoices · NDA on request

  • Cloud & infrastructureAWS (EC2, ECS, Lambda, RDS/Aurora, S3, CloudFront, SQS/SNS, IAM/KMS), Terraform, CloudFormation, Kubernetes (k3s), Docker
  • CI/CD & observabilityGitHub Actions, Prometheus, Grafana, Loki, Tempo, OpenTelemetry
  • BackendNode.js / TypeScript, PHP (Symfony, Laravel), REST & RPC APIs, Socket.IO, Redis
  • DataPostgreSQL / Aurora, MySQL, Redis

FAQ

How do you charge?

Hourly, one rate for every kind of work, excluding VAT. You get the number on the first call. Larger pieces of work get a written estimate before I start, and every invoice comes with a report of hours. The production infrastructure setup is a fixed-price package: the price depends on what it includes and is agreed in writing after the intro meeting. Operations clients have a monthly minimum of 10 hours, which covers the on-call commitment.

Do you work with existing teams, or only solo?

Both. Usually I take the infrastructure and the backend foundations while the in-house team keeps shipping product. I've led backend teams, and I've also been the entire backend team.

What does “immediate response” mean exactly?

For clients on an operations agreement: critical incidents get a response right away, any day, any hour, weekends included. Everything else within one business day. What counts as critical is agreed in writing at the start, so it isn't debated during an outage.

How do contracts and invoicing work?

B2B, with a standard services contract and an NDA if you need one. Invoices come from my company in Bulgaria with EU VAT. For EU companies, reverse charge applies: a 0% VAT invoice against your VAT number.

Which time zone are you in?

EET (UTC+2/+3). Full overlap with European working hours, and with the US East Coast until early afternoon. Most communication is written; calls when they're actually needed.

Will we be locked in to you?

No, and not because I promise it. Work happens in your cloud accounts and your repositories from day one, the infrastructure is code, and the decisions are written down. Handover is part of the job, not a negotiation at the end of it.

Can you take over an existing system that has grown organically?

Yes, and that is most of what I do. The audit maps what exists, what is risky and what it is costing you, and then we fix things in the order that matters. There is no judgement in it: every system that has been running long enough has scars.

Do you do frontend or full product builds?

My own work is backend and infrastructure. For UI I bring a React developer and a designer I've worked with for years, under the same contract, so you still have one point of responsibility.

What about DORA specifically?

I operate infrastructure for a regulated EU financial entity today. Controls are mapped to the regulation article by article, incidents are classified in the logs, and the platform produces its own evidence: tested restores, CI gates, audit trails. If DORA applies to you, an audit includes a gap map against it.

Do you use AI in your work?

Yes, daily. I use AI tools to optimize processes and keep code quality high: reviews, tests, catching regressions, automating the repetitive parts. What ships is still my responsibility, and client code is handled under the contract and NDA.

Do you handle on-premise?

Yes. I've configured Proxmox VE with Kubernetes for a client, and I build hybrid setups across providers - for example DigitalOcean together with AWS.

Contact

Tell me what you are running.

A few lines about what you have and what is going wrong is enough to start. Form or email, whichever you prefer. I answer within a business day, usually sooner, and then we set up a call.

The message didn't go through.

Please email me directly at [email protected] and I'll answer personally.

Thanks, got it.

I'll reply within one business day. If it's urgent, email me at [email protected].