
Vladimir Shalimov
Verified Expert in Engineering
Kotlin and Java Back-end/Android Developer
Hrazdan, Kotayk Province, Armenia
Toptal member since July 27, 2020
Since 2011, Vladimir's been making a living in software development, delivering production-ready apps either from scratch or using the client's existing codebase. He uses a robust approach to application architecture and establishes best practices at the get-go to encourage stable software behavior and transparent development estimates. Vladimir's thorough analysis of business requirements to find obscure issues leads the product to meet not just project goals but real-life needs.
Portfolio
Experience
- Java - 14 years
- Android - 12 years
- REST APIs - 7 years
- Kotlin - 6 years
- PostgreSQL - 5 years
- Amazon Web Services (AWS) - 2 years
- Redis - 2 years
- Clean Architecture - 2 years
Work Experience
Senior Back-end Developer
Lightspeed
- Served as a back-end developer for the Ecwid (Lightspeed E-Series) eCommerce platform, being part of the core team.
- Redeveloped several susbsystems (website domain purchase, email verification, FedEx shipping integration) with full feature ownership.
- Coordinated PM, design, QA, other developers, support team feedback, metrics, and monitoring.
- Identified and fixed numerous minor issues related to taxes, billing, and shipping.
- Improved business processes proactively and mentored a new teammate.
Software Developer
Freelance Work
- Developed more than ten various applications/services (and one code library) from scratch and made them production-ready.
- Improved more than ten other applications/services that came with an existing codebase.
- Trained more than 5 younger developers as part of learning courses or through mentoring.
Senior Android Developer/Java Developer
Studio Mobile
- Maintained the development of a mobile app that controlled the aircraft cabin environment.
- Implemented an architecture to organize quick parallel development of the medical rescue system by a team of up to six developers.
- Developed a nice animated weather widget for Tizen Watch.
Android Developer/C# Developer
Touch Instinct
- Developed a geolocation multiplayer online game before Google developed its own.
- Developed a smooth and relaxing internet radio app.
- Created a colorful, animated app that helps users manage their home finances.
Experience
Ecwid
https://ecwid.com/Ecwid is a platform providing everything to create and manage an online store
- A store website + control panel with tons of e-commerce features: products catalog, orders, payments, taxes, shipping, product variations, customer management, marketing tools, etc
- Worldwide service with dozens of tweaks to support local law regulations and localization nuances
- Numerous integrations with payment providers, shipping carriers, social networks, etc
- 5+ mln of Java/Kotlin lines, + more on frontend
- About 100 microservices distributed between 3 continents. Up to 10^8 database rows, about 10^5-10^6 RPS
My contributions:
Our team's duty was to support core vital features up-to-date with the world changes. Over the time I took full technical ownership over a set of features:
- Integrated feature to buy and manage a custom domain name for the store website.
- FedEx shipper carrier integration.
- Merchant's email address verification for customer-facing emails
In addition, I
- Fixed dozens of minor issues within various parts of the system: taxes, shippings, internal billing, etc
- Mentored a new teammate during their onboarding
- Proactively communicated with other teams to improve internal business processes
Diool
The Diool Android app is used by point-of-sale operators (cashiers) to collect cash or mobile money payments from their customers. It is also used by business owners/managers to do other business operations (sending invoices, transferring money, etc).
Features:
• Various payment transactions: regular merchant payments, mobile money recharges, and invoice cash settlements
• User's financial account management, balance top-up/withdraw, and transaction history with export options
• Organization management: points-of-sale and employee configuration
• Contact list to send or request payments
• Payment requests (invoices)
• Approval flows for some types of operations
• Feature customization based on business/user type or pricing plan
My contributions:
• I managed the Android-related development—from requirements and UI analysis to Google Play publication. Starting from an existing project, a complete architectural and UI redesign was eventually done, and numerous features were implemented. Together with the team (back-end devs, Web devs, QA, UX designers, PM) we published dozens of releases.
Billfold
https://www.billfold.tech/Billfold software consists of a back end, a web panel, and a batch of Android apps.
Features:
• Check-in board (used for wristband activation)
• Two-sided shop app (one side for the salespeople, the other for the customers)
• Top-up app (used to refill wristband balance)
• Multiple payment types
• Event customization
• Extremely quick service: from seven seconds per customer
• Thousands of orders during a short concert intermission
• Partial offline work
• And more
My contributions:
I received the project with an existing codebase and was responsible for all Android development for the system. I refactored some modules to improve stability and resolve a set of user-annoying issues and also added dozens of new modules and features. I then repeatedly reviewed and redesigned business requirements to extend system capabilities and simplify behavior. Later, I also mentored a second Android developer and did code reviews.
Erste Energy
https://www.erste-energy.ru/Project details: System designed to gather building heating consumption meters data and calculate utility bills based on it. Looking simple at first glance, solution should consider lots of hidden corner-cases, like:
- Various heaters models/power and their impact to a whole building consumption
- Various apartment placing within building (closer to the outside or not)
- Separate calculation for shared use spaces (corridors, ladders, etc.)
- Apartment owners change in the middle of billing period
- Ability to operate and provide reasonable calculation results if some heating meters are out
- Various calculation algorithms and tariffs used by various customers
- Local law regulations
My contributions: I performed requirements analysis, designed system architecture and UI (together with UI-designer), developed app prototype. Communicating with business owner directly (who was totally "non-technical person" before) helped them to better understand their business needs, elaborate strategy and use prototype and analysis made to continue further system development
ESELTA
https://eselta.ru/Project details: huge distributed client-server system, used by such clients as Hermitage museum and Central bank department
- Variety of hardware supported: alarms, meters, door controllers, key storage, fire detectors, etc.
- Various hardware protocols: starting from vendor-provided SDKs ending with direct RS-232 calls
- Relatively high backend load: thousands of devices constantly sending updates to a central backend
- Access control features: users, zones, permissions, etc
- About 20 years old codebase (at the time I worked there)
My contributions: I implemented new features and modules, integration with new hardware models been guided by senior developer.
Gruzer
Features:
• Order a ride and choose a cargo type, route, departure time, and other advanced options.
• Track ride status.
• Track car geolocation.
• Change the route during the ride (if possible).
• Provide the option to pay by bank card.
• Driver/customer ratings/feedback
• User profile along with a ride history
• Templates for repeated rides
• Driver statistics
• Discount promo codes
My contributions:
I developed both Android applications from scratch to production-ready based on requirements and UI design provided by the client.
CoinKeeper
Features:
• Budget tracking: income, expenses, accounts, and transactions
• Various monthly, weekly, biweekly, and annual budgets
• UI animations, draggable panels, and coins with authentic material
• Design concept from before was nearly everywhere
• Colorful daily, weekly, and monthly statistics
• Financial goals
CoinKeeper is a friendly application from 2011 to 2013. After we finished the first few versions, our client redesigned the application and continued the development of a new, slightly different version.
The classic version was loved by users, so the client decided to keep it available on the market, and it is still alive!
My contributions:
I developed the Android version, initially alone and later in a team, and created the business logic layer. The Xamarin framework was used to share business logic between the iOS and Android versions.
I also contributed to the back-end development - the server to back up user financial data and synchronize the budget between multiple devices (family budget).
Forex Charts Graphics Engine
Engine features:
• Rendering: Forex candles (rates history), the current rate;
• Rendering: trading volumes, indicators, and trader's orders;
• Animated scrolling, gestures, horizontal scaling, and vertical scaling (auto and manual);
• The ability for users to add and edit custom graphic elements (lines, text labels, various chart marks);
• The ability for a client developer to customize all aspects rendered: colors, fonts, size, layout, scale/scroll modes, and custom graphic elements;
• Cross-platform compatibility with the iOS version;
• Nice performance.
My contributions:
I was a technical lead for a team of 3-4 Android developers. I designed engine architecture and organized the teamwork, including task management and assignment, estimates and planning, code review, and result control. I also communicated with the client team directly, which involved requirements analysis and technical consultations. I also wrote the code for the most challenging modules.
Zoi | App for Emergency Medical Workers
Features:
• A massive set of various types of information to collect;
• Various information types: from primitive strings and numbers to videos and car accident diagrams;
• All the fields that are to be filled by a medical worker are server configurable as various medical departments may use completely different kinds of information;
• Offline mode: in field;
• Online mode: in hospital;
• Skins;
• Reports;
• Driver license barcode scanner;
• Miscellaneous.
My contributions:
I led a team of 3 – 6 developers, and my challenge was organizing the quick parallel development based on a previously developed iOS version. I oversaw the architecture design, task planning, and code reviews, along with teaching and mentoring team members. I also wrote the code for the application core and a few modules.
Smart Home” System for Airplane (Company Title Is Under NDA)
Project details:
The system consists of:
• Java back end
• Two mobile apps for passengers (Android/iOS)
• Few desktop apps, crew terminals (.NET, Forms, WPF, Windows; later - Android)
• Web app for passenger (HTML5 and JS, was abandoned later due to the client's decision)
The Java back end is located directly on the aircraft, and client apps connect to it via Wi-Fi. The back end connects to aircraft hardware via an API provided by the client, based on our team's requirements.
My contributions:
I received a working project from the previous project manager in an "active development" state. Managed most of the technical project processes: client communications, feature estimates, task planning, and results control. For the coding part:
• Developed some new features in back end
• Built new features in the Android passenger app
• Created Android crew terminal from scratch (based on existing .NET app)
• Together with other team members, developed a web app for passengers
• Performed code review for an iOS app developed by another person
MaybeCoffee
Features (regular user application):
• User profile, description, photos, and so on
• Partners search: via a list or on a map
• Mini-chats on a map
• Chat with a partner with the option of planning a coffee meeting (coffeeshop selection, order, payment) inside the chat
• Order history along with order status tracking
• Loyalty program
Features (salesperson app):
• New coffee shop order notification
• Orders list
• Order status and payment tracking, and loyalty program tracking
My contributions:
I developed the salesperson version of the app from scratch and mentored my younger colleague, who developed the regular user version of the app from scratch. I guided him in the architecture design and task planning, along with reviewing his code to make sure it was high quality.
Flowerr
Features:
• Shops and goods catalog
• Cart
• Order checkout
• Bank card payment
• Orders and payments history
My contributions:
I developed the app from scratch based on the UI design provided.
Education
Specialist's Degree with Honors (MA Equivalent) in Computer Science
Petersburg State Transport University - St. Petersburg, Russia
Skills
Libraries/APIs
REST APIs, ACRA, Retrofit, Picasso, Xamarin.Android, Entity Framework
Tools
Git, Android Studio, Inkscape, Gradle, Slack, Jira, Redmine, MonoDevelop, Apache Maven, IntelliJ IDEA, Grafana
Languages
Java, Kotlin, C#, PHP 7, JavaScript, SQL
Frameworks
Android SDK, Glide, Spring Boot, .NET, Hibernate, ASP.NET, Dojo, Windows Presentation Foundation (WPF), Spring
Paradigms
Model View Presenter (MVP), Model View ViewModel (MVVM), Mobile Development, Clean Architecture, Design Patterns, Microservices, Database Design
Platforms
Android, Ubuntu, Xamarin, Web, Amazon Web Services (AWS), Docker
Storage
PostgreSQL, SQLite, MySQL, Databases, MongoDB, Redis, Microsoft SQL Server, Datadog
Other
Mobile App Development, SDKs, Mobile Architecture, Mobile APIs, Room, Computer Science, Algorithms, Jetpack Compose, Architecture, WebSockets, OkHttp, Payment APIs, Technical Leadership, Fintech, Text-to-Speech (TTS), Android App Design, Back-end, HAL, Team Management, Prometheus
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring