Ivan Dimoski, Developer in Stockholm, Sweden
Ivan is available for hire
Hire Ivan

Ivan Dimoski

Verified Expert  in Engineering

Lead Android Developer

Location
Stockholm, Sweden
Toptal Member Since
December 11, 2013

Ivan is a professional with more than 10 years of experience in Android development. His most recent role included sole contribution, team leadership and engineering management for an agile cross-functional team of 17 in Truecaller, delivering amazing features to 250+ million monthly active users. As a passionate people person, he values openness and simplicity as foundations for creating a successful story.

Portfolio

Truecaller
Java, Kotlin, Android
Freelancer
iOS, React, Java, Kotlin, Android
ITgma
Java, Android

Experience

Availability

Part-time

Preferred Environment

Gradle, Git, Linux, Android Studio, Android

The most amazing...

...thing I've done is make sure a team of 17 people runs smoothly while delivering quality at speed.

Work Experience

Team Lead

2015 - PRESENT
Truecaller
  • Actively contributed to one of the most downloaded, used, and loved utility apps in the world, with 500+ million installs, 250+ million active users, and a 4.5-star rating.
  • Led an agile, cross-functional team of 17 people to deliver the Truecaller messaging experience, with responsibilities ranging from sole contribution to engineering processes, recruitment, performance assessments, and personal development.
  • Improved the agile processes of the team by introducing QA @ Speed, an optimization of the delivery pipeline by better utilization of the available resources.
  • Developed scalable features fully written in Kotlin using modern architectural patterns with full test coverage and automation.
  • Contributed to the creation of a lightweight, powerful, and easy-to-use single sign-in library: TrueSDK.
  • Contributed to the creation of the company's values and their integration into the company's culture.
Technologies: Java, Kotlin, Android

Lead Android Developer

2010 - PRESENT
Freelancer
  • Created TweetsPie, a Twitter utility app for displaying the best tweets from your timeline based on a complex ranking algorithm, dependent on the number of retweets, favorites, time elapsed, reach, and relevance to the user.
  • Contributed to PK Rewards, an app that revolutionizes personal fitness by introducing engagement rewards.
  • Created Reagiram.mk, an Android app for taking pictures and sending problem reports to the local government. Designed a push notifications system using GCM to inform users when their report statuses had changed (processed, resolved, rejected, etc.).
  • Developed Andbtiles, an Android library for managing, downloading, caching, or harvesting MBTiles and exposing them to external applications via a content provider. The library is available on Maven Central.
  • Developed reTXT, a multimedia messaging app with full end-to-end encryption, account management, and device syncing via push messages.
  • Developed Smoak for Android, an app with OpenGL smoke and fire effects for creating and sharing (anonymous) photos, videos, and texts.
  • Created Bokhalleri, an accounting app built with React Native. Once authenticated with Firebase Login, the user is able to pick images or documents from their device, upload them to Firebase storage, view, and edit historical submissions.
  • Contributed to BikeTo, an Android app that tracks user's bike rides automatically in the background (activity recognition and location updates) and keeps historical records of their rides.
Technologies: iOS, React, Java, Kotlin, Android

Lead Android Developer

2012 - 2014
PlanNow Technologies
  • Optimized Mobile Survey, one of the most expensive apps on Android, for on-site surveys and network analysis. Implemented Access Point bounding by MAC/BSSID comparison. Improved heatmap/area coverage and route rendering. Limited memory consumption by tweaking image quality depending on screen size, density, and available heap size.
  • Created the first phase of Shortlist.fm, a Twitter-like Android app for content and media sharing. Implemented full server communication with JSON with Gson manual data caching for reducing network call overhead. Implemented a profile management and avatar creation mechanism to allow users to crop a picture taken with a camera or picked from the gallery.
  • Developed the Android app for Vuact.com, a powerful video analytics platform. Handled network operation implementation using the Volley framework and the image caching/processing implementation using the Picasso library. Featured fragment-based responsive design with a content display based on the screen width. Included HTML5 iframe video handling.
  • Created Salama Documents, an Android app for secure document storage in rural African areas, as part of a Stanford University humanitarian project. Implemented functionality for secure account creation, document encryption, password retrieval using HTTPS, SSL certificates, password salts, archive encryption (AES), operator password approval, and photo verification. Included Dropbox API integration. Handled low connectivity by implementing upload/download queues and scheduling.
  • Created Salama Documents Admin Panel, a Java Tapestry web application serving as a backbone to the Salama Document project. Implemented account management, operator to region mapping, credential management, new version notification, device tracking, and basic usage statistics.

