
Rome, Italy
Agents & Automation
I build AI agents that run real operations: a support widget that resolves 70% of 4,000 daily tickets, a content factory that ships a website in ten minutes, a CRM where every alert arrives the moment it happens.
Three years as a business analyst, then six in automation and AI engineering for a marketing agency in Dubai and a software consultancy in Malta, with clients across Europe, Dubai and Latin America. I understand the process before I automate it, I own the whole path from prompt to server, and I measure what changed afterwards.
About meRecent work
- AI agents · RAG · Zendesk
AI Support Widget
A multi-agent widget that resolves 70% of ~4,000 daily tickets in any language and hands the rest to humans in Zendesk with the full context.
- Agents · SEO · publishing
Content Factory
Self-hosted agents that research, write, illustrate, optimise and publish a complete website in five to ten minutes, about a hundred a month.
- Team lead · Kafka · AI routing
Operations CRM
A custom CRM for support, sales and management, with real-time alerts over Kafka and an AI layer that routes requests. I lead the team of three AI engineers.
- Copilot Studio · Azure OpenAI
Teams Assistants
One assistant per department inside Microsoft Teams, HR, Finance and Legal, plus a website assistant that answers visitors and captures leads.
AI agents and automations in production
Selected work
Six systems, two employers, one method: start from the number the business wants to move, build the whole path from prompt to server, prove it on real traffic. The real screens are under NDA; every case opens on a mock-up rebuilt from the real flow.
- Acrh Software · online serviceMulti-agent support widget · RAG · Zendesk2024
AI Support Widget
A multi-agent widget that resolves 70% of ~4,000 daily tickets in any language and hands the rest to humans in Zendesk with the full context.
- Acrh Software · brand satellitesAgent pipeline · websites · SEO / GEO2026
Content Factory
Self-hosted agents that research, write, illustrate, optimise and publish a complete website in five to ten minutes, about a hundred a month.
- Acrh Software · online serviceCustom CRM · real-time alerts · AI routing2026
Operations CRM
A custom CRM for support, sales and management, with real-time alerts over Kafka and an AI layer that routes requests. I lead the team of three AI engineers.
- Acrh Software · internal stakeholderCopilot Studio agents · Teams · website FAQ2024–25
Teams Assistants
One assistant per department inside Microsoft Teams, HR, Finance and Legal, plus a website assistant that answers visitors and captures leads.
- 8 Four Agency · real-estate clientLead widget · Make flows · booking2021
Real-Estate Lead Widget
A website assistant that qualifies buyers, alerts managers on Telegram, emails matching properties and books the visit in one click. Revenue +15%.
- 8 Four Agency · SME clientsWhatsApp · Instagram · Telegram · voice2021–24
Chat & Voice Agents
Keyword-triggered bots on WhatsApp, Instagram and Telegram that qualify leads into a custom CRM, and voice agents on the phone. 1,000+ conversations a month.
Business analyst by training, AI engineer by trade
I started in 2017 as a Business Analyst in an automotive group in Rome, building the KPI dashboards for a fleet of 200,000 vehicles. In 2020 I moved to automation for a marketing agency in Dubai that grew from 50 to 200 people while I was there: a lead-generation widget for a real-estate client, where proactive messages took monthly leads from +10% to +15% for five managers; customer-service chatbots on WhatsApp, Instagram and Telegram that qualify leads into a custom CRM, more than a thousand conversations a month; voice agents with Twilio and ElevenLabs, from the receptionist to outbound calls that qualify leads; more than 20 websites; and the agency's processes rebuilt in ClickUp with automated onboarding. Since 2024 I work for Acrh Software, a software consultancy in Malta with clients in Europe, Dubai and Latin America: a multi-agent support widget on Zendesk that resolves 70% of about 4,000 daily tickets, with the first reply down from 18 minutes to 3 seconds and customer satisfaction up from 2.5 to 3.8; department assistants in Microsoft Teams on Azure OpenAI, Copilot Studio and Databricks; a content factory of self-hosted agents that ships about a hundred websites a month at around five euros each; and since 2026 a custom CRM with real-time alerts over Kafka for more than a thousand users a month, where I lead three AI engineers.
Rome, Italy · remote across Europe · open to relocate · EU citizen

