Kirill Levin: Frontend Edition

Community Hub

5 years of commercial Angular: architecture, performance, and features whose effect shows up in the metrics.

1 / 6

Kirill Levin is a frontend developer from Saint Petersburg with 5+ years of commercial Angular. I build features whose effect shows up in the metrics and keep a large app fast and easy to work with. I review code, mentor, and build tooling for the team.

All reviews:
Overwhelmingly Positive (≈1,050 commits)
Release date:
Mar 2021
Developer:
Kirill Levin
Publisher:
looking for one

Popular user-defined tags for this developer:

Follow

Open to offers

Looking for a team where I can shape the frontend architecture, where code review is the norm, and where standards are agreed on and checked automatically. Based in Saint Petersburg: remote, hybrid or office. Angular is my core stack, and I’m open to React and Vue.

Hire Kirill Levin

Full-time · remote, hybrid or office in Saint Petersburg

Negotiable

Buy the “Kirill Levin + AI agent squad” bundle

Includes 6 items:

Kirill LevinAnalystArchitectEngineerReviewerDebugger

A developer plus five agents in Claude Code and Cursor: work goes in phases, project rules cover architecture and security, and hooks won’t close a phase without real lint and test runs.

−83%6 roles1 offer

Invite to an interview

Demo version: 60 minutes, no sign-up required

Free

About this game

Key case studies from the last year and a half, ordered by business impact. The numbers are my own measurements and team data. Company code stays private.

Mature Content Description

The developer describes the content like this: contains scenes of legacy code deletion and forced migration of NgModules to standalone.

Updates & version history

Major update

BotHelp — Frontend Engineer

Mar 2025 — Sep 2026

High-load SaaS chatbot and messenger-marketing platform: mass broadcasts, real-time operator chats, bot builder, CRM integrations and AI agents. Telegram, VK, MAX, WhatsApp.

Patch notes (9)
  • Billing frontend and four payment providers: ≈30% of paying customers use plan add-ons.
  • Marketing site: CTA blocks with UTM passthrough brought +50% sign-up traffic.
  • Wrote the refactoring plan that became the team standard and rebuilt the Nx layer architecture by it.
  • Moved growth tools to a definition registry: a new tool in 1–2 days instead of a week.
  • Automated data-testids for E2E; the team launched smoke test automation.
  • Cut the bot builder’s open time by 85%: a large scenario opens in 2 s instead of 13.
  • Rebuilt the main dashboard pages with folders and a mobile version: large lists render 93% faster.
  • Reworked message formatting for Telegram, VK and MAX: AST-level HTML ↔ Markdown conversion with edge cases covered by tests.
  • Owned frontend architecture in a team of 5 developers: code review (including the Flutter app), mentored two developers, rolled out AI-assisted development.

Angular 17–22, TypeScript, RxJS, NGXS, Signals, Nx, Jest, GoJS, Web Workers, WebSocket, Svelte 5, Flutter, GitLab CI

Update

T1 — Frontend Engineer

Jul 2023 — Mar 2025

IT holding, systems integration. A visual low-code CRM editor where implementation teams assemble business services.

Patch notes (4)
  • Sped up pages with 10k-row tables: lazy data and module loading, faster table and graph rendering.
  • Low-code editor screens: dynamic forms, configurable tables, ECharts graphs and diagrams, report export.
  • Three internal UI-kit components: Angular wrappers over Lit web components.
  • One of two frontend engineers on a 20-person team: R&D, tech designs, code review, meetups, onboarding.

Angular 14–18, TypeScript, RxJS, Web Components, Lit, GraphQL, ECharts, Webpack, Vite

Early Access

easstacademy — Frontend Engineer

Mar 2021 — May 2023

An online education platform with courses.

Patch notes (3)
  • Built the whole frontend solo: course site, blog, CMS, content and media admin.
  • Payments, OAuth sign-in, PDF certificates and invoices.
  • While I was there, the platform sold 200+ corporate licenses.

Angular 14, TypeScript, RxJS, Angular Material, Taiga UI, REST, Docker

Play in your browser8

All projects (8) →

Achievements 16 / 16

Conversion

+50% site-to-sign-up traffic

Unlocked: 2026

Cashier

≈30% of paying customers use plan add-ons

Unlocked: Jul 2025

Architect

Refactoring plan became the team standard

Unlocked: Sep 2025

Assembly line

A new growth tool in 1–2 days instead of a week

Unlocked: Aug 2026

Sharpshooter

data-testids generate themselves; smoke tests run on them

Unlocked: Aug 2026

Speedrunner

Time to open a large scenario −85% (13 s → 2 s)

Unlocked: Apr 2026

Impatient

Time to render large lists −93% (30 s → 2 s)

Unlocked: Apr 2025

Polyglot

Stable formatting for Telegram, VK and MAX

Unlocked: Jun 2026

Strictly typed

Every form in the app on native Typed Forms

Unlocked: Aug 2026

Mentor

Mentored two developers

Unlocked: 2025–2026

Squad

Assemble a team of five AI agents

Unlocked: 2026

Border patrol

Module boundary violations: 99 → 15

Unlocked: Aug 2026

Vocabulary

Purged ≈600 unused translation keys, added a CI gate

Unlocked: Aug 2026

Thousandaire

≈1,050 unique commits across 11 repositories

Unlocked: Sep 2026

Solo mode

A platform whose frontend I built alone sold 200+ corporate licenses

Unlocked: 2023

Silent widget

The widget connects to the server only after it opens

Unlocked: 2026

Hidden achievement

Unlocks when you press “Hire”

Hidden achievement

Unlocks when you’ve seen the site in every design

System requirements for the employer

Minimum:

  • OS: remote, hybrid or office in Saint Petersburg
  • Processor: code review on the team
  • Memory: at least one fellow frontend engineer
  • Graphics: designs in Figma
  • Network: broadband connection to backend engineers