Android Developer

2012 - 2012
ITgma
  • Created a hybrid tracking app for a network operator using the Android JavaScript interface in a WebView. Implemented the ability to sign in, view account details, check available credit or current balance, view a list of activated and available services, see featured promotions, and view cell phone usage statistics (minutes spent talking to favorite numbers, SMS/MMS count, etc.).
  • Created a native Android app for real-time embedded soundboard diagnostics and graph tracking. Implemented the I2C protocol via the USB port. Compiled .dll (Windows) drivers as a .so library (Linux) to allow the code to work on Android. Included Android NDK to SDK communication. Implemented graph display functionality for common parameters (gain, excursion, volume, temperature) on both channels.
  • Laid out the initial architecture and screen layouts for AEK's (Macedonian Agency for Electronic Communication) phone book and calculator apps. Calculated the minimal amount of Android permission required in the manifest file to avoid being considered a sniffing app (it gathers a lot of background data about the phone and network usage) and optimized it to be power efficient.
Technologies: Java, Android

TweetsPie

https://github.com/TheMedo/tweets-pie
The TweetsPie Android app, a Twitter utility to save users time by displaying only the best tweets from their timeline.

—AWARDS—
Winner, Droidcon Easter Europe 2013 App Challenge
Winner, Mobile App Camp Skopje 2013 App Challenge

Next Web Featured Article

http://thenextweb.com/apps/2013/12/04/tweetspie-redesigned-android-twitter-people-really-dont-time/
TweetsPie for Android got featured on one of the most relevant tech sites in the world with an extremely positive review for its minimal design and everyday usefulness.

Winner of Droidcon Eastern Europe 2013

TweetsPie won the Droidcon Eastern Europe 2013 app challenge held in October in Bucharest, Romania, ensuring its spot among the finalists for the Droidcon in Berlin in April 2014.

Languages

Java, Kotlin, CSS

Frameworks

Android SDK, JUnit, React Native, Redux

Libraries/APIs

REST APIs, Android Design Library, Firebase Android SDK, Android Support Library, Retrofit, Picasso, Twitter API, Google Gson, GitHub API, Google API, Android API, Facebook SDK, React, React Navigation, React Redux, Material 2, React Native for Web

Tools

Firebase Authentication, Android Device Manager, Android Debug Bridge, Android Studio, Gradle, Bitbucket, Git, GitHub, Firebase Analytics, Firebase Cloud Messaging (FCM), Jira, Confluence, Geocoding, Jenkins

Paradigms

Android Material Design, Model View Presenter (MVP), Object-oriented Programming (OOP), Mobile Development, Model View Viewmodel (MVVM), Testing, Automation, Dependency Injection, Agile, Unit Testing, Test-driven Development (TDD), Test Automation, Continuous Integration (CI)

Platforms

Visual Studio Code (VS Code), Firebase, Android, Linux, Ubuntu, iOS

Storage

Cloud Firestore, SQLite, Firebase Realtime Database

Other

Location Services, Location Tracking, Push Notifications, Coroutines, Android Testing, Android Theming, Android Design Guidelines, Android Animations, ADK, Google Play Store, Leadership, Team Leadership, Technical Leadership, Remote Team Leadership, Social Communication, Material Design, Technical Hiring, Hiring, Onboarding, Code Review, Mentorship & Coaching, Silent Push Notifications, A/B Testing, QA Testing, Conflict Resolution, Negotiation, Technical Documentation, Collaboration, Architecture

2007 - 2011

Bachelor's Degree in Information Science and Computer Engineering

Ss. Cyril and Methodius University - Skopje, Macedonia