Ban Markovic, Developer in Podgorica, Podgorica Municipality, Montenegro
Ban is available for hire
Hire Ban

Ban Markovic

Verified Expert  in Engineering

Android Developer

Podgorica, Podgorica Municipality, Montenegro

Toptal member since August 27, 2021

Bio

Ban is a senior Android engineer with seven years of experience specializing in Android. He is passionate about bringing employers' ideas to life as reliable, high-quality apps using Kotlin and Java. He enjoys leading projects, mentoring team members, and fostering a collaborative environment. He also shares his knowledge through a blog, where his posts on Android development have accumulated over 90,000 reads.

Portfolio

Hyper AR
Android, Kotlin, Google Maps, ARCore, KOIN, Canvas, Gradle, IMDF
ProfitApp
Android, Kotlin, Android Jetpack, Dagger 2, Model View ViewModel (MVVM), JSON...
Infinum
Kotlin, Java, Git, Scrum, Android SDK, Android, Model View ViewModel (MVVM)...

Experience

  • Android - 7 years
  • Kotlin - 6 years
  • Model View ViewModel (MVVM) - 4 years
  • Android Jetpack - 4 years
  • Java - 3 years
  • Model View Intent (MVI) - 3 years
  • Relational Databases - 3 years
  • Jetpack Compose - 2 years

Availability

Full-time

Preferred Environment

Android Studio, Kotlin, Kotlin Multiplatform, Jetpack Compose, Android

The most amazing...

...project I've worked on is a groundbreaking technology of the Android indoor location SDK, without any additional hardware, using just an Android device.

Work Experience

Senior Android Engineer

2022 - PRESENT
Hyper AR
  • Helped prepare the Android SDK for a production-ready release.
  • Led the development of an Android demo app that allows potential clients to experience indoor location services in their venues, using Kotlin, Jetpack Compose, Coroutines, Hilt, Retrofit, and MVI architecture.
  • Implemented user indoor orientation features leveraging ARCore and the rotation vector sensor.
  • Developed features for the indoor location Android SDK, including route finding, map rendering, and location estimates based on WiFi scans and sensor data.
Technologies: Android, Kotlin, Google Maps, ARCore, KOIN, Canvas, Gradle, IMDF

Senior Android Engineer

2022 - 2023
ProfitApp
  • Led the development of a startup Android app with over 100,000 downloads, allowing users to earn cashback by shopping at their favorite stores using a QR code.
  • Collaborated in a cross-functional team to design new features and introduce innovative ideas.
  • Built with Kotlin, Coroutines, Jetpack Compose, Retrofit, Google Maps API, and MVI architecture.
Technologies: Android, Kotlin, Android Jetpack, Dagger 2, Model View ViewModel (MVVM), JSON, Scrum, Google Maps, Git, Android Studio, Model View Intent (MVI), Jetpack Compose

Android Engineer

2020 - 2022
Infinum
  • Led the development of an Android app with over 50,000 downloads for a Dutch museum, enabling users to browse museum content and listen to recorded audio tours. Built with Kotlin, Coroutines, Retrofit, Services, and MVVM architecture.
  • Enhanced theming for a multi-module Android app with over 5 million downloads, designed for communication with smart appliances like air cookers, air fryers, and blenders, using Kotlin and XML Views.
  • Developed the UI for an Android app with over 100,000 downloads that allows users to discover kids' toys by scanning items from a Dutch toy catalog. Built with Kotlin, LiveData, Retrot, XML Views, and MVVM architecture.
Technologies: Kotlin, Java, Git, Scrum, Android SDK, Android, Model View ViewModel (MVVM), Model View Presenter (MVP), JSON, Google Maps, Android Studio, Model View Intent (MVI), RxJava

Android Developer

2018 - 2020
Logate
  • Oversaw the transition from Java to Kotlin for a team of three Android developers.
  • Developed and published a parking information and payment Android app for citizens of Montenegro, using Kotlin, Dagger, Coroutines, LiveData, Retrofit, Google Maps API, and MVVM architecture.
  • Developed and released an updated version of a mobile banking Android app for 10,000 DAUs, utilizing Java, Dagger, RxJava, Retrot, and MVP architecture.
Technologies: Android SDK, Kotlin, Java, Git, Scrum, Android, RxJava 2, Model View ViewModel (MVVM), Model View Presenter (MVP), JSON, Google Maps, Android Studio, RxJava

Billing System Engineer

2016 - 2018
Ericsson
  • Developed Java middleware for communication between Oracle database and SAPC module to activate free GPRS resources for MTEL customers.
  • Maintained MTEL's billing system, Comverse, and roaming module.
  • Wrote and optimized SQL queries on Oracle and Microsoft databases.
  • Developed interfaces and web pages in C# for internal employees of MTEL.
Technologies: Java, Microsoft SQL Server, Oracle SQL, JSON, Relational Databases

Experience

Dutch Domestic Appliances

The mobile app is used for communication with domestic appliances and serves users as the social network for recipes for a Dutch domestic appliances manufacturer. Users also have access to the recipes provided by the manufacturer to get the most out of their appliances.

Slovenian Virtual Pet Mobile Game

One of the oldest and most popular games that represent virtual pets for kids and the whole family. Players can take care of their pet every day, making sure it gets enough food and sleep, taking it to the toilet, and keeping it happy, smiling, and laughing.

Dutch Museum Mobile App

Developed an Android mobile app for Dutch museums that enables browsing the museum's content and listening to the recorded audio tours. It also supports the navigation feature that enables users to check the floor and rooms' layout and content.

Dutch Virtual Toy Book for Kids

Developed an Android application that helps kids discover much more about their favorite toys. By scanning the toys from this book from one of the biggest webshops in the Netherlands, kids can discover everything related to that specific toy by watching videos, pictures, and facts related to it.

Mobile Banking App

Developed a mobile banking application that enables users to access their bank accounts, make all types of payments, view transaction history, locate the nearest bank’s branch office, and many other options anytime and anywhere using their smartphone.

Mobile App for Parking Availability in Montenegro

Parking Service Montenegro is a contemporary solution that supports and automates the process of managing parking policy in a city or area. It consists of billing various parking cards like SMS, prepaid, kiosk cards, and academic cards. The Android application also supports events and sends notifications to users using triggers.

Education

2013 - 2017

Bachelor's Degree in Computer Science

University of Montenegro - Podgorica, Montenegro

Skills

Libraries/APIs

Google Maps, RxJava 2, RxJava

Tools

Android Studio, Android Jetpack, Git, Canvas, Gradle

Languages

Java, Kotlin, HTML, CSS, JavaScript

Frameworks

Android SDK, Dagger 2, Flutter, React Native, KOIN

Paradigms

Scrum, Model View ViewModel (MVVM), Model View Presenter (MVP), Model View Intent (MVI)

Platforms

Android, ARCore

Storage

JSON, Relational Databases, Microsoft SQL Server, Oracle SQL

Other

Jetpack Compose, Algorithms, Coroutines, IMDF, Kotlin Multiplatform

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring