Vladyslav V. Android Engineer

Android

Summary

- 7+ years of commercial experience in IT
- Experience in developing applications using Java, Kotlin
- Excellent knowledge in OOP
- Experience in using Design patterns (MVP, MVVM)
- Experience in using SQLite
- Good logical thinking, hard-working, self-learning, result oriented
- Good attention to details.
- Upper-Intermediate English
- Availability starting from 01/08/2023

Experience

Android Developer

August 2019 - Present

Android Developer, NETSOFTWARE

March 2016 - July 2019

Projects

Android developer

May 2023 – Aug 2023
Description: The application is a link between the Philips devices installed on the truck and the display of data from these devices on the driver's phone. The application allows, if driver has the necessary devices, to monitor the status of tire pressure, doors sensors and windows sensors, etc. It all depends on the set of devices that a particular truck has. A special gateway allows to pair devices with the application via bluetooth.The application also monitors and rewards the driver for installing new devices or for safe driving, such as braking intensity, travel time, safe speed, etc., and gives the driver various rewards in the form of badges.The application also has a social component. So registered users can communicate via a call (both a regular call and a CB radio) with other users. The user can set different statuses depending on how free to call.Inside there are several shops where driver can buy new devices or merch.
Responsibilities:

  • Create new features(calls and other), bug fixing, refactoring, code optimization, code review

Technologies: Kotlin, Compose, Amazon Chime, GraphQL, Hilt, Room, Coroutines, Flow, MVVM, Clean Architecture, Firebase, Navigation Architecture Component

Lead Android developer

Nov 2023 – May 2023
Description: It's bank app, which allows customers to conveniently access and manage their financial accounts, perform various banking transactions, and other useful features to communicate with bank. Overall, the application aims to provide customers with a seamless, user-friendly, and secure banking experience on their mobile devices.
An important part of this project was that we were had an old app on legacy architecture, and we need to rewrite it to new design and architecture.
Responsibilities:

  • Analyze and discuss requirements from client, creation of new features, refactoring, code optimization, rewriting for a new architecture, test coverage, code review

Technologies: Kotlin, Koin, Hilt, Room, Coroutines, Flow, MVVM, Clean Architecture (Multi-module), Tests (All types), Firebase, Navigation Architecture Component, Retrofit, Moshi, CI/CD, Custom Views

Team-Lead Android developer

Feb 2022 - Nov 2023
Description: The client wanted to offer a new concept of social networking app, for people to gather and communicate in different ways. The purpose of the application is to bring you a club atmosphere where you can have fun with friends, make new friends, just relax and listen to music, see some performance, create interest clubs, attend stand-ups and much more. This solution was supposed to cover all platforms and devices: for both mobile and desktop users.
Responsibilities:

  • Problem solving, planning, prioritizing tasks and features, researching effective technical solutions, exposing organizational needs, helping with product roadmap, developing features for android platform.

Technologies: Kotlin, XMPP, WebRTC, Box2D, Koin, Coroutines, MVVM, Clean Architecture, Firebase, Navigation Architecture Component, Retrofit, Moshi, CI/CD, CameraX, Custom Views

Аndroid developer

Jun 2021 - Jan 2022
Description: This application is a financial and operational solution laced with payment gateway that will let consumers redeem and use any allotted budget via any organization for travel purposes digitally. Organizations and corporations will be able to assign their employees and beneficiaries’ with the Smart Ticket (e- coupon) for traveling purposes (Tickets) within their accounts using the Control Panel via Smart Ticket’s Online Portal (Bulk Recharge). The assign Smart Ticket (e-coupon) to the employees and beneficiaries will be restricted only to be redeemed at the designated/assigned merchants or member merchants (travel agents). The employees and beneficiaries can redeem the assigned smart ticket (e-coupon) at their ease within the validity from any of the Merchant available for the assigned Network (varied by each organizational entity).
Responsibilities:

  • Developing features for android

Technologies: Kotlin, Koin, MVVM, Room, Rest, Google maps, RxJava, QrCode Scanne, Interesting feature – XMPP, WebRTC, Box2D

Lead Android developer

Sept 2020 - May 2021
Description: An application for manage bank transactions, and control balance. An important part of this project was that you need to use both the new API and the old one, and i have needed to create abstract data models and mappers that would bring data from API to abstract models, there were also several custom views that we build from scratch to make app more beautiful. Also it was necessary to encode all the data, because it’s a banking application.
Responsibilities:

  • Researching effective technical solutions, developing features for android, prioritizing tasks and features

