11 projects

My work

Projects that made it to production and are running: computer vision, games and stores inside Telegram, sales funnels, three-dimensional websites, trading analytics, AI agents, search marketing and infrastructure. Below — what was needed, what I built and what came out of it.

  • Computer Vision
  • Telegram Mini App
  • Telegram game
  • Sales funnel
  • 3D / Web
  • Analytics
  • AI agent
  • SEO
  • Infrastructure
  • AI bot
  • Automation
REC · 30 fps Turn your head ↻
Access control
Employee #0147Sales department
Face detected
Liveness check
Database match 99,2%
✓ Shift started · 08:57
230employees in the system
01 / 11
Computer VisionCompany · 230 employees

Biometrics instead of passes and timesheets

Challenge

Classic attendance control rests on passes and good faith: a card can be handed to a colleague, a timesheet entry can be nudged. The task was to close that gap without making people queue at a turnstile.

Solution

I built a computer vision system: an employee opens the camera at their workstation, the model finds the face and matches it against the database. So that nobody can hold a phone photo up to the lens, there is a liveness check — the system asks the person to turn their head and verifies the movement is real, not an image.

Result

Once the check passes, a start-of-day confirmation appears on screen and the event goes into the attendance system. Recognition runs on an ordinary work laptop — no expensive hardware, and no video leaving the building. 230 employees now go through the system.

230employees on biometrics
  • 230 employees clock in with biometrics
  • Clock-in takes a couple of seconds
  • Protected against photos and screen replays
  • Runs on an ordinary webcam
  • Video never leaves the company perimeter
PythonPyTorchOpenCVFace RecognitionLiveness detectionFastAPI
I want something like this →
New collection
3 900 ₽ 1 700 ₽ 8 400 ₽ 4 200 ₽ 1 200 ₽ 6 900 ₽
Oversized hoodie 4 900 ₽
SMLXL
Checkout
Oversized hoodie · M4 900 ₽
Delivery0 ₽
Total4 900 ₽
Pay now
✓
Thank you for your order! Order #1043 confirmed
02 / 11
Telegram Mini AppClothing store

A clothing store inside Telegram

Challenge

The clothing store had the same problem as most: ads led to a website, the visitor hit a sign-up form and left. Every extra step between “I like it” and “I paid” eats customers.

Solution

The answer was a store right inside Telegram. The customer swipes through photo cards, opens an item they like, picks a size and lands at checkout. Payment happens in the same messenger, and the order confirmation arrives straight away.

Result

No app to install, no registration — Telegram already knows the user. Orders drop into an admin panel and stock by size syncs automatically, so nothing gets sold that is not in the warehouse.

  • A purchase in three taps
  • No sign-up, no app install
  • Payment inside the messenger
  • Orders and stock in a single admin panel
Telegram Mini AppsReactNode.jsBot APIPayment acquiringPostgreSQL
I want something like this →
LVL 7 ×4 COMBO
SCORE01234567890012345678900123456789001234567890
+120 +80
one touch
Leaderboard
1MKMaxim18 420
2ALAlina16 980
3YOUYou15 340
4DNDenis14 210
5 000+players
03 / 11
Telegram gameA project with a Telegram audience

A Telegram game with 5,000+ players

Challenge

The client had a lively audience with nothing to do between posts. The usual route is to ship an app to the store, but that means making people search for it, download it and sign up. Half of them drop off at each of those steps.

Solution

I built the game right inside Telegram. You tap a button in the chat and you are already playing: no install, no sign-up — the profile and name come from the messenger. One-touch controls, a round under a minute, so people play it in a queue, on the metro, between things.

Result

Then the part it was all built for kicks in: a leaderboard among friends, a reward for coming back each day, and invites that give a bonus to both sides. A high score goes into a chat with one button — so the game spreads on its own, with no ad spend. More than 5,000 players have gone through the app so far.

5 000+players in the mini app
  • More than 5,000 players have gone through the app
  • One-touch start — no install, no sign-up
  • Leaderboard and daily rewards
  • Friend invites with a bonus for both
  • A round under a minute — played in any spare moment
Telegram Mini AppsTypeScriptPixiJSNode.jsRedisTelegram Stars
I want something like this →
Funnel · mini app
A post on the bloglink to the mini app
Came from the post
Took the free session
Went through nurturing
Booked a call
Paid
1 700closed leads
04 / 11
Sales funnelBlogger

A Telegram funnel: 1,700 closed leads

Challenge

The blogger had a live audience and a product, but everything rested on answering by hand: people wrote in DMs, some got lost in the flow, some waited a day for a reply and went cold. Sales were capped by how many messages one person could read in an evening.

Solution

I built the funnel as a mini app inside Telegram. A follower arrives from a link in a post, takes the free session, answers a couple of questions about themselves — and from there gets not a blanket broadcast but the nurturing track that fits them. Inside: lessons, testimonials, answers to the common objections and a booking button with live calendar slots.

Result

Every step is visible in the analytics: where a person stopped, what they watched through, which message they booked after. Requests land in the CRM with the full history, so people come to the call already warm and the conversation does not start from zero. So far the funnel has carried 1,700 people through to payment.

1 700closed leads
  • 1,700 closed leads through the funnel
  • Nurturing is chosen from the follower’s own answers
  • Call booking against a live calendar
  • Requests reach the CRM with the full history
  • You can see which step a person stopped at
Telegram Mini AppsReactBot APICRM APIPostgreSQLAnalytics
I want something like this →
3DTM-1000/10 · model in the browser
BushingsHV bushings
Windingscopper · 3 phases
Magnetic corelaminated steel
Radiatorsoil cooling
scrolling takes the model apart
05 / 11
3D / WebTransformer manufacturer

3D website: a transformer comes apart before your eyes

Challenge

Industrial equipment is hard to sell with catalogue pictures: the client cannot see what they are paying for, and it all collapses into comparing prices in a spreadsheet. We needed to show the engineering, not a photo of a grey box.

Solution

I built a site where the transformer lives in the browser in three dimensions. As the page scrolls, the model rotates and separates into assemblies — the tank, the windings, the core, the cooling system — with a description of each part appearing alongside.

Result

The result is less a page than a guided tour inside the product. The visitor sets the pace: scroll further and the model opens up deeper. It is optimised to run on modest laptops, not only on gaming machines.

  • The product is seen from the inside, not in a photo
  • The teardown is driven by scrolling
  • Works with no plugins to install
  • Optimised for low-powered devices
Three.jsWebGLGLSLNext.jsGSAPBlender
I want something like this →
BTC / USDT 64 20123456789001234567890,40 ▲ 2,41% 5m15m1h4h
LIVE
Signals
BTCLONG · 15mentry
ETH1hwaiting for level
SOL4hno signal
Accuracy · 3 mo.53–67%
Telegram · signalBTC/USDT: LONG entry, level confirmed
06 / 11
AnalyticsTrader

Crypto market analytics with entry signals

Challenge

A trader physically cannot hold dozens of pairs in their head at once: while they watch one chart, the move starts on another. Manual monitoring turns into a job with no days off.

Solution

I built a service that pulls exchange data in real time, draws the charts and runs them through a set of conditions — levels, volumes, indicators. When the conditions line up, the moment is highlighted right on the chart and a notification goes out to Telegram.

Result

An important principle: the system does not trade for you and promises no profit. It removes the drudgery of watching and points out where to look; the decision stays with the trader. The rules are configured to your own strategy rather than hard-wired. Over three months of operation the share of accurate entry points held between 53 and 67 percent.

53–67%accurate entry points in 3 months
  • 53 to 67% accurate entry points over three months
  • Market watching without manual monitoring
  • Signals on your rules, not someone else’s
  • Notifications in Telegram
  • Charts and signal history in one place
PythonWebSocketPandasTradingView ChartsFastAPIRedis
I want something like this →
CONTRACT #447
scan · email · 1C
AI
Reading the text… Type: supply contract Extracting the details Checking the database
CounterpartyVector LLC✓
Tax ID7704 512 338✓
Amount860 000 ₽✓
Due date12.11.2026✓
CRM · Contracts
№447Vector LLC860 000 ₽
№446Sokolov (sole trader)124 500 ₽
№445Nord LLC2 310 000 ₽
manual entry: 0 unclear → to a human −80,000 ₽ / mo on routine
07 / 11
AI agentA company buried in paperwork

An AI agent instead of a secretary: −80,000 ₽ a month

Challenge

A stream of paperwork was piling up at the company: contracts, invoices, acts, delivery notes. A secretary spent the day reading them, copying details and amounts into the system and filing them away. Mechanical work — but work where mistakes are not allowed.

Solution

I built an agent that takes a document from a scan or an inbox, recognises the text, works out the document type and extracts the fields that matter: counterparty, amounts, dates, numbers. Then it finds the right record in the database itself and writes the data where it belongs.

Result

Uncertain cases — a poor scan, an unfamiliar counterparty, mismatched totals — are not guessed at: the agent sets them aside and shows them to a human. Every action is logged, so it is always clear where any figure in the database came from. In money that is roughly 80,000 ₽ saved every month — exactly what an employee doing the same work would cost.

80 000 ₽saved per month
  • Saves 80,000 ₽ a month — with no extra hire
  • Documents are processed with no manual entry
  • Data lands straight in the company database
  • Uncertain cases go to a human instead of being guessed
  • A full log: the source of every record is visible
PythonOCRLLMRAGVector DBPostgreSQL
I want something like this →
yandex.ru
bankruptcy lawyer
1473 Law firmDebt relief assistance — free consultation ▲
page 2
Yandex position
1473
Site views +720% TOP 3 ON YANDEX
08 / 11
SEOLaw firm

