Scroll To View More
Dusan Pesic

Dusan Pesic

Belgrade, Serbia
Member since January 21, 2015
Dusan loves programming, especially making useful applications and interesting games that fit in your pocket. He's a whiz with code and doesn't procrastinate. He has experience working in teams but is equally comfortable getting things done single-handed. He's always looking for a challenge in new UX solutions, and is up to date with Google Android visual and programming standards.
Dusan is now available for hire
Portfolio
Experience
  • Android, 7 years
  • Java, 7 years
  • SQLite, 7 years
  • Unit Testing, 4 years
  • Firebase Android SDK, 3 years
  • RxJava 2, 3 years
Belgrade, Serbia
Availability
Full-time
Preferred Environment
Windows, Android Studio, Eclipse, Git
The most amazing...
...thing I've created is a secure messaging application with encrypted storage, communication, and memory.
Employment
  • Android Developer
    2018 - 2018
    NDA (via Toptal)
    • Split the existing codebase into multiple modules, following clean architecture principles.
    • Refactored thread management by introducing Reactive Extensions (RxJava 2).
    • Created multiple highly polished custom widgets according to the instructions by the design team.
    • Fixed many memory leaks that existed in the legacy code.
    • Added unit test and documentation coverage.
    Technologies: Android, Unit Testing, RxJava
  • Android Developer
    2018 - 2018
    NDA (via Toptal)
    • Integrated Camera API to send an image to a server and receive specific data based on the image analysis.
    • Implemented a polished user interface based on the data received from the server.
    • Worked closely with the designer on following the latest Material Design standards according to the official guidelines.
    • Provided complete unit test and documentation coverage.
    Technologies: Android, Camera API, Unit Tests
  • Android Developer
    2017 - 2018
    NDA (via Toptal)
    • Replaced the WebView/JavaScript-based part of the app with a native Android SDK.
    • Replaced the legacy thread management and event bus with Reactive Extensions (RxJava 2).
    • Integrated ExoPlayer for video playback.
    • Forked a customized an open-source library according to the specs of the project.
    • Synchronized multimedia content with AWS S3.
    Technologies: Android, SQLite, ExoPlayer, RxJava
  • Software Developer
    2016 - 2017
    Artwork Interactive
    • Implemented a high performance technique for real-time bitmap coloring using Shaders (GL ES).
    • Created a persistent offline task synchronization library.
    • Created an API in Java deployed on Google App Engine with Cloud Endpoints.
    • Created a Compute Engine (GCP) instance which observes the pull queue where App Engine adds tasks, and based on the task data creates video files using FFmpeg which are then upload directly to Cloud Storage. The code on the instance is written in Python.
    • Created a desktop application for content management in JavaFX wich does extensive bitmap preprocessing to prepare for the in-app GL ES Shaders.
    • Created a desktop program to visualize specific colors in 3D in the HSV color space as a utility program for the designer to select colors to be used in apps.
    Technologies: Android, LibGDX, OpenGL, FFmpeg, Google App Engine, Python, MySQL, BigQuery, Cloud Storage, Firebase SDK, JavaScript, HTML
  • Android Developer
    2016 - 2016
    NDA (via Toptal)
    • Updated all server calls to use direct socket communication with the server (using Socket.IO) instead of the REST API.
    • Provided 100% unit test code coverage.
    • Documented and delivered the codebase as an Android library.
    • Added a continuous integration testing and deployment pipeline.
    Technologies: Android, Socket.IO, JUnit, Continuous Integration
  • Android Developer
    2015 - 2016
    NDA (via Toptal)
    • Refactored an existing MVP-style codebase to a high-quality production level with the most recent technologies.
    • Completely updated UI and UX based on the new guidelines.
    • Created a photo editor using GPUImage library to support full photo editing including color correction, cropping, and skewing the image, both manually or automatically with pre-defined filters.
    • Utilized FFmpeg library on the device to compose a video overlaying an image with a video file, both captured in the app itself.
    Technologies: Android, GPUImage, FFmpeg, Mixpanel
  • Android Developer
    2014 - 2015
    Applied Art Labs
    • Created various algorithms for games.
    • Implemented high-quality OOP patterns in desktop- and Android-based games.
    • Innovated a networking library for using Android phones as a controller pad over WiFi for a desktop-based game.
    Technologies: Java, Android SDK, LibGDX, LWJGL, Git
  • Android Developer
    2014 - 2014
    Spoiled Milk
    • Created complex custom components for a multimedia Android application.
    • Implemented in-app audio and video streaming with multiple content providers through the company's APIs.
    • Created complex middleware for communication with different APIs.
    • Implemented user-defined favorite lists of audio tracks and videos.
    • Created optimized and user-friendly navigation for browsing through large amounts of various kinds of data.
    • Implemented multilanguage support.
    Technologies: Java, Android SDK, Git, REST
  • Android Developer and Android Team Lead
    2012 - 2014
    Whitecitysoft
    • Created various custom widgets and components using company designer guidelines with MVC standards applied and full customizability.
    • Served multimedia content in applications with lazy loading for a better user experience.
    • Implemented native (C++) libraries for communication, encryption, and file handling.
    • Integrated social networking on multiple projects with Facebook SDK, Twitter Kit, and G+.
    • Created a social network application with all the social network functionality. Posting features included multimedia content, hashtags, comments, followers, personal messages, and favorites. Most of the view components are custom-made from the designer's guidelines.
    • Integrated SQLite in various projects.
    • Added Android background services for various purposes.
    Technologies: Java, Android SDK, SQLite, DOM, REST, SVN