AI support widget on Zendesk resolving 70% of about 4,000 daily tickets; department assistants in Microsoft Teams; a content factory shipping about a hundred sites a month; a custom CRM with real-time alerts, leading three AI engineers.
Lead-generation widget for a real-estate client, +15% revenue; chatbots on WhatsApp, Instagram and Telegram; voice agents with Twilio and ElevenLabs; more than 20 websites; the agency's processes rebuilt in ClickUp while it grew from 50 to 200 people.
KPI dashboards in Power BI on SQL, AWS and internal APIs for a fleet of 200,000 vehicles; idle stock down 25%; four analysts trained.
I can help you with …
AI agents & LLM apps
Multi-agent systems in LangGraph and n8n, RAG on Pinecone or Qdrant with chunking, embeddings and reranking, prompts with structured output and guardrails, evaluation on Langfuse with LLM-as-judge and regression tests. Models from OpenAI, Anthropic, Azure OpenAI, Gemini through OpenRouter, or an open-source model like Qwen 3 on your own servers when privacy and cost matter.
Automation & integrations
n8n, Make, Zapier, Google Apps Script, Microsoft Power Platform and Copilot Studio, or custom code in Python and TypeScript, wired into Zendesk, Teams, SharePoint, Salesforce, Airtable, ClickUp, WhatsApp, Instagram, Telegram and voice through Twilio, ElevenLabs, Vapi, Retell and Voiso. Flows that run 24/7 with monitoring, versioning, CI/CD and documentation.
From the KPI to the server
Analysis of the process with the stakeholder, the number to move, the architecture, the servers in Docker or Kubernetes, the security tests, the weekly improvement loop on real data, the hand-over documents. One owner for the whole path, or a lead for your team: sprints, milestones, QA per block, benchmark-driven design.
How I work
Every system I have built started with a number the business wanted to move: tickets per day, leads per month, sites per month, minutes to the first reply. The architecture follows the number, not the other way round.
Own the whole path
Prompt, retrieval, orchestration, integrations, servers, security, documentation. If it runs in production, it is mine until it is monitored, tested and handed over with the documents the next person needs.
Prove it on real traffic
Langfuse evaluations on retrieval and answers, CSAT, a comparison of every new flow version with the previous one before release, and a weekly improvement loop on the real conversations. A RAG score that went from below 0.6 to 0.9 is the kind of proof I look for.
Benchmark first
Before building, I look at the best product in the category, Intercom for the support widget, Zendesk for the CRM, and I write down what beating it means for this client. Then the blocks, the milestones and the QA tests follow that list.
Certifications
- AI Agents CourseHugging Face
- Evaluating AI AgentsDeepLearning.AI
- Prompt Engineering for DevelopersDeepLearning.AI
- Claude with the Anthropic APIAnthropic Academy
- Introduction to LangGraphLangChain Academy
- Certification · Web3UnityMake
- Certification · Maskn8n
Master in Business Administration & Supply Chain (2023–2025) and BA in Business Administration & Economics (2020–2023), Tor Vergata University, Rome, both while working. High School Diploma in Halifax, Canada. Ukrainian native, Italian C2, English C1, Russian C1, Spanish B1.
Let's start a
project together
Open to AI Engineer roles and consulting across Europe: remote, hybrid or on site. Based in Rome, open to relocate. Write me what the process is and which number you want to move; I answer personally.
Contact details
korenyev@gmail.com
+39 339 299 8566
Location
Rome, Italy
Remote · open to relocate
Socials
AI Support Widget
Problem
About 50 support agents handled roughly 4,000 tickets a day by hand, with peaks of more than a hundred conversations in five to ten minutes. Under overload the first reply took up to 18 minutes and customer satisfaction sat at 2.5 out of 5. Every ticket, including the trivial ones, cost human time, and the knowledge needed to answer was scattered across the CRM and years of message history. The brief: a widget that answers most tickets by itself, in the customer's language, and leaves humans only the cases that need judgment. The benchmark I set before building was Intercom.
What I built
A chat widget on the client's site, deployed through Google Tag Manager, that understands the request in any language, checks the customer's account when they are logged in, answers from a knowledge base built on the client's own CRM and message history, and hands complex cases to a human in Zendesk with the whole transcript and account context attached. n8n orchestrates the main, escalation and reporting flows; LangGraph runs the cyclic logic per intent, so the graph decides step by step whether to answer, ask, verify or escalate. Each agent has its own prompt, GPT-4o mini as main model and Gemini 2.5 through OpenRouter as fallback. Pinecone holds the knowledge base, MongoDB the shared memory, Redis the cache. I set up and hardened the servers myself: everything runs in Docker on the project's own infrastructure, with monitoring on the servers and on every n8n node so that bugs surface before the business sees them.
Popular products
Recent orders
Help
The AI assistant sits in the bottom-right corner, exactly like on the real site.
The demo starts in a moment, or click the assistant →Marco R. · ID 48213 · verified · Pro plan
Orders: #88213 in transit · #88102 delivered
Pick the one that fits you. You can switch any time from the Scenarios bar; your choice is remembered for the other cases.
- The customer gets an answer in about three seconds, at any hour, in their language.
- Seven tickets out of ten end here, with no agent involved.
- The answer comes from the company's own help centre and account data, so it is consistent.
- When a person is needed, the hand-over carries the whole conversation: nothing to repeat.
- Every chat is filed in Zendesk automatically, so reporting needs no extra work.
- The 50 agents were not cut: trained, and partly sold as a service to other companies.
The real screens are under NDA. This mock-up is rebuilt from the real flow: same steps, same integrations, fictional names.
How it is used
Architecture
Blue dashed line: the main flowResults
Stack
Engineering decisions
- One prompt, one main model and one fallback model per agent. The widget itself has a fallback version for when the AI path is down.
- GPT-4o mini for cost and latency: average reply ~3 s, long conversations capped around 7 s, peak 9 s.
- Shared memory in MongoDB feeds a weekly improvement loop on real traffic: answer quality, prompts, CSAT, LLM security.
- Every new version of a flow is compared with the previous one before release, node by node, so behaviour changes are caught before customers see them.
- Vision and OCR: a customer sends a photo, a receipt for example; the data is extracted, stored in MongoDB and used by the agents.
Security
- Servers built and hardened from scratch; the data path between orchestrator, server and browser is protected end to end.
- Penetration tests run through agents I built with rules based on the permission model, grey-box tests on API, latency and infrastructure entry points, review by the internal security team and a black-box test by an external company. Every finding fixed by me.
- Prompt-injection defence and control of what reaches the model; sensitive data never leaves the perimeter without a reason.
Method and delivery
- Solo project, more than six months to release, divided into blocks: each block shipped with its own QA, monitoring and documentation.
- All automations versioned on GitHub with CI/CD pipelines.
- Final deliverables: API documentation, a playbook for the customer-service team and the technical project document.
What it changed for the team
The 50-person support team was not cut. It was trained on the new flow and partly offered to other companies as a service, so the business turned a cost centre into a new line of revenue.
Next: an open-source model on company servers
Migration to Qwen 3 from Hugging Face with Qdrant, built with the ML and DevOps teams, for privacy, latency, control and the option to improve the model. The local model also acts as a filter on the data sent to external LLMs. Fine-tuning in preparation, then the same model will serve the internal teams and the widget itself.
What it covers
The request types the assistant handles on the customer's site, from help-center questions to the handover to a human.
Answers come from a RAG over the client's knowledge base. Every resolved chat is archived in Zendesk as a ticket with the fields already filled.
Personal data only for authenticated customers, read through a protected connection to the client's internal customer-data platform.
A Python library detects the four launch languages; the LLM covers any other language as a fallback in at most 15% of chats.
Photos and PDFs are read with Vision/OCR; the extracted data is stored and used by the agents in the next steps.
Configurable triggers (refund, priority customers, explicit request) hand the chat to a human in Zendesk with transcript and account attached.
The assistant writes first, on events in the client's CRM or for defined customer clusters.
Content Factory
Problem
Brands needed dozens of websites every month to grow their presence and send traffic to the main page: satellite sites around one or two brands, each specific enough to be indexed and read. There was no content team to research, write, design, illustrate and build them, and each site had to be specific enough to be indexed and cheap enough to make dozens a month.
What I built
A pipeline of Hermes agents, self-hosted on the company server, with a dedicated agent for research, one for scraping and composition, one for design, and a final script that publishes. Two ways in. From an example URL: the agents research and scrape a similar site and compose a new one inspired by it. From scratch: the request enters through MCP from Claude Code or Codex, research runs on Perplexity and the Anthropic API, the system scrapes what the operator asked for, then runs a short interview to collect the facts only a human knows, and builds the site. GPT-6 Astra generates the images. One click clones a site with a slightly different design, or a completely different one. A database of every run grows with use and makes the second mode better over time. Output is static HTML, exported and deployed on the client's servers through the DevOps script.
| keyword | vol/mo | intent | page |
|---|
The preview walks through the pages of the site by itself · click another site to open it
Pick the one that fits you. You can switch any time from the Scenarios bar; your choice is remembered for the other cases.
- One request from the operator: no brief, no agency, no content team.
- Fresh research plus the facts only your team knows, collected in a two-minute interview.
- Pages, images and design produced for every site, each one different.
- Search engines and AI engines can find, read and cite the site.
- Live on your servers in five to ten minutes, sending traffic to the brand's main page.
The real screens are under NDA. This mock-up is rebuilt from the real flow: same steps, same integrations, fictional names.
What it ships
Three satellite sites for one brand, from the same pipeline: same research, same SEO and GEO layer, a different design every time. Rebuilt from real runs with a fictional brand.
Every site is static HTML, indexable on its own, and links back to the brand's main page.
How it is used
Architecture
Blue dashed line: the main flowResults
Stack
Why agents, not templates
Templates give the same site every time, and search engines know it. Agents research the topic, interview the operator and write for that topic, so each site is specific, readable and indexable. Cost stays near five euros because the expensive steps, research and images, are cached in the run database and reused.
The SEO and GEO checklist
- Keyword research and keyword-to-page mapping; title tags and meta descriptions; H1, H2, H3 hierarchy.
- Clean URLs, canonical tags, sitemap.xml, robots.txt; internal linking.
- Alt text and light, optimised images for crawling; Core Web Vitals; mobile first.
- Structured data in schema.org JSON-LD; Open Graph.
- GEO, Generative Engine Optimization: FAQ sections and llms.txt so that AI search engines can read and cite the site; hreflang for multilingual sites.
Economics
About a hundred sites a month, five to ten minutes each, around five euros per site. The sites are satellites of one or two brands and send traffic to the brand's main page; traffic is tracked at brand level.
Operations CRM
Problem
Support, sales and management worked on separate tools and saw the same customer from different angles. Business events, fraud signals, payments and refunds, blocked accounts, affiliate and influencer activity, reached people late, through reports, instead of the moment they happened. The brief: one platform for all three teams, with Zendesk as the benchmark to beat, built on the company's own servers.
What I built
One platform for support, sales and management: the same customers, real-time alerts, voice, SMS and Telegram from one screen, a knowledge base in the style of Notion embedded in the product, analytics on AWS and Tableau, and an AI layer that routes requests and answers from the knowledge base. Architecture defined together with DevOps, the development department and the client's PM and Quality Manager; Kubernetes microservices on company servers, one service per engine, front end entirely in TypeScript with parts in Java. I lead three AI engineers: two-week sprints with a reserve of about ten hours for urgent fixes, QA test at the end of each milestone against the benchmark, async improvements, blocker management, daily problem solving with Customer Service, the Quality Manager and the QA manager.
Roadmap: the browser extension will execute the confirmed action for the operator.
Marco R.
ID 48213 · verified
Segment: VIP · IT
Balance €1,240.00
Last payment €300 · 20 min ago · pending
Provider: CardPay
Topic: Payments
Country: IT
Brand: Northline
Every change is written to the audit log.
Coverage: morning 2 · evening 2 · night 1, every day.
Pick the one that fits you. You can switch any time from the Scenarios bar; your choice is remembered for the other cases.
- Events from every department land on one screen.
- Alerts arrive the moment they happen; nothing waits in a queue.
- The AI suggests who should handle it and what to answer; the operator confirms.
- Call, SMS and Telegram from the same screen: no tool switching.
- Management sees volumes and outcomes in Tableau, with access under control.
The real screens are under NDA. This mock-up is rebuilt from the real flow: same steps, same integrations, fictional names.
How it is used
Architecture
Blue dashed line: the main flowResults
Stack
Components, in build order
- Backend and front end.
- Access management: roles and permissions.
- Workspace for the support operators.
- Analytics connected to AWS and a Tableau workspace.
- Business alerts embedded in the CRM from department data on AWS.
- Real-time alerts over Kafka, built with an ML engineer.
- Embedded knowledge base, voice and SMS through Voiso, Telegram for customer communication.
How the team works
Blocks with milestones; a QA test at the end of each milestone and a comparison with the benchmark; improvements handled async; blockers removed daily. Two-week sprints per engineer, Agile mindset, and a small reserve in every sprint for what breaks.
The AI layer
An agent with intelligent routing, a knowledge base with semantic search, and a browser extension of the agent that executes routine tasks for the operators. The CRM serves customer service, management and sales, so the same agent works on support requests and on lead production.
Roadmap
An on-premise LLM (Qwen 3) with full access to CRM data and the internal customer-data platform; an agent with its own knowledge base that helps support answer faster; the browser extension through which support sets actions that run automatically for the customer.
Teams Assistants
Problem
Employees asked HR, Finance and Legal the same routine questions every day: vacation days, expense limits, which template to use. Each answer took time from the people who had to give it, and the knowledge lived in documents nobody opened. On the company website, visitors had no self-service and no simple way to leave a request. The company already lived in Microsoft 365, so the answer had to live there too.
What I built
One assistant per department, in the Teams channel where people already work. The HR agent holds all the shared HR knowledge, answers the frequent questions and logs everything; Finance and Legal follow the same logic. Agents built in Microsoft Copilot Studio, grounded on SharePoint documents, with Azure OpenAI for the models and Databricks for logs, data sharing and continuous improvement. The same stack powers an assistant on the company website: general information, connected directly to SharePoint and Databricks, with a lead step that asks the visitor to send the request by email when the conversation shows intent. Built right after the support widget, alone, for an internal stakeholder of Acrh Software.
Pick the one that fits you. You can switch any time from the Scenarios bar; your choice is remembered for the other cases.
- Employees ask in the channel they already use, in plain language.
- The answer comes from the department's own documents, with the source attached.
- HR, Finance and Legal stop answering the same questions every week.
- The website version answers visitors and captures leads for sales.
The real screens are under NDA. This mock-up is rebuilt from the real flow: same steps, same integrations, fictional names.
How it is used
Architecture
Blue dashed line: the main flowResults
Stack
Why Copilot Studio
The client already lived in Microsoft 365: Teams, SharePoint, Azure. Building where people already are removed adoption friction; nobody had to learn a new tool. Grounding on SharePoint keeps every answer sourced and auditable, and Databricks keeps the logs that drive the improvement loop.
Three departments, one pattern
- HR: vacation, policies, onboarding questions, with the full shared HR knowledge behind it.
- Finance: expense rules, limits, procedures.
- Legal: templates, versions, when a clause needs human review.
- Every conversation logged, so the departments see what people actually ask and fix the documents, not just the answers.
Website assistant and lead capture
The assistant answers first and asks for the request by email only when the visitor shows buying intent. Leads reach sales with the conversation attached, so the first human reply already knows the context.
Real-Estate Lead Widget
Problem
Leads arrived by email and were read late. Five sales managers spent their day on routine qualification, copying names and phone numbers, and lost buyers who had already moved on to the next agency. The client wanted a visible innovation on the website and, above all, leads that arrive clean and get answered immediately.
What I built
A conversational widget embedded in the client's site with all the information on the properties and buildings for sale. The bot's code and prompt live on Replit, OpenAI is the model, the conversation is designed in Voiceflow, Airtable is the CRM, Make runs the automations. The widget collects the buyer's name, phone and email, the key field. Flow one: the moment a lead is saved, the manager gets a Telegram notification with the lead. Flow two: the buyer receives a personalised email with the availability that matches their request and a button to book an appointment. Flow three: the click opens a request on the manager's Google Calendar and Meet, the manager accepts, the buyer gets the confirmation. Proactive messages fire when the visitor clicks key buttons, which lifted leads a further five points.
Bright two-bedroom apartment on the sixth floor of a 2019 building, with a south-facing balcony over the marina, open kitchen and a parking space in the garage.
Similar homes nearby
Pick the one that fits you. You can switch any time from the Scenarios bar; your choice is remembered for the other cases.
- Every visitor who asks gets an answer and leaves clean contact details.
- The manager is alerted on Telegram with a summary, not a raw form.
- The buyer receives matching homes by email, with a booking button.
- The visit lands in the manager's calendar in one click.
- Proactive messages on key clicks lift leads from +10% to +15%.
The real screens are under NDA. This mock-up is rebuilt from the real flow: same steps, same integrations, fictional names.
How it is used
Architecture
Blue dashed line: the main flowResults
Stack
What made the difference
Email was the key field: the follow-up with matching homes did the selling while the manager was busy. Proactive messages on key clicks, mortgage calculator, floor plan, added five points of leads on their own. And the managers stopped copying data by hand, because it arrived already structured.
Also at the agency, 2020–2024
- Content and auto-posting automations on Facebook, Instagram, VK and X via Make, for the agency and for clients.
- The whole way of working of the agency rebuilt in ClickUp as the team grew from 50 to 200 people: HR integrations with automatic onboarding and offboarding, analytics from the client CRM inside ClickUp, structured conversations with roles and permissions, a task manager and a custom scheduling and meeting platform.
- More than 20 client websites built end to end in JavaScript, Next.js and Astro, with API connections to the CRM, deployed on the clients' servers.
What each person receives: the manager, the buyer, the calendar.
Chat & Voice Agents
Problem
Clients needed to answer customers at any hour and qualify every contact without hiring staff. Conversations spiked with every ad campaign, and a missed message was a lost customer. It was the most requested build at the agency, and every client had a different stakeholder, a different channel and a different definition of a good lead.
What I built
A bot that starts from a keyword on WhatsApp, Instagram or Telegram, runs a defined flow with an LLM inside, qualifies the contact with a precise prompt written for that client, and files it in a custom CRM built in Google Apps Script, where the lead moves from cold to warm to hot on completed steps. The bots served both customer service, talking directly with the end user, and support for the client's own team. From 2022 the same clients got voice agents: a voice receptionist and an HR agent that collects candidate data, built on Twilio and ElevenLabs; outbound agents on Vapi and Retell that call leads from the client's lists and ask the qualifying questions. Orchestration in Make and n8n with custom code; models from OpenAI, Anthropic and OpenRouter.
Pick the one that fits you. You can switch any time from the Scenarios bar; your choice is remembered for the other cases.
- Every message from an ad is answered within seconds, 24/7.
- The bot asks the qualifying questions a salesperson would.
- Each contact lands in the CRM with a stage: cold, warm, hot.
- The owner is notified only when a lead is hot.
- Voice agents cover the phone, including outbound calls.
The real screens are under NDA. This mock-up is rebuilt from the real flow: same steps, same integrations, fictional names.
How it is used
Architecture
Blue dashed line: the main flowResults
Stack
Design rules I kept
- One prompt per client, with the qualification criteria written as explicit questions, never left to the model's judgment.
- Pipeline stages change only on completed steps: a lead cannot become hot without contact details.
- Every bot runs 24/7; when a campaign spikes, conversations grow without a channel going uncovered.
Voice agents, 2022–2024
- Voice receptionist on Twilio and ElevenLabs: answers, routes, takes the message.
- HR voice agent: collects candidate data in a conversation that follows the prompt.
- Outbound agents on Vapi and Retell: call the leads, ask the qualifying questions, hand the result to the CRM.
- A Sales agent, and a Finance agent that processes internal data, on the same orchestration.
Before all this · Business Analyst, 2017–2020
Automotive group in Rome, more than 1,000 employees, a fleet of about 200,000 vehicles. Power BI KPI dashboards built on SQL, AWS extracts and internal APIs with the IT department, for the whole sales department and for management with alerts. Idle stock down 25% because data moved faster and used cars sold sooner. KPI and invoice control for a supplier worth two to three million euros a year. Four new analysts onboarded and trained.
Same flow on every channel; voice agents cover the phone.