As part of our service expansion in Las Vegas, our app is now also available on Android. Behind its development is a team of brilliant engineers, and today we’re spotlighting two of the talents who have driven it: Olya and Kirill.
How would you describe Mobile Engineering?
Olya: Mobile engineers help companies bring their products directly into people’s hands, enabling users to fulfill their everyday needs conveniently through mobile applications. It is the job that connects customers to companies.
Kirill: Mobile Engineering is about building apps that people use; we create them and make sure that they run smoothly across different devices and platforms. It’s a lot like art, considering how much we work with transitions, animations, and other assets.
What does a typical day look like for you?
Olya: My day starts with checking whether anything occurred overnight that needs my attention to keep our operations running smoothly. Once everything is confirmed stable, I switch to daily tasks: reviewing requests, implementing new features or fixing bugs, syncing with my team on current tasks and statuses, and coordinating with Product Managers or Designers as needed.
Kirill: The work itself is different day to day. Sometimes I’m focusing on design and architecture, and other times it’s writing code. On occasion, I team up with the backend folks to work on API and interactions. Sometimes I will head to the office and run tests with the real vehicles!

Which tools, frameworks, or languages do you use most often?
Olya: I review and manage requests through GitHub, monitor app performance and crashes using Sentry, and analyze user behavior with Amplitude to guide product decisions.
Kirill: React Native and TypeScript are essential to our functions. When I need to dive into platform-specific stuff, I have to switch to Kotlin or Swift. In software development, there are many languages, and you will be working with 4 or 5 of them at any given time for the same project.
What are the challenges of developing a cross-platform application?
Olya: Cross-platform development offers great speed and efficiency, and React Native helps us deliver features faster for both iOS and Android. However, it also introduces complexities, such as platform-specific edge cases, dependency compatibility, and inconsistent device behavior. Native integrations, performance optimizations, and aligning the user experience with platform-specific expectations can be particularly challenging.
Kirill: More often, development is more like tweaking, debugging, and bending things over backwards. You need to have a deep understanding of both iOS and Android systems. No matter how similar things are between the apps, on the systems themselves, they will react and run entirely differently.
How do you gather and respond to user feedback or app store reviews?
Olya: We really value our customers and actively listen to their feedback. There are several ways users can share their thoughts: in-app surveys, dedicated feedback email options, and, of course, through app store reviews. Based on this feedback, we aim to convert it into feature requests for our team, helping us improve the app and make our users’ experience easier and more enjoyable.

What skills or experiences have been most valuable in your career and your job at Vay?
Kirill: The answer might sound cliché, but it is problem-solving. It’s the biggest skill I’ve learned. This job is not just about writing the code to solve a problem; you need to understand what the actual problem you’re solving is. Asking the right questions to the right people at the right time will help you make strides in solving the issue.
What’s the most challenging part of developing an app for a remotely driven service like ours?
Olya: One of the biggest challenges is the level of complexity and coordination involved. Keeping everything in sync across multiple systems – while making it feel smooth and intuitive to the user – requires a deep understanding of how all the components interact. But this complexity also gives me the opportunity to take a holistic view and influence the system in the right places to build efficient, reliable solutions.
Kirill: Managing the complex states the app goes through from booking to completing the trip is a challenge. There are so many little things that can go wrong, like connection drops, glitches, or Bluetooth issues. As mobile engineers, we have to make sure that each step runs smoothly so that the user never feels the complexity of what’s going on within the app.
Do you need a specific background to join Vay’s Software Engineering team?
Olya: To join our team, experience with React Native is a must. Background in native development is definitely a plus, especially when dealing with deeper integrations. Just as important is the ability to take ownership: from designing and implementing a feature to testing and deploying it end-to-end for our customers.
Kirill: Having a solid foundation in software engineering really helps, as mobile development touches on so many things: UI, UX, hardware, and many other integrations. Handling all of those different aspects makes it really helpful to navigate work at Vay!