Recommended:

  • OS: remote
  • Processor: influence on frontend architecture
  • Memory: agreed standards and automated checks in CI
  • Graphics: complex UIs: forms, tables, editors, realtime
  • Sound card: meetups and knowledge sharing
  • Additional: AI tools are allowed

Reviews

Overall rating:Overwhelmingly Positive(≈1,050 commits)Written on behalf of the product and tools. The numbers are real.

Company blog

marketing site

Recommended

+50% sign-up traffic

Once articles got CTA blocks that pass ref and UTM along, readers started going from the blog to sign-up 50% more often.

Was this review helpful?

Billing

plan add-ons

Recommended

≈30% of paying customers

About one in three paying customers uses add-ons. Trials, cancellations and downgrades behave predictably.

Was this review helpful?

Bot builder

main product screen

Recommended

13 s → 2 s

A large scenario opens in 2 seconds instead of 13. Model conversion moved to a Web Worker, and rendering and loading were rewritten.

Was this review helpful?

Broadcasts

Telegram, VK, MAX

Recommended

3 messengers

The same text looks the same in Telegram, VK and MAX: links, macros and line breaks survive the conversion. Edge cases are covered by tests.

Was this review helpful?

ESLint

module boundaries

Recommended

99 → 15

I check module boundaries on every MR. There were 99 violations, now there are 15, and new ones don’t reach the main branch.

Was this review helpful?

Operator inbox

AI widget

Recommended

0 empty dialogs

The widget connects to the server only after a visitor opens it, so there’s no longer an empty dialog for every site visit.

Was this review helpful?
usertrv

usertrvVerified profile

  • 22 posts
  • ≈1,050 commits
  • 5+ years

Kirill Levin

Frontend engineer

Kirill Levin is a frontend developer from Saint Petersburg with 5+ years of commercial Angular. I build features whose effect shows up in the metrics and keep a large app fast and easy to work with. I review code, mentor, and build tooling for the team.

Open to offers

Saint Petersburg

Posts

Home
usertrv

Verified Developer

Kirill Levin

≈1,050 commits in 18 months

Discography

Show all
All projects8 • Projects

Achievements

  • Conversion

    +50% site-to-sign-up traffic

    2026

  • Cashier

    ≈30% of paying customers use plan add-ons

    Jul 2025

  • Architect

    Refactoring plan became the team standard

    Sep 2025

  • Assembly line

    A new growth tool in 1–2 days instead of a week

    Aug 2026

  • Sharpshooter

    data-testids generate themselves; smoke tests run on them

    Aug 2026

  • Speedrunner

    Time to open a large scenario −85% (13 s → 2 s)

    Apr 2026

  • Impatient

    Time to render large lists −93% (30 s → 2 s)

    Apr 2025

  • Polyglot

    Stable formatting for Telegram, VK and MAX

    Jun 2026

  • Strictly typed

    Every form in the app on native Typed Forms

    Aug 2026

  • Mentor

    Mentored two developers

    2025–2026

  • Squad

    Assemble a team of five AI agents

    2026

  • Border patrol

    Module boundary violations: 99 → 15

    Aug 2026

  • Vocabulary

    Purged ≈600 unused translation keys, added a CI gate

    Aug 2026

  • Thousandaire

    ≈1,050 unique commits across 11 repositories

    Sep 2026

  • Solo mode

    A platform whose frontend I built alone sold 200+ corporate licenses

    2023

  • Silent widget

    The widget connects to the server only after it opens

    2026

What products say

Written on behalf of the product and tools. The numbers are real.

  • Company blog

    Once articles got CTA blocks that pass ref and UTM along, readers started going from the blog to sign-up 50% more often.

  • Billing

    About one in three paying customers uses add-ons. Trials, cancellations and downgrades behave predictably.

  • Bot builder

    A large scenario opens in 2 seconds instead of 13. Model conversion moved to a Web Worker, and rendering and loading were rewritten.

  • Broadcasts

    The same text looks the same in Telegram, VK and MAX: links, macros and line breaks survive the conversion. Edge cases are covered by tests.

  • ESLint

    I check module boundaries on every MR. There were 99 violations, now there are 15, and new ones don’t reach the main branch.

  • Operator inbox

    The widget connects to the server only after a visitor opens it, so there’s no longer an empty dialog for every site visit.

Members

The agents run on Claude Code and Cursor. Decisions are mine, and I take personal responsibility for the code.

  • Kirill Levin

    Squad leader · sets the task

  • Analyst

    In-game: acceptance criteria

  • Architect

    In-game: mapping the impact

  • Engineer

    In-game: code and tests

  • Reviewer

    In-game: verdict on the diff

  • Debugger

    On call: root cause

About

5+years of commercial development. Contains refactoring scenes.

Open to offers

Kirill Levin is a frontend developer from Saint Petersburg with 5+ years of commercial Angular. I build features whose effect shows up in the metrics and keep a large app fast and easy to work with. I review code, mentor, and build tooling for the team.

Looking for a team where I can shape the frontend architecture, where code review is the norm, and where standards are agreed on and checked automatically. Based in Saint Petersburg: remote, hybrid or office. Angular is my core stack, and I’m open to React and Vue.

Title
Kirill Levin
Nickname
usertrv
Genre
Frontend, architecture
City
Saint Petersburg
Experience
5+ years
Format
remote, hybrid, office

Tour rider

System requirements for the employer

Minimum

OS
remote, hybrid or office in Saint Petersburg
Processor
code review on the team
Memory
at least one fellow frontend engineer
Graphics
designs in Figma
Network
broadband connection to backend engineers

Ideal

OS
remote
Processor
influence on frontend architecture
Memory
agreed standards and automated checks in CI
Graphics
complex UIs: forms, tables, editors, realtime
Sound card
meetups and knowledge sharing
Additional
AI tools are allowed

Album · Major update

BotHelp

Frontend Engineer • Mar 2025 — Sep 2026 • 9 tracks

High-load SaaS chatbot and messenger-marketing platform: mass broadcasts, real-time operator chats, bot builder, CRM integrations and AI agents. Telegram, VK, MAX, WhatsApp.

  1. 1Billing frontend and four payment providers: ≈30% of paying customers use plan add-ons.
  2. 2Marketing site: CTA blocks with UTM passthrough brought +50% sign-up traffic.
  3. 3Wrote the refactoring plan that became the team standard and rebuilt the Nx layer architecture by it.
  4. 4Moved growth tools to a definition registry: a new tool in 1–2 days instead of a week.
  5. 5Automated data-testids for E2E; the team launched smoke test automation.
  6. 6Cut the bot builder’s open time by 85%: a large scenario opens in 2 s instead of 13.
  7. 7Rebuilt the main dashboard pages with folders and a mobile version: large lists render 93% faster.
  8. 8Reworked message formatting for Telegram, VK and MAX: AST-level HTML ↔ Markdown conversion with edge cases covered by tests.
  9. 9Owned frontend architecture in a team of 5 developers: code review (including the Flutter app), mentored two developers, rolled out AI-assisted development.

Stack: Angular 17–22, TypeScript, RxJS, NGXS, Signals, Nx, Jest, GoJS, Web Workers, WebSocket, Svelte 5, Flutter, GitLab CI

Album · Update

T1

Frontend Engineer • Jul 2023 — Mar 2025 • 4 tracks

IT holding, systems integration. A visual low-code CRM editor where implementation teams assemble business services.

  1. 1Sped up pages with 10k-row tables: lazy data and module loading, faster table and graph rendering.
  2. 2Low-code editor screens: dynamic forms, configurable tables, ECharts graphs and diagrams, report export.
  3. 3Three internal UI-kit components: Angular wrappers over Lit web components.
  4. 4One of two frontend engineers on a 20-person team: R&D, tech designs, code review, meetups, onboarding.

Stack: Angular 14–18, TypeScript, RxJS, Web Components, Lit, GraphQL, ECharts, Webpack, Vite

Album · Early Access

easstacademy

Frontend Engineer • Mar 2021 — May 2023 • 3 tracks

An online education platform with courses.

  1. 1Built the whole frontend solo: course site, blog, CMS, content and media admin.
  2. 2Payments, OAuth sign-in, PDF certificates and invoices.
  3. 3While I was there, the platform sold 200+ corporate licenses.

Stack: Angular 14, TypeScript, RxJS, Angular Material, Taiga UI, REST, Docker

0:000:25

SERIES

Kirill Levin

Open to offers2021–20263 Seasons9 EpisodesHD

Kirill Levin is a frontend developer from Saint Petersburg with 5+ years of commercial Angular. I build features whose effect shows up in the metrics and keep a large app fast and easy to work with. I review code, mentor, and build tooling for the team.

Maturity rating: 18+

Projects — Watch NowExplore All

Seasons

Episodes

Awards

  • +50%Conversion2026Unlocked2026+50% site-to-sign-up traffic
  • 30%CashierJul 2025UnlockedJul 2025≈30% of paying customers use plan add-ons
  • R&DArchitectSep 2025UnlockedSep 2025Refactoring plan became the team standard
  • 1–2dAssembly lineAug 2026UnlockedAug 2026A new growth tool in 1–2 days instead of a week
  • #idSharpshooterAug 2026UnlockedAug 2026data-testids generate themselves; smoke tests run on them
  • −85%SpeedrunnerApr 2026UnlockedApr 2026Time to open a large scenario −85% (13 s → 2 s)
  • −93%ImpatientApr 2025UnlockedApr 2025Time to render large lists −93% (30 s → 2 s)
  • MDPolyglotJun 2026UnlockedJun 2026Stable formatting for Telegram, VK and MAX
  • {T}Strictly typedAug 2026UnlockedAug 2026Every form in the app on native Typed Forms
  • ×2Mentor2025–2026Unlocked2025–2026Mentored two developers
  • 5Squad2026Unlocked2026Assemble a team of five AI agents
  • 99Border patrolAug 2026UnlockedAug 2026Module boundary violations: 99 → 15
  • i18nVocabularyAug 2026UnlockedAug 2026Purged ≈600 unused translation keys, added a CI gate
  • 1kThousandaireSep 2026UnlockedSep 2026≈1,050 unique commits across 11 repositories
  • 200Solo mode2023Unlocked2023A platform whose frontend I built alone sold 200+ corporate licenses
  • WSSilent widget2026Unlocked2026The widget connects to the server only after it opens

What the Critics Say

  • +50% sign-up traffic

    Once articles got CTA blocks that pass ref and UTM along, readers started going from the blog to sign-up 50% more often.
    Company blog · marketing site
  • ≈30% of paying customers

    About one in three paying customers uses add-ons. Trials, cancellations and downgrades behave predictably.
    Billing · plan add-ons
  • 13 s → 2 s

    A large scenario opens in 2 seconds instead of 13. Model conversion moved to a Web Worker, and rendering and loading were rewritten.
    Bot builder · main product screen
  • 3 messengers

    The same text looks the same in Telegram, VK and MAX: links, macros and line breaks survive the conversion. Edge cases are covered by tests.
    Broadcasts · Telegram, VK, MAX
  • 99 → 15

    I check module boundaries on every MR. There were 99 violations, now there are 15, and new ones don’t reach the main branch.
    ESLint · module boundaries
  • 0 empty dialogs

    The widget connects to the server only after a visitor opens it, so there’s no longer an empty dialog for every site visit.
    Operator inbox · AI widget

Cast

  • KLKirill LevinSquad leader · sets the task
  • AnAnalystIn-game: acceptance criteria
  • ArArchitectIn-game: mapping the impact
  • EnEngineerIn-game: code and tests
  • RvReviewerIn-game: verdict on the diff
  • DbDebuggerOn call: root cause
RU

README.md — usertrv

# Kirill Levin

