✦ LOCK IN ✦ GIVE HIM A FAT OFFER ✦ DONT SLEEP ON THIS ✦ SUN IS DOwN FReEZIN C0LD THATS HOW U ALREaDY KnOW ✦ WE ARE SO BACK ✦ SCUUUUuuuuuuBBaaaa ✦ STILL READING??? ✦ REALITY ENTHUSIAST ✦ ✦ LOCK IN ✦ GIVE HIM A FAT OFFER ✦ DONT SLEEP ON THIS ✦ SUN IS DOwN FReEZIN C0LD THATS HOW U ALREaDY KnOW ✦ WE ARE SO BACK ✦ SCUUUUuuuuuuBBaaaa ✦ STILL READING??? ✦ REALITY ENTHUSIAST ✦
I’m a product designer at GPB.Tech, responsible for design across payments and transfers. I’ve spent 6+ years building digital products, first as a project manager at Rocketbank, Kinopoisk and Yandex, and then as a designer. My experience spans fintech, streaming and subscription services, where I balance user needs and business goals with engineering and legal constraints. I’m always up for a new field, a challenging problem and the chance to build something with a great team
This isn’t a collection of full case studies. It’s where I test interaction ideas that come to me late at night — gestures, motion and animation. Everything here is a working prototype
backward
Tune Deck
A pocket music player inspired by old portable electronics. This case is about how it looks, feels and sounds
I wanted to make an app that feels like something from the past, with a plastic body, tactile buttons, knobs and a simple pixel display. No research, metrics or business goals here. We get enough of those at work
The video below takes you through the player. After that, I’ll walk you through a few interactions. Some clips have sound, which you can turn on with the button below each video
Intro and outro
Tune Deck starts up with a soft retro animation. Switch it off, and the screen fades away
INTROOUTRO
A shape in motion
I went with a simple diamond made of cubes. When you change tracks, the cubes form a pointer, then return to the diamond
PREV TRACKNEXT TRACK
Following the rhythm
At first, the cubes moved randomly while the music played. I wasn’t happy with that, so I tried detecting low-frequency hits. A simple volume threshold missed parts of the rhythm, though, and I needed a more reliable way to find the beat
I analysed each track in advance with Beat This, a model that finds beats and the starts of bars. Then I measured the low frequencies around each beat to give stronger hits more weight. The player follows this map as the track plays, using small pulses and stronger accents to move the diamond. I was surprised by how well it works, even with complex tracks
PLAY
Three states, one shape
The diamond has three states. In Play, the cubes move to the rhythm. In Pause, they form a pause symbol. In Stop, everything stands still, with only the centre cube lit
PLAY / PAUSE / STOP
Turn the sound on for this part
The treble and bass dials each have their own sound, inspired by knobs on audio equipment and musical instruments. There’s no background music here, so you can hear every click. I don’t know what it is, but I really enjoy turning these things
TREBLE · MAGNETICBASS · MICRO
Between stations
I wanted changing stations to feel like tuning a radio. You hear a brief tuning sound, followed by the station’s jingle. The waveform moves with the sound, too. I think little details like this make the whole thing feel more alive
RADIO
I’d love to turn Tune Deck into a music app I can use every day and eventually put it on the App Store. I’m making it mostly for fun, but it would be nice to have a player made just for me
backward
Faster Transfers
A flow 5M+ people use daily, moving $400M+ a day. I took it from six steps down to three, bringing recipient choice, amount and confirmation into one faster path
5M+users
$400M+daily volume
~3×faster to complete
Context
Transfers through the Faster Payments System (SBP) are the most-used flow in the bank's app. When I joined the team, the flow had been unchanged for years. The app didn't remember your last transfer or guide you through it. It processed the details in the same clunky way every time. Sending one transfer meant going through six separate screens, including bank selection, the amount, a review and OTP confirmation.
For something people do every day, six steps take far too long. Other banks had already made transfers easier, and we risked losing users to them. Here's what the old flow looked like:
Quick fixes or a redesign
At first, we were discussing a few small changes for a single sprint. The business felt the flow was working fine, but I proposed a full redesign and backed it up with analytics, recurring support complaints, a competitor review and user interviews. Stakeholders supported the approach. We set out to cut transfer time in half without losing anything important.
Execution
I decided to work without custom components and rely on the design system. I focused on the problems the data revealed. Together with analysts and engineers, we worked out what we could realistically change and directed our efforts to the places where users struggled most.
We rolled out the changes gradually and with extra care. First we tested them within the team, then with a friends and family group. After that, we opened the flow to 0.5% of users and expanded access in small steps until we reached 100%.
What shipped
Fewer steps: 6 → 3. Recipient → amount → done. We reviewed each step we removed. The recipient's bank is now selected automatically, and the system gets it right 96% of the time. It chooses the user's priority bank or the most relevant one based on past transfers to that recipient. A separate review screen is no longer needed because all the details are visible on one screen. OTP is only required above a threshold high enough to cover everyday transfers. We also moved phone number scanning into the recipient field, where users would expect to find it.
Even easier to use. We added recent transfers with the recipient, bank and amount visible at a glance. Users can repeat a transfer and have all the fields filled in automatically, with the option to change any details. Favorites and relevant contacts are now visible on the screen too. Moving the scan option made room for them.
Clear fees. The fee is now calculated on the screen using the user's free-transfer limit. You can see how much you can still send without a fee. Unexpected fees at the final step were one of the main reasons people abandoned a transfer. Once the fee was clear upfront, fewer people dropped off. The transfer method used to take up a line of text on the screen. Now a compact SBP logo on the button does the job.
Simpler amount entry. We built a calculator into the amount field, so users can work out how to split a bill without leaving the app. At their request, we also added a suggested option to transfer the entire balance in one tap.
A new status screen. The transfer status and all the necessary information are now easy to read. There's also space below for personalized advertising and offers.
The point
We planned to cut transfer time in half and ended up reducing it to roughly a third. Before the redesign, a transfer took around a minute and a half. Now it takes under 30 seconds. In interviews, 19 of 20 participants confirmed that the new flow was noticeably easier to use. Support tickets about unclear or unexpected fees dropped by a third.
The result is a real success, but there's no reason to stop here. There are plenty of improvements still planned, including work users won't see on the screen
backward
Money via QR
Added a new way to receive money and collect it for shared goals. Built with the national payment system operator, as the market's first cross-bank collection on the Faster Payments System (SBP)
$300Kmonthly volume
24Kmonthly top-ups
$12.5avg. check
Context
To receive money, you had to share your phone number, card number or account details, either out loud or in a chat. Collecting money for a shared goal meant giving the same details to everyone taking part. You don't always want to share them with everyone, and sometimes it just isn't appropriate.
We didn't have a group collection feature at all, not even one that let customers of our own bank collect money from each other, so there was a lot to build from scratch. Other banks had solutions, but they only worked smoothly within a single bank. The moment a sender came from another bank, things got complicated. Simply copying what already existed wasn't going to be enough.
The opportunity
We partnered with the national payment system operator and came up with a solution together. A personal QR code based on SBP lets people send money from any participating bank without extra fees for either side.
The benefit for the business was clear. Increasing incoming transfers to the bank is always a welcome opportunity. We agreed to time the launch for the country's main fintech forum.
My job was to build the first flow on the market with this combination of features. I handled the design on my own, from discovery all the way through to launch.
Approach
We needed a complex feature working well before the forum, and there wasn't much time. Given NSPK's branding requirements and the technical constraints, we focused on the core flow and left narrower use cases for later. I worked within the existing design system and kept custom elements to a minimum. Speed and build quality were both priorities.
Validation ran alongside backend development. While shaping the core flow, I studied markets where QR codes are common for personal transfers and collections, and formed hypotheses about QR creation and the collection mechanic.
It was a fairly chaotic approach, but it paid off. We managed to test a lot of ideas with a small group of active users. NSPK had its own quantitative and qualitative research, and it was energizing to see how closely their findings matched ours. Whether that was luck or good teamwork is hard to say, but it gave me a serious rush of endorphins.
What shipped
One screen, two jobs. Users can start a collection by choosing a goal, like a gift for a colleague or shared expenses with roommates. They can also go straight to Just receive payments and use the QR as a personal payment credential without any extra hassle.
A QR you control. Once created, the code works until you reset it. I believe payment details should stay the same. You wouldn't ask someone for a new card or phone number every time you send money, would you? A personal QR code shared yesterday should still work today. After a reset, the old code stops working immediately and the new one is ready to use. The recipient doesn't have to share their phone number when using a QR code, so they can give it to a stranger without giving away their contact details.
A personal QR has no fixed amount by default, but you can set one if you want to ask for a specific amount, like $10 for a drink. When creating a collection, the organizer can set an amount for participants or leave it open, so everyone can send what they can or want to.
A simple path for the sender. Scanning the QR code with a bank app opens the SBP transfer flow straight away. Scanning it with the phone's camera opens an NSPK page that directs the sender to the bank they want to use.
The details are already filled in. The sender sees the recipient and, for a collection, its goal. All that's left is to confirm the set amount or enter their own and complete the transfer. There's no separate app to install, account to create or code to enter.
Collection details. Each QR has its own transaction history, so the organizer can see who has sent money and how much, without extra steps. This was all part of the core functionality, but there's plenty more I want to do. Later stages include more flexible amount settings, such as a range instead of a fixed amount, invitations straight from the app, more customization, UI improvements and other refinements.
The point
The QR code became a way to share payment details however you like. Show it on your phone, send a screenshot, print it and put it on the fridge, or even put it on a random billboard.
Prototype testing throughout development confirmed we were heading in the right direction. People saw cross-bank collection as the main advantage over previous solutions. Keeping their details private and having no fees also helped build trust.
Another good moment was presenting the launch at the fintech forum, where the solution received a positive response from people across the industry.
As expected, expats from countries where QR transfers are already familiar were the first and most active users. Others are adopting it more gradually, but people who try it tend to come back. More than 48% returned after their first use, and overall adoption continues to grow.
At around $300K in monthly volume, it's still a small share of the transfers business. We expect it to approach $1M a month within about six months without relying on heavy promotion. The current trend supports that expectation. Being first gives us a chance to establish the feature before competitors catch up. I think we've built a solid alternative to standard payment details and a foundation for developing collections further. There's still plenty of work ahead, and we keep moving forward