A law firm in the Yandex top 3

Challenge

The law firm had a website that existed but brought in no clients: it sat far beyond the first page, where real people never reach. Ads ate the budget and organic search gave nothing.

Solution

The work ran on every front at once: the technical side — speed, structure, schema markup, removing duplicates; the content side — collecting the queries people actually use to look for a lawyer and rebuilding the pages around them; and the external side — growing mentions.

Result

The result: the site climbed into the top three on Yandex. The gap between third place and, say, fifteenth is not three positions — it is an order of magnitude in traffic, because the overwhelming majority of people never scroll past the first few lines. By the third month site views had grown by 720 percent.

+720%views by the third month
  • Site views grew 720% by the third month
  • Top 3 in Yandex results
  • Enquiries from search without paying per click
  • Structure rebuilt around real search queries
  • The technical foundation put in order
Keyword researchSchema.orgCore Web VitalsYandex WebmasterYandex MetricaContent
I want something like this →
Connecting… Protected
128 Mbps18 ms
Netherlands18 ms Germany24 ms Finland31 ms
09 / 11
InfrastructureVPN service

VPN service: 250 paying customers in a month

Challenge

The main complaint about free solutions is not price but instability: the connection drops at the worst possible moment, speed sags, and moving from Wi-Fi to mobile data means reconnecting from scratch.

Solution

I built a commercial service focused precisely on stability: several servers across locations, automatic selection of the best node, instant reconnection when the network changes, and protection against traffic leaking around the tunnel.

Result

From the user’s side it comes down to a single button: press it and it works. All the complexity of keys, protocols and server choice is hidden inside. Plus billing, access provisioning and node monitoring, so a problem shows up before a customer writes in about it. In the first month alone the client reached 250 paying customers.

250paying customers in the first month
  • 250 paying customers for the client in the first month
  • A stable connection when the network changes
  • Automatic selection of the best server
  • Connect with one button
  • Billing and node monitoring
LinuxWireGuardXrayDockerNginxMonitoring
I want something like this →
Avito · ConstructionAI manager · online
Hi there! How much would an 8 by 10 foundation cost?
Hello! It depends on the type: strip or screw pile. What is the soil like on your plot?
Clay, the plot is level
Then a 400 mm strip foundation. I will work out an estimate and send it today. When are you planning to start?
Early May
✓ Request passed to the crew
10 / 11
AI botConstruction crew

An AI manager tripled conversion to sale

Challenge

In construction, reply speed decides everything: a client messages five listings at once and gives the job to whoever answers first. But the crew is on site all day — the phone stays in a pocket, messages get read in the evening, by which time the job is gone.

Solution

I built an AI manager that works in Telegram and on Avito at the same time. It answers instantly and to the point: clarifies scope and timing, explains how the price is calculated, handles the usual objections and steers the conversation towards a concrete agreement.

Result

This is not a button-driven autoresponder — the bot understands free text and keeps the context of the conversation. When the client is ready, it records the request and passes it to the crew with a ready-made summary: what, where, when. Difficult cases are handed to a human immediately. After launch, conversion from enquiry to sale tripled — simply because the crew stopped losing the clients who wrote during working hours.

×3growth in sales conversion
  • Conversion to sale tripled
  • A reply to the client in seconds, at any hour
  • Telegram and Avito in one pipeline
  • Understands free text, not just buttons
  • The request arrives with a ready-made summary
LLMTelegram Bot APIAvito APIPythonPostgreSQLRAG
I want something like this →
Broadcast to the client base VIPRegularsNew 248
AMAlexander M.Hi Alexander! A new batch has arrived…✓
SKSvetlana K.Hi Svetlana! A new batch has arrived…✓
DVDmitry V.Hi Dmitry! A new batch has arrived…✓
OLOlga L.Hi Olga! A new batch has arrived…✓
IPIgor P.Hi Igor! A new batch has arrived…✓
Sent with pauses · within platform limits
11 / 11
AutomationSales through messengers

Hundreds of chats reached in one click

Challenge

When the client base is measured in hundreds of chats, sending by hand becomes a job of its own: copy, paste, do not mix people up, do not send twice, do not run into the platform’s limits.

Solution

I built a tool that takes it over: you upload the list, pick a template with name and parameter placeholders, and hit start. Messages go out with natural pauses and within the limits, so the account does not get banned.

Result

At the end there is a report: who received it, who did not and why. Lists can be segmented, so different client groups get different messages rather than one text for everyone.

  • Hundreds of chats reached with no manual work
  • Templates with data placeholders
  • Pauses and limits to avoid bans
  • A delivery report for every recipient
PythonTelegram APISQLiteQueuesScheduler
I want something like this →

Want the same?

Describe your task in two sentences — I will come back with an approach, a timeline and a budget range. The consultation is free.

Message me on Telegram I reply within 15 minutes
Discuss the taskreply in 15 minutes · free