![usertrv](./avatar.svg)
Kirill Levin is a frontend developer from Saint Petersburg with 5+ years of commercial Angular. I build features whose effect shows up in the metrics and keep a large app fast and easy to work with. I review code, mentor, and build tooling for the team.
> **Open to offers.** Looking for a team where I can shape the frontend architecture, where code review is the norm, and where standards are agreed on and checked automatically. Based in Saint Petersburg: remote, hybrid or office. Angular is my core stack, and I’m open to React and Vue.
## Details
- **Title:** Kirill Levin
- **Nickname:** usertrv
- **Genre:** Frontend, architecture
- **City:** Saint Petersburg
- **Experience:** 5+ years
- **Format:** remote, hybrid, office
## Stack
`Angular` `TypeScript` `RxJS` `NGXS` `Signals` `Nx` `Architecture` `Performance` `Billing` `Code review` `Mentoring` `AI-assisted`
## Contacts
- Telegram: [@user_trv](https://t.me/user_trv)
- Email: [trv.code@gmail.com](mailto:trv.code@gmail.com)
- GitHub: [userTrv](https://github.com/userTrv)

Kirill Levin

Kirill Levin is a frontend developer from Saint Petersburg with 5+ years of commercial Angular. I build features whose effect shows up in the metrics and keep a large app fast and easy to work with. I review code, mentor, and build tooling for the team.

Open to offers. Looking for a team where I can shape the frontend architecture, where code review is the norm, and where standards are agreed on and checked automatically. Based in Saint Petersburg: remote, hybrid or office. Angular is my core stack, and I’m open to React and Vue.

Details

  • Title: Kirill Levin
  • Nickname: usertrv
  • Genre: Frontend, architecture
  • City: Saint Petersburg
  • Experience: 5+ years
  • Format: remote, hybrid, office

Stack

Angular TypeScript RxJS NGXS Signals Nx Architecture Performance Billing Code review Mentoring AI-assisted

Contacts

main00Ln 1, Col 1Spaces: 2UTF-8LFMarkdown

Open to offers

Looking for a team where I can shape the frontend architecture, where code review is the norm, and where standards are agreed on and checked automatically. Based in Saint Petersburg: remote, hybrid or office. Angular is my core stack, and I’m open to React and Vue.

kirill — -zsh — 80×24

Type help to see the list of commands.

kirill@usertrv ~ % whoami

Kirill Levin (usertrv) — frontend engineer

Saint Petersburg · 5+ years · remote, hybrid, office

Open to offers.

kirill@usertrv ~ % cat skills.txt | head

Angular 5+ yrs, v14–22

TypeScript 5+ yrs

JavaScript 5+ yrs

RxJS 5+ yrs

NGXS state factories

Angular Signals panel migration

Typed Forms every form in the app

Nx module boundaries

SCSS responsive, dark theme

ESLint custom rules

usertrv.dev

Portfolio of Kirill Levin

Title
Kirill Levin
Nickname
usertrv
Genre
Frontend, architecture
City
Saint Petersburg
Experience
5+ years
Format
remote, hybrid, office

This site is not affiliated with Apple Inc. or Microsoft Corporation. All trademarks belong to their respective owners. © 2026 Kirill Levin

Skip to content
RU
Kirill Levin

Kirill LevinVerified

@usertrv≈1,050 commits9 videos

Kirill Levin is a frontend developer from Saint Petersburg with 5+ years of commercial Angular. I build features whose effect shows up in the metrics and keep a large app fast and easy to work with. I review code, mentor, and build tooling for the team.

BotHelp · Conversion · 2026

Turn blog traffic into product sign-ups without losing attribution on the way from the site to the app.

Site-to-sign-up traffic grew by 50%, and traffic sources are attributed correctly.

#WordPress#UTM#YandexMetrica#Amplitude

Videos

  • BotHelp · Conversion

  • BotHelp · Revenue

  • BotHelp · Delivery speed

  • BotHelp · Architecture

  • BotHelp · Team tooling

  • BotHelp · Speed

  • BotHelp · Stability

  • BotHelp · AI in development

  • BotHelp · Embeddable code

Shorts

Playlists

Community

Kirill Levin Pinned

Open to offers

Looking for a team where I can shape the frontend architecture, where code review is the norm, and where standards are agreed on and checked automatically. Based in Saint Petersburg: remote, hybrid or office. Angular is my core stack, and I’m open to React and Vue.

Featured channels

The agents run on Claude Code and Cursor. Decisions are mine, and I take personal responsibility for the code.
  • Kirill LevinSquad leader · sets the task
  • AnalystIn-game: acceptance criteria
  • ArchitectIn-game: mapping the impact
  • EngineerIn-game: code and tests
  • ReviewerIn-game: verdict on the diff
  • DebuggerOn call: root cause
← → for other videos, space to pause
0:00 / 0:20

Kirill Levin

@usertrv · ≈1,050 commits

@usertrv

Conversion

+50% site-to-sign-up traffic

2026

@usertrv

Cashier

≈30% of paying customers use plan add-ons

Jul 2025

@usertrv

Architect

Refactoring plan became the team standard

Sep 2025

@usertrv

Assembly line

A new growth tool in 1–2 days instead of a week

Aug 2026

@usertrv

Sharpshooter

data-testids generate themselves; smoke tests run on them

Aug 2026

@usertrv

Speedrunner

Time to open a large scenario −85% (13 s → 2 s)

Apr 2026

@usertrv

Impatient

Time to render large lists −93% (30 s → 2 s)

Apr 2025

@usertrv

Polyglot

Stable formatting for Telegram, VK and MAX

Jun 2026

@usertrv

Strictly typed

Every form in the app on native Typed Forms

Aug 2026

@usertrv

Mentor

Mentored two developers

2025–2026

@usertrv

Squad

Assemble a team of five AI agents

2026

@usertrv

Border patrol

Module boundary violations: 99 → 15

Aug 2026

@usertrv

Vocabulary

Purged ≈600 unused translation keys, added a CI gate

Aug 2026

@usertrv

Thousandaire

≈1,050 unique commits across 11 repositories

Sep 2026

@usertrv

Solo mode

A platform whose frontend I built alone sold 200+ corporate licenses

2023

@usertrv

Silent widget

The widget connects to the server only after it opens

2026

Work experience

Kirill Levin · 3 videos

  1. Frontend Engineer · BotHelp

    Mar 2025 — Sep 2026 · Major update 3.0

    High-load SaaS chatbot and messenger-marketing platform: mass broadcasts, real-time operator chats, bot builder, CRM integrations and AI agents. Telegram, VK, MAX, WhatsApp.

    • Billing frontend and four payment providers: ≈30% of paying customers use plan add-ons.
    • Marketing site: CTA blocks with UTM passthrough brought +50% sign-up traffic.
    • Wrote the refactoring plan that became the team standard and rebuilt the Nx layer architecture by it.
    • Moved growth tools to a definition registry: a new tool in 1–2 days instead of a week.
    • Automated data-testids for E2E; the team launched smoke test automation.
    • Cut the bot builder’s open time by 85%: a large scenario opens in 2 s instead of 13.
    • Rebuilt the main dashboard pages with folders and a mobile version: large lists render 93% faster.
    • Reworked message formatting for Telegram, VK and MAX: AST-level HTML ↔ Markdown conversion with edge cases covered by tests.
    • Owned frontend architecture in a team of 5 developers: code review (including the Flutter app), mentored two developers, rolled out AI-assisted development.

    Stack: Angular 17–22, TypeScript, RxJS, NGXS, Signals, Nx, Jest, GoJS, Web Workers, WebSocket, Svelte 5, Flutter, GitLab CI

  2. Frontend Engineer · T1

    Jul 2023 — Mar 2025 · Update 2.0

    IT holding, systems integration. A visual low-code CRM editor where implementation teams assemble business services.

    • Sped up pages with 10k-row tables: lazy data and module loading, faster table and graph rendering.
    • Low-code editor screens: dynamic forms, configurable tables, ECharts graphs and diagrams, report export.
    • Three internal UI-kit components: Angular wrappers over Lit web components.
    • One of two frontend engineers on a 20-person team: R&D, tech designs, code review, meetups, onboarding.

    Stack: Angular 14–18, TypeScript, RxJS, Web Components, Lit, GraphQL, ECharts, Webpack, Vite

  3. Frontend Engineer · easstacademy

    Mar 2021 — May 2023 · Early Access 1.0

    An online education platform with courses.

    • Built the whole frontend solo: course site, blog, CMS, content and media admin.
    • Payments, OAuth sign-in, PDF certificates and invoices.
    • While I was there, the platform sold 200+ corporate licenses.

    Stack: Angular 14, TypeScript, RxJS, Angular Material, Taiga UI, REST, Docker

RUusertrv

Open to offers

Kirill Levin

Kirill Levin is a frontend developer from Saint Petersburg with 5+ years of commercial Angular. I build features whose effect shows up in the metrics and keep a large app fast and easy to work with. I review code, mentor, and build tooling for the team.

Trophies

In the browser

Arcade Games

Eight arcade games for one thumb

A set of small browser games for phones: a tower of slabs you trim with a precise tap, a drone swarm you lure into itself, ricochets through numbered blocks, speed sorting by swipe, a rope swing ahead of a chasing void, a one-tap chain reaction and a neon road taken sideways in a drift. All in plain Canvas 2D with no dependencies, Web Audio sound and local high scores. Also inside is the 3D game Black Hole: steer a black hole that swallows a procedural city, with Rapier physics in WebAssembly.

In the browser

Pulse Analytics

BI dashboard and report builder

KPIs with period comparison, sales drill-down, marketing funnel, cohorts and a pivot report builder. About 286k orders are generated and aggregated in a Web Worker; the UI only renders the results.

In the browser

Collab Board

Collaborative kanban with no backend

An offline-first kanban and whiteboard. Open a board in two tabs: cards, cursors and "who is editing" sync instantly, and the CRDT merges edits made offline.

8 games

Library

Trophies

Progress94%

16 trophies earned

  • 0Platinum
  • 2Gold
  • 5Silver
  • 9Bronze

Tier follows list order: the first two are gold, the next five silver, the rest bronze. There is one platinum, and the “Hire” button unlocks it.

  • PlatinumHidden achievementHire KirillUnlocks when you press “Hire”Press “Hire”. One step left: send a message.Not earned
  • +50%GoldConversion+50% site-to-sign-up trafficEarned: 2026
  • 30%GoldCashier≈30% of paying customers use plan add-onsEarned: Jul 2025
  • R&DSilverArchitectRefactoring plan became the team standardEarned: Sep 2025
  • 1–2dSilverAssembly lineA new growth tool in 1–2 days instead of a weekEarned: Aug 2026
  • #idSilverSharpshooterdata-testids generate themselves; smoke tests run on themEarned: Aug 2026
  • −85%SilverSpeedrunnerTime to open a large scenario −85% (13 s → 2 s)Earned: Apr 2026
  • −93%SilverImpatientTime to render large lists −93% (30 s → 2 s)Earned: Apr 2025
  • MDBronzePolyglotStable formatting for Telegram, VK and MAXEarned: Jun 2026
  • {T}BronzeStrictly typedEvery form in the app on native Typed FormsEarned: Aug 2026
  • ×2BronzeMentorMentored two developersEarned: 2025–2026
  • 5BronzeSquadAssemble a team of five AI agentsEarned: 2026
  • 99BronzeBorder patrolModule boundary violations: 99 → 15Earned: Aug 2026
  • i18nBronzeVocabularyPurged ≈600 unused translation keys, added a CI gateEarned: Aug 2026
  • 1kBronzeThousandaire≈1,050 unique commits across 11 repositoriesEarned: Sep 2026
  • 200BronzeSolo modeA platform whose frontend I built alone sold 200+ corporate licensesEarned: 2023
  • WSBronzeSilent widgetThe widget connects to the server only after it opensEarned: 2026

Activities

Party 6 online

  • Kirill LevinParty leaderOnline: Squad leader · sets the task
  • AnAnalystIn game: In-game: acceptance criteria
  • ArArchitectIn game: In-game: mapping the impact
  • EnEngineerIn game: In-game: code and tests
  • RvReviewerIn game: In-game: verdict on the diff
  • DbDebuggerAway: On call: root cause

The agents run on Claude Code and Cursor. Decisions are mine, and I take personal responsibility for the code.

Requirements System information

Minimum

OS
remote, hybrid or office in Saint Petersburg
Processor
code review on the team
Memory
at least one fellow frontend engineer
Graphics
designs in Figma
Network
broadband connection to backend engineers

Recommended

OS
remote
Processor
influence on frontend architecture
Memory
agreed standards and automated checks in CI
Graphics
complex UIs: forms, tables, editors, realtime
Sound card
meetups and knowledge sharing
Additional
AI tools are allowed

Career

  • v3.0Save file · Major updateBotHelpFrontend Engineer · Mar 2025 — Sep 2026

    High-load SaaS chatbot and messenger-marketing platform: mass broadcasts, real-time operator chats, bot builder, CRM integrations and AI agents. Telegram, VK, MAX, WhatsApp.

    Log

    • Billing frontend and four payment providers: ≈30% of paying customers use plan add-ons.
    • Marketing site: CTA blocks with UTM passthrough brought +50% sign-up traffic.
    • Wrote the refactoring plan that became the team standard and rebuilt the Nx layer architecture by it.
    • Moved growth tools to a definition registry: a new tool in 1–2 days instead of a week.
    • Automated data-testids for E2E; the team launched smoke test automation.
    • Cut the bot builder’s open time by 85%: a large scenario opens in 2 s instead of 13.
    • Rebuilt the main dashboard pages with folders and a mobile version: large lists render 93% faster.
    • Reworked message formatting for Telegram, VK and MAX: AST-level HTML ↔ Markdown conversion with edge cases covered by tests.
    • Owned frontend architecture in a team of 5 developers: code review (including the Flutter app), mentored two developers, rolled out AI-assisted development.

    Stack: Angular 17–22, TypeScript, RxJS, NGXS, Signals, Nx, Jest, GoJS, Web Workers, WebSocket, Svelte 5, Flutter, GitLab CI

  • v2.0Save file · UpdateT1Frontend Engineer · Jul 2023 — Mar 2025

    IT holding, systems integration. A visual low-code CRM editor where implementation teams assemble business services.

    Log

    • Sped up pages with 10k-row tables: lazy data and module loading, faster table and graph rendering.
    • Low-code editor screens: dynamic forms, configurable tables, ECharts graphs and diagrams, report export.
    • Three internal UI-kit components: Angular wrappers over Lit web components.
    • One of two frontend engineers on a 20-person team: R&D, tech designs, code review, meetups, onboarding.

    Stack: Angular 14–18, TypeScript, RxJS, Web Components, Lit, GraphQL, ECharts, Webpack, Vite

  • v1.0Save file · Early AccesseasstacademyFrontend Engineer · Mar 2021 — May 2023

    An online education platform with courses.

    Log

    • Built the whole frontend solo: course site, blog, CMS, content and media admin.
    • Payments, OAuth sign-in, PDF certificates and invoices.
    • While I was there, the platform sold 200+ corporate licenses.

    Stack: Angular 14, TypeScript, RxJS, Angular Material, Taiga UI, REST, Docker

Media Screenshots with numbers from real work

  • +50% sign-up trafficmarketing site
    Company blog
    Once articles got CTA blocks that pass ref and UTM along, readers started going from the blog to sign-up 50% more often.
  • ≈30% of paying customersplan add-ons
    Billing
    About one in three paying customers uses add-ons. Trials, cancellations and downgrades behave predictably.
  • 13 s → 2 smain product screen
    Bot builder
    A large scenario opens in 2 seconds instead of 13. Model conversion moved to a Web Worker, and rendering and loading were rewritten.
  • 3 messengersTelegram, VK, MAX
    Broadcasts
    The same text looks the same in Telegram, VK and MAX: links, macros and line breaks survive the conversion. Edge cases are covered by tests.
  • 99 → 15module boundaries
    ESLint
    I check module boundaries on every MR. There were 99 violations, now there are 15, and new ones don’t reach the main branch.
  • 0 empty dialogsAI widget
    Operator inbox
    The widget connects to the server only after a visitor opens it, so there’s no longer an empty dialog for every site visit.
ArticleTalk
ReadView history

Kirill Levin

From usertrv, the free encyclopedia

"usertrv" redirects here. This article is about the frontend engineer. For his pet projects, see List of projects by Kirill Levin.

Kirill Levin
Kirill LevinKirill Levin, 2026
TitleKirill Levin
Nicknameusertrv
GenreFrontend, architecture
CitySaint Petersburg
Experience5+ years
Formatremote, hybrid, office
Occupationfrontend engineer
Years active2021–present
EmployersBotHelp, T1, easstacademy
Known forfeatures with measurable impact, Angular app architecture
Statusopen to offers
Websiteusertrv.dev

Kirill Levin (usertrv) is a frontend developer from Saint Petersburg with 5+ years of commercial Angular. I build features whose effect shows up in the metrics and keep a large app fast and easy to work with. I review code, mentor, and build tooling for the team.[1]

5 years of commercial Angular: architecture, performance, and features whose effect shows up in the metrics.

Biography

Looking for a team where I can shape the frontend architecture, where code review is the norm, and where standards are agreed on and checked automatically. Based in Saint Petersburg: remote, hybrid or office. Angular is my core stack, and I’m open to React and Vue.

Fluent in English: speaking, reading and listening. ≈1,050 unique commits across 11 repositories[2].

Career

BotHelp (Mar 2025 — Sep 2026)

Frontend Engineer. High-load SaaS chatbot and messenger-marketing platform: mass broadcasts, real-time operator chats, bot builder, CRM integrations and AI agents. Telegram, VK, MAX, WhatsApp.

  • Billing frontend and four payment providers: ≈30% of paying customers use plan add-ons.
  • Marketing site: CTA blocks with UTM passthrough brought +50% sign-up traffic.
  • Wrote the refactoring plan that became the team standard and rebuilt the Nx layer architecture by it.
  • Moved growth tools to a definition registry: a new tool in 1–2 days instead of a week.
  • Automated data-testids for E2E; the team launched smoke test automation.
  • Cut the bot builder’s open time by 85%: a large scenario opens in 2 s instead of 13.
  • Rebuilt the main dashboard pages with folders and a mobile version: large lists render 93% faster.
  • Reworked message formatting for Telegram, VK and MAX: AST-level HTML ↔ Markdown conversion with edge cases covered by tests.
  • Owned frontend architecture in a team of 5 developers: code review (including the Flutter app), mentored two developers, rolled out AI-assisted development.

Stack: Angular 17–22, TypeScript, RxJS, NGXS, Signals, Nx, Jest, GoJS, Web Workers, WebSocket, Svelte 5, Flutter, GitLab CI

T1 (Jul 2023 — Mar 2025)

Frontend Engineer. IT holding, systems integration. A visual low-code CRM editor where implementation teams assemble business services.

  • Sped up pages with 10k-row tables: lazy data and module loading, faster table and graph rendering.
  • Low-code editor screens: dynamic forms, configurable tables, ECharts graphs and diagrams, report export.
  • Three internal UI-kit components: Angular wrappers over Lit web components.
  • One of two frontend engineers on a 20-person team: R&D, tech designs, code review, meetups, onboarding.

Stack: Angular 14–18, TypeScript, RxJS, Web Components, Lit, GraphQL, ECharts, Webpack, Vite

easstacademy (Mar 2021 — May 2023)

Frontend Engineer. An online education platform with courses.

  • Built the whole frontend solo: course site, blog, CMS, content and media admin.
  • Payments, OAuth sign-in, PDF certificates and invoices.
  • While I was there, the platform sold 200+ corporate licenses.

Stack: Angular 14, TypeScript, RxJS, Angular Material, Taiga UI, REST, Docker

Notable work

DescriptionImpactSource
Marketing site: +50% traffic to sign-up+50%BotHelp · 2026
Billing: ≈30% of paying customers use plan add-ons≈30%BotHelp · May 2025 — Jul 2026
A new tool in 1–2 days instead of a week1–2 daysBotHelp · Aug 2026
Frontend architecture: the refactoring plan became the team standard20+ modulesBotHelp · Sep 2025 — Aug 2026
Test automation on stable data-testidssmoke E2EBotHelp · Jun — Aug 2026
Bot builder: 85% less time to open−85%BotHelp · Apr 2026
Stable formatting across Telegram, VK and MAX3 messengersBotHelp · Jan — Jun 2026
An agent squad: analyst, architect, engineer, reviewer, debugger5 agentsBotHelp · 2026
AI-agent chat widget in Svelte 5Svelte 5BotHelp · May — Sep 2026

Conversion: Marketing site: +50% traffic to sign-up

Problem. Turn blog traffic into product sign-ups without losing attribution on the way from the site to the app.

Solution. Built WordPress CTA blocks and an article sidebar that pass ref and UTM along, plus a mega menu and a CRM-integration landing page. Moved Yandex Metrica to the new tag so the page view is guaranteed to fire before the redirect, set up cross-domain cookie sync for the affiliate network, and removed duplicate Amplitude events.

Result. Site-to-sign-up traffic grew by 50%, and traffic sources are attributed correctly.[1]

Revenue: Billing: ≈30% of paying customers use plan add-ons

Problem. The product needed paid and free add-ons on top of plans that behave correctly across trial, expiry, cancellation and downgrade.

Solution. Built the billing frontend: add-ons, extra storage and tokens, limits, downgrade validation, subscription edge states, a mobile version. Integrated FastSpring, Robokassa, YooMoney and one more provider.

Result. About 30% of paying customers use add-ons. Subscription edge cases went through more than six QA iterations.

Delivery speed: A new tool in 1–2 days instead of a week

Problem. About ten subscriber growth tools (widgets, landing pages, links, comment auto-replies) were copies of each other. Adding a new one took a week.

Solution. Consolidated them into a definition registry with a unified CRUD contract, NGXS state and form-adapter factories, and base components. Routes are generated from the registry, NgModules are gone, components are standalone.

Result. A new tool is now a registry definition. Along the way I deleted 7.6k lines of legacy and replaced snapshot tests with specs.

Architecture: Frontend architecture: the refactoring plan became the team standard

Problem. A large Angular app in an Nx monorepo grew without clear boundaries: features pulled each other in through shared layers, the bundle chunked poorly, and new work kept getting more expensive.

Solution. Audited the codebase and wrote a phased refactoring plan that the team adopted as a standard. Following it, rebuilt the layers (shared → core → features), moved 20+ modules’ code to their owners, and enforced boundaries with ESLint rules in CI. Migrated every form to Typed Forms and panels and menus to Signals.

Result. Five frontend engineers work to one standard. Module boundary violations dropped from 99 to 15, chunking improved, and the third-party forms library is gone.

Team tooling: Test automation on stable data-testids

Problem. E2E tests relied on brittle selectors, and placing data-testids by hand across hundreds of templates wasn’t realistic.

Solution. Wrote a Node.js template scanner, a rule-based name generator and a registry. Added a CI check, a pre-commit hook and a custom ESLint rule.

Result. testIds are generated automatically and checked in CI. The team built smoke test automation on top of them.

Speed: Bot builder: 85% less time to open

Problem. The GoJS-based visual scenario builder is the product’s main screen. A large scenario took about 13 seconds to open, and the page component had grown into a monolith.

Solution. Moved diagram model conversion to a Web Worker, split the page into services, rewrote rendering and model loading, and closed canvas sync races after WebSocket reconnects.

Result. A large scenario opens in 2 seconds instead of 13. I shipped the main-screen optimization in stages, with a fast rollback path.

Stability: Stable formatting across Telegram, VK and MAX

Problem. One message goes to three messengers, each with its own markup and length limits. Conversion broke links, macros and line breaks.

Solution. Wrote AST-level HTML ↔ Markdown conversion with link and macro escaping, length counters, previews and a converter for legacy Telegram messages.

Result. Edge cases are covered by tests, and formatting works the same across all three messengers.

AI in development: An agent squad: analyst, architect, engineer, reviewer, debugger

Problem. The team used AI tools inconsistently, and results depended on who was at the keyboard.

Solution. Rolled out AI-assisted development in Claude Code and Cursor. Agents in the roles of analyst, architect, engineer, reviewer and debugger take a task through phases with plan and decision files, and the /implement, /bugfix and /review commands cover common scenarios. Project rules describe architecture, testing, security (input handling, injections, secrets) and the git workflow.

Result. Quality is enforced by hooks: a phase can’t close without real lint and test runs, and dangerous git commands like force-push are blocked. Ran team meetups on the approach. Decisions are still mine.

Embeddable code: AI-agent chat widget in Svelte 5

Problem. Customers needed an AI-agent widget for their sites that doesn’t clash with the host page and doesn’t add unnecessary load.

Solution. Shadow DOM isolation, UTM tracking, branding, and a WebSocket connection only after the widget opens. Built a pnpm + Turborepo monorepo for public frontends and moved deploys to Shipit.

Result. Operators no longer get an empty dialog for every site visitor, and static deploys got stage, prod and rollback.

Pet projects

Main article: List of projects by Kirill Levin

Achievements

AchievementDescriptionDate
+50%Conversion+50% site-to-sign-up traffic2026
30%Cashier≈30% of paying customers use plan add-onsJul 2025
R&DArchitectRefactoring plan became the team standardSep 2025
1–2dAssembly lineA new growth tool in 1–2 days instead of a weekAug 2026
#idSharpshooterdata-testids generate themselves; smoke tests run on themAug 2026
−85%SpeedrunnerTime to open a large scenario −85% (13 s → 2 s)Apr 2026
−93%ImpatientTime to render large lists −93% (30 s → 2 s)Apr 2025
MDPolyglotStable formatting for Telegram, VK and MAXJun 2026
{T}Strictly typedEvery form in the app on native Typed FormsAug 2026
×2MentorMentored two developers2025–2026
5SquadAssemble a team of five AI agents2026
99Border patrolModule boundary violations: 99 → 15Aug 2026
i18nVocabularyPurged ≈600 unused translation keys, added a CI gateAug 2026
1kThousandaire≈1,050 unique commits across 11 repositoriesSep 2026
200Solo modeA platform whose frontend I built alone sold 200+ corporate licenses2023
WSSilent widgetThe widget connects to the server only after it opens2026

Reception

Written on behalf of the product and tools. The numbers are real.[3]

Once articles got CTA blocks that pass ref and UTM along, readers started going from the blog to sign-up 50% more often.

— Company blog, marketing site (+50% sign-up traffic)

About one in three paying customers uses add-ons. Trials, cancellations and downgrades behave predictably.

— Billing, plan add-ons (≈30% of paying customers)

A large scenario opens in 2 seconds instead of 13. Model conversion moved to a Web Worker, and rendering and loading were rewritten.

— Bot builder, main product screen (13 s → 2 s)

The same text looks the same in Telegram, VK and MAX: links, macros and line breaks survive the conversion. Edge cases are covered by tests.

— Broadcasts, Telegram, VK, MAX (3 messengers)

I check module boundaries on every MR. There were 99 violations, now there are 15, and new ones don’t reach the main branch.

— ESLint, module boundaries (99 → 15)

The widget connects to the server only after a visitor opens it, so there’s no longer an empty dialog for every site visit.

— Operator inbox, AI widget (0 empty dialogs)

Skills

Core stackAngular · TypeScript · JavaScript · RxJS · NGXS · Angular Signals · Typed Forms · Nx · SCSS · Claude Code · Cursor
Used in productionESLint · Jest · Web Workers · WebSocket · Node.js · Svelte 5 · Web Components · GraphQL · GitLab CI · Docker · pnpm + Turborepo · GoJS · Storybook
BasicFlutter · WordPress
Ready to learnReact · Vue

Employer requirements

Minimum

  • OS: remote, hybrid or office in Saint Petersburg
  • Processor: code review on the team
  • Memory: at least one fellow frontend engineer
  • Graphics: designs in Figma
  • Network: broadband connection to backend engineers

Recommended

  • OS: remote
  • Processor: influence on frontend architecture
  • Memory: agreed standards and automated checks in CI
  • Graphics: complex UIs: forms, tables, editors, realtime
  • Sound card: meetups and knowledge sharing
  • Additional: AI tools are allowed

Notes

  1. Figures are the author's measurements and team data; company code is not published.
  2. Unique non-merge commits across 11 repositories over 18 months.
  3. Reviews are written on behalf of products and tools; the numbers in them are real.
Kirill Levin
ProjectsArcade Games • Boat Move • Just Jump • Rocket Sim • Pulse Analytics • Collab Board • @usertrv/ui • Signal Form Builder
Core stackAngular • TypeScript • JavaScript • RxJS • NGXS • Angular Signals • Typed Forms • Nx • SCSS • Claude Code • Cursor
CareerBotHelp • T1 • easstacademy
Categories:
  • Frontend engineers
  • People from Saint Petersburg
  • Angular developers
  • Open to offers

Achievement unlocked