Ivan Dimoski

Ivan Dimoski

Skopje, Macedonia
Hire Ivan
Scroll To View More
Ivan Dimoski

Ivan Dimoski

Skopje, Macedonia
Member since November 26, 2013
Ivan is an accomplished Android developer and consultant with over 4 years of experience in developing user friendly applications for the international market. He has excellent analytical and problem solving skills and enjoys interacting with clients to ensure specific and business-critical requirements are met.
Ivan is now available for hire
Portfolio
Experience
  • Java, 6 years
  • Android SDK, 4 years
  • Android API, 4 years
  • Android, 4 years
  • Android Studio, 2 years
  • Git, 2 years
  • Gradle, 1 year
Skopje, Macedonia
Availability
Part-time
Preferred Environment
Android, Android Studio, Windows, Git, Gradle
The most amazing...
...app I've made is TweetsPie for Android, a Twitter utility app that saves users time by displaying only the best tweets from their timeline.
Employment
  • Android Developer
    Freelance Android Developer
    2010 - PRESENT
    • Created TweetsPie, a Twitter utility app for saving users time by displaying the best tweets from their timeline. Implemented full Twitter API integration using the Twitter4J library. Wrote a complex sorting algorithm based on the number of retweets, favorites, time elapsed, reach, and relevance to the user (how often the user interacts with the tweet creator). Implemented an exponential back-off algorithm for silent background updates depending on app usage, network connectivity, battery percentage and charging status. Included an image manipulation feature for circular avatar creation.
    • Developed the Macedonian Orthodox Calendar Android app, a simple app with a static database for showing religious holidays for the current year.
    • Created Reagiram.mk, an Android app for taking pictures and sending problem reports to the local government. Designed a push notifications system using Google Cloud Messaging to inform users when their report statuses had changed (processed, resolved, rejected, etc.).
    • Developed Andbtiles, an Android library for managing, downloading, caching or harvesting of 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.
    Technologies: Android, Java
  • Lead Android Developer
    PlanNow Technologies
    2012 - 2014
    • Optimized Mobile Survey, one of the most expensive Android apps, 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 Shrotlist.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 the 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, credentials managing, new version notification, device tracking, and basic usage statistics.
    Technologies: Android, Java (Tapestry)
  • Android Developer
    ITgma
    2012 - 2012
    • 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 cellphone 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: Android, Java
Experience
  • Ooshies The Live Wallpaper (Development)

    A cute little live wallpaper app that gives hugs from your home screen. A passion project of mine.

  • TweetsPie (Development)

    The TweetsPie Android app, a Twitter utility to save users time by displaying only the best tweets from their timeline.
    Winner of the Droidcon Easter Europe 2013 App Challenge.
    Winner of the Mobile App Camp Skopje 2013 App Challenge.

  • Next Web Featured Article (Other amazing things)
    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.

  • Orthodox Calendar (Development)
    https://github.com/TheMedo/PravoslavenKalendar

    An open source project. An old app that gets constant upgrades with the latest design and development trends.

  • Winner of Droidcon Eastern Europe 2013 (Other amazing things)
    http://ro.droidcon.com/

    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.

  • Cute $1 App (Design)
    https://play.google.com/store/apps/details?id=com.medo.one_dollar_app&hl=en

    An app I created for fun while testing the Google Play merchants account. It features a cute little cartoon creature giving users hugs for supporting the developer.

  • Mobile Survey (Development)
    http://www.ekahau.com/wifidesign/ekahau-mobile-survey

    I worked on one of the most expensive and complex Android Apps for on-site, walk-in surveys, and network analysis. I was a key team member working on Access Point auto bonding and memory optimization using large graphics and overlays.

  • Andbtiles (Development)
    https://github.com/tesera/andbtiles

    Andbtiles is an Android utility library that manages downloading, caching, or harvesting of MBTiles and exposing them to external applications via a Content Provider.

  • ReTXT (Development)

    I developed this messaging app from scratch, implementing full end-to-end public/private key-pair encryption. It allows users to send text, photo, video, audio, and location, and features local database caching and lazy loading. Users can log in, register, sync, and do account management. I handled the full design implementation with custom animations and views.

  • Tips for Developing an Android App: My Lessons Learned (Publication)
    This article provides an overview on building a great Android application, from defining an idea to releasing an application to the store. Toptal developer Ivan Dimoski gives us a chance to learn from his experience in making Ooshies, an Android Live Wallpaper designed to give you a hug and make you feel loved each time you interact with your Android device.
  • Top 10 Most Common Mistakes That Android Developers Make: A Programming Tutorial (Publication)
    There are thousands of different Android powered devices, with different screen sizes, chip architectures, hardware configurations, and software versions. Unfortunately, segmentation is the price to pay for openness, and there are thousands ways your app can fail on different devices. Regardless of such huge segmentation, the majority of bugs are actually introduced because of logic errors. These bugs are easily prevented, as long as we get the basics right! Here's a quick rundown of the 10 most common mistakes Android developers make.
  • Automated Android Crash Reports with ACRA and Cloudant (Publication)
    Making a basic Android app is easy. But making it reliable, scalable, and robust, on the other hand, can be quite challenging. With thousands of available devices pumped out from tons of different manufacturers, assuming that a single piece of code will work reliably across phones is naive at best. Segmentation is the greatest tradeoff for having an open platform, and we pay the price in the currency of code maintenance, which continues long after the app passes the production stage. In this post, we'll walk through a solution: automated crash reporting with ACRA and a Cloudant back-end, all visualizable with acralyzer.
Skills
  • Frameworks
    Android SDK, Hibernate, Tapestry
  • Libraries/APIs
    Picasso, SQLite, Twitter API, Retrofit, Google API, Android API, Google Gson, GitHub API, Facebook Open Graph API, Facebook SDK, Google+ API, PayPal API, Parse Android SDK, Jackson, Android OpenGL
  • Tools
    Git, GitHub, Gradle, Android Studio, Android NDK, Eclipse IDE, Maven
  • Paradigms
    Object-oriented Programming (OOP), Event-driven Programming, Concurrent Programming
  • Platforms
    Android, Windows, Meteor, Linux
  • Misc
    Android Animations, BitBucket
  • Languages
    Java, SQL, C/C++
Education
  • Bachelor's degree in Information Science and Computer Engineering
    Ss. Cyril and Methodius University - Skopje, Macedonia
    2007 - 2011
I really like this profile
Share it with others