Technologies: Kotlin, Realm, Gradle, Firebase, MVVM, DataBinding, Navigation Architecture Component, Clean Architecture, Coroutines, Retrofit, Dagger 2, Jackson, AppCenter.

Android developer

Jan 2020 - Sept 2020
Description: An application for manage bank transactions, and control balance. An important part of this project was that you need to use both the new API and the old one, and i have needed to create abstract data models and mappers that would bring data from API to abstract models, there were also several custom views that we build from scratch to make app more beautiful. Also it was necessary to encode all the data, because it’s a banking application.
Responsibilities:

  • Developing new functionality. Testing of own features, documenting test plans.
  • General maintenance bug fixes.

Technologies: Kotlin, Realm, Gradle, Firebase, MVVM, DataBinding, Navigation Architecture Component, Clean Architecture, Coroutines, Retrofit, Dagger 2, Jackson, AppCenter.

Android developer

Sept 2018 - Dec 2019
Description: An application for manage your tasks and do it as simple as it could be like messaging. I developed the app from scratch for android platform using clean architecture coupled with MVP approach. For MVP approach, we used Moxy library that help us work with MVP easier. Storage side must be very quickly and maintainable, so for DB realization we used Realm as this powerful library do CRUD operations very fast and reduces the amount of code at times in comparison with other libraries. To communicate with server we used Volley library as it support Automatic scheduling of network requests, Multiple concurrent network connections. In addition, support for request prioritization. For communication, we used Json and GSON library for it. The benefit we get with GSON is that object mapping can save the time spent writing code. Also I fix bugs and perform testing, besides this I optimize app in every way, to increase performance. The team's communication mode was based on Agile(Scrum) methodology and Jira service for accurate time tracking. In addition, we integrated Firebase with Crashlytic to authentication, notification and track issues.
Responsibilities:

  • Developing new functionality (UI changes, microservice functionality, database stored procedures).
  • Testing of own features, documenting test plans.
  • General maintenance bug fixes.

Technologies: Java, Realm, Gradle, Firebase, MVP, Clean Architecture, Multithreading, Moxy, Butterknife, Volley, GSON, Glide, Google APIs, Compressor, RxAndroid, Crashlytics.

Android developer

Jul 2017 - Aug 2018
Description: Mobile application for browsing colorful HD wallpapers, cropping and setting wallpapers from huge database. The desktop and the lock screen are what you see every time you pick up the phone, right? My goal is to make each use of the phone more enjoyable, because it is more pleasant to use the phone when the wallpaper is a beautiful HD picture with resolution up to 8k that you have chosen. I wanted to do fast app with simple interface, custom comfortable filters, with robust code and I think I successfully do it. I developed the app with use MVVM approach coupled with DataBinding. All it written in Kotlin language. For communication with API I use Retrofit and OkHttp. In addition, I used Crashlytic for catching bugs. All this technology help me to do this app fast and maintainable.
Responsibilities:

  • Developing new features, fixing bugs, refactoring

Technologies: Kotlin, Gradle, Firebase, Retrofit, MVVM, Data Binding, Clean Architecture, RxAndroid, OkHttp, MaterialDrawer, Room, Glide, Crashlytics.

Android developer

Dec 2016 - Jul 2017
Description: Platform with interesting facts and embedded advertising for monetization. Since it was supposed to have subcategories, it was decided to make a side menu to switch between them. For a more convenient menu management, it was decided to use the MaterialDrawer library. OkHttp was used to synchronize with the server because the news parser and fact manager were located remotely. Also was used MVVM approach. The application was made from scratch and was followed up to the fill on Google Play.
Responsibilities:

  • Development from scratch

Technologies: Java, Kotlin, Gradle, Firebase, Kotlin extensions, MVVM, Data Binding, OkHttp, Butterknife, MaterialDrawer, GreenDAO, Glide, Crashlytics.

Android developer

May 2016 - Nov 2016
Description: DayIt is a simple Android application designed to create different notes. Aside from simple task manager, it saves notes about important user’s friends events, and allows to exchange events. The user can add a brief description, specify days of repetition, set own melody or add an image to every event in the list. It is also possible to create a plan for a friend by adding his/her number to the contact book. At the same time the friend can either confirm the plan, or reject it.
Responsibilities:

  • Developing new features, fixing bugs, refactoring

Technologies: Retrofit, SQLite, GCM.

Education

Master degree in Computer Science, Kharkov National University of Radio Electronics
2017-2019

Bachelor`s degree in Computer Science, Kharkov National University of Radio Electronics
2013-2017