
The Secret Life of Photos in the X5 Mystery Shopper Club
MoscowJS 70 (2026)
Loading content…

Hi! My name is Artur, and I am a second-generation application developer. My passion for computers is a family legacy—sparked by my godfather and school computer science teacher, and later fueled by years of hands-on experience across the entire spectrum of software development.
My career path bridges different eras of technology. I started out building graphical desktop interfaces using Pascal and C++, alongside the Win32 API and Borland VCL.
Later, I shifted to early client-server applications for the corporate world, working with Java, JSP/JSF, Eclipse RCP/RAP, and SWT, while ensuring quality through test automation with Selenium RC and WebDriver.
I was at the forefront of the web technology transformation, building dynamic applications using first-generation tools like AJAX, jQuery UI, ExtJS, Angular.js, and Ember.js.
I consider this deep historical context my greatest asset. It allows me to design modern applications using React, WASM, Web Components, and TypeScript with a profound understanding of the problems they solve—ensuring that these tools aren't just trendy, but truly well-designed, scalable, and built to last.
Today, I focus on creating accessible, user-centric, scalable, and offline-capable web products that run on a wide range of devices for millions of X5 Group retail customers.
I've also come full circle: I'm passing on my experience and the joy of creation to the next generation by teaching my children how to program using Scratch, MakeCode, and Blockly.
I'm interested in
Building clear and maintainable engineering systems based on SOLID, KISS, YAGNI, ETC, and DRY principles
Creating convenient, beautiful, accessible, responsive, and user-friendly interfaces for people
Keeping up with the latest technologies, understanding them, and adapting them for practical application
Continuing to learn through everyday practice and MOOC platforms
Essential development tools I use daily
When code splitting meets a fresh deploy — a static fallback that runs without the bundle, careful reloads for missing chunks, and the Service Worker telemetry that makes recovery something other than guesswork.
05.07.2026
Code splitting assumes the network will be there when the user navigates; offline support assumes it will not. How I split chunks into offline-critical and expendable, why the webpack trick does not survive the move to Vite, and the Service Worker layers that keep the critical code around.
30.06.2026
A working accessibility stack for web engineers — WCAG, ARIA, APG, WAI, UI kits, manual testing, audit tools, linters, CI/CD, E2E, and AI agents.
27.05.2026
Системное увеличение шрифта в WebView, измерение масштаба через эталонный элемент и компромисс textScaleManager с data-original-text-size.
12.05.2026
A hands-on five-step accessibility audit of Wildberries, one of the largest e-commerce marketplaces in the CIS, from the first Tab press to a checkout that never happens.
24.01.2026
The View Transitions API has been shipping in my mobile WebView PWA for over a year. The navigation wrapper, named groups, header and tab bar isolation, and the Safari blur artifacts — no waiting on React's ViewTransition.
20.01.2026
Conference talks with video and slides
A practical approach to splitting colors into palette, functional and component levels with CSS Custom Properties.
11.08.2020
Что важно в индустриальном подходе к дизайну интерфейсов и разработке.
15.06.2020
Практический аудит доступности маркетплейса "Wildberries" с использованием подхода из 5 шагов.
25.01.2026
Какие тесты действительно важны на проекте и почему.
19.07.2017
Hobbies on a professional site may seem unnecessary, but in reality it is the opposite. All my hobbies complement my love of programming and computers. Illustration helps balance visual skills in frontend and design. Collecting teaches order, a systematic approach, meticulousness, and attention to detail. Cycling resets the mind and gives the eyes a break now and then. And teaching kids to code shows that I still enjoy programming as a hobby, keep a childlike curiosity about the craft, and know how to teach others.
I'm always open to discussing interesting projects.
If you have something for me, feel free to reach out.