Experience
  • NDA (Development)

    A social connectivity app centered around safely and permanently storing children-created artwork and sharing them with friends and family. It is based on uploading photos and adding video commentary of the author-child overlaid on the photo. Family and friends would be able to add text, audio, and video comments on the photo posts. There is also a part of the app for editing photo captured with the in-app camera.

  • NDA (Development)

    App for taking a selfie and sending it to a server for analysis. The resulting data is returned to the app and displayed with high-quality visual elements and dynamic interface.

  • NDA (Development)

    Financial services app used to overview and manage the amount and allocation of personal savings. Very rich user interface with graphs and charts as well as nicely designed imagery.

  • Colorica: Pixel Color by Number (Development)
  • Colorica: Mandala Coloring Book (Development)
  • Don't Tap the Wrong Hot Dog (Development)

    An Android game with the mechanics based on a popular game Don't Tap The White Tile.

  • Cradle (Development)

    A simple stress release game for Android.

  • NDA (Development)

    An application for browsing and playing music and videos and browsing articles and photos. Music and video content as well as articles are provided by multiple third-party APIs, and the system of user creation and logging in is done with a project-based server. The application has very complex custom components, and multimedia content is streamed with in-app players.

  • NDA (Development)

    A secure messaging application with encrypted communication, storage, and memory. It has comprehensive messaging features including sharing text and multimedia content, keeping list of contacts, favorites, and a message preview widget, with the difference that all data is encrypted in transfer, local databases, and even in RAM.

  • NDA (Development)

    A social network application based only on Android and iOS devices. My part was Android implementation of the system. It has full social features consisting of creating multimedia posts and serving them in custom views. Many APIs are included, like attaching weather information to the post provided by a third party service. The user is able to create an account, log in, set and update personal settings regarding the application functionality, review posts, connect to other people with the "following" system, comment on posts, make favorites, and do other social network interactions. I was the only Android Developer on this project.

  • NDA (Development)

    An application for daily input of meals and drinks consumed. The user has the ability to create an account and log in. Inputs have description, quantity, and photo or voice notes attached through in-app camera and voice recorder. All data is sent via a RESTful API to the server and returned back at the user's request. The application also serves a list of videos regarding the food recommendations and tutorials, played via implemented video player.

  • NDA (Development)

    An application for storing and sharing gift cards. It has a rich UI with many custom views and components. The user can create an account and log in with services like Facebook and Google or can use any other email through the system server. The user can share content on Facebook, Twitter, or via another P2P messaging platform.

  • Rowenta Intelligent Beauty (Development)

    A regional Rowenta product browsing application with push notification system implemented for special promotions and including tutorials on product usage.

Skills
  • Languages
    Java, ActionScript 3, XML, SQL, Python, C#, Kotlin, C
  • Frameworks
    Android SDK, Dagger 2, LibGDX, ORMLite, Mockito, JUnit, Unity3D, Google Web Toolkit, Django
  • Libraries/APIs
    Google Gson, RxJava 2, Reactive Extensions, Android OpenGL, Camera API, Facebook SDK, Facebook API, Google Maps, JSON-RPC, Firebase Android SDK, FFmpeg, OpenGL ES, Twitter API, GPUImage
  • Tools
    Adobe Illustrator, Adobe Photoshop, Android Studio, Eclipse IDE, Trello, Git, Bitbucket, Notepad++, Firebase Analytics, Asana, Subversion (SVN), Gradle, GitHub, Google Analytics, JIRA, Atlassian Confluence, Android NDK
  • Paradigms
    Object-oriented Design (OOD), Object-oriented Programming (OOP), Asynchronous Programming, Model View Controller (MVC), Model View Presenter (MVP), Dependency Injection, Clean Architecture, Agile Software Development, REST, Event-driven Programming, Continuous Integration (CI), Unit Testing, Clean Code, Scrum
  • Platforms
    Android, Windows, Ubuntu, Google App Engine, Mixpanel, Mac OS
  • Storage
    SQLite, JSON, RoomDB, MySQL
  • Other
    User Experience (UX), User Interface (UI), GPS, DOM, Encryption, API Design, Performance Analysis
Education
  • Master's degree in Applied Graphics
    2007 - 2012
    Faculty of Applied Arts - Belgrade, Serbia
I really like this profile
Share it with others