Josip Petrić, Software Developer in Zagreb, Croatia
Josip Petrić

Software Developer in Zagreb, Croatia

Member since May 31, 2016
As a software engineer with years of experience, Josip has developed a keen sense for building scalable, maintainable, and user-friendly applications. His platform of choice is iOS for which he has designed and developed a wide range of applications, from simple ones to complex, large-scale applications. Josip is a proven team leader and a team player with exemplary communication and social skills.
Josip is now available for hire



  • Object-oriented Programming (OOP) 9 years
  • UIkit 7 years
  • Xcode 7 years
  • Objective-C 7 years
  • iOS 7 years
  • Git 5 years
  • Core Animation 5 years
  • Swift 3 years


Zagreb, Croatia



Preferred Environment

Objective-C, Swift, Git, Xcode, iOS

The most amazing... I've created was Comic Battle, a fast-paced multiplayer game for iOS where I was the only mobile developer.


  • Co-founder | Product Owner | iOS Developer

    2015 - PRESENT
    Bit Forest
    • Created, as the only iOS developer, a complex real-time multiplayer iOS game, Comic Battle, from scratch.
    • Developed a large-scale iOS mobile application for a taxi service. Application features: live vehicle tracking, customizable dispatch zones, and automatic payment through the application.
    • Built a set of features for a mobile travel guide for sailors in Croatia, Slovenia, and Greece.
    • Consulted on the introduction of a quality insurance system for mobile development projects. The QA system described every project step, from requirements and mockups to prototyping and integration testing.
    • Led a small mobile development team.
    • Created DefineIt: a vocabulary builder application with speech recognition, optical character recognition, the Today extension, and an Apple Watch app.
    Technologies: WatchKit, Apple, In-app Purchases, Payment Gateways, Google Places API, Google Maps, Core Location, Twitter API, Facebook API, Git, Core Data, Core Animation, Swift, Objective-C, iOS
  • iOS Developer

    2020 - 2020
    Guestlogix (via Toptal)
    • Worked on the SDK written in Swift to be utilized by the airline companies.
    • Added new features and redesigned parts of UI for the white label app utilizing the in-house SDK.
    • Performed code reviews to make sure all code is up to the highest standards.
    • Suggested and demonstrated a plan to move from the MVC architecture to the MVVM architecture (using RxSwift for bindings) and Coordinator pattern for navigation between screens.
    Technologies: Firebase, Git, Continuous Integration (CI), Xcode, Swift, iOS
  • iOS Developer

    2019 - 2019
    Stochastic Systems, LLC (via Toptal)
    • Led the effort to test and fix WebRTC, VoIP, and CallKit issues in iOS application for secure communication with full data and identity protection.
    • Implemented a share extension to enable external content sharing through the application.
    • Built a notification extension to customize push notifications' appearance.
    • Added unit and UI tests that covered the application features.
    • Fixed various issues and bugs to ensure the best user experience.
    • Redesigned the whole UI (every app screen) to make it ready for the public App Store release.
    Technologies: UI Testing, Unit Testing, CallKit, WebRTC, VoIP, HTML5 Animations, UIkit, Git, Objective-C, J2ObjC, Java, Swift
  • iOS Developer

    2018 - 2019
    OverUnder (via Toptal)
    • Built and maintained a streak-style contest application where users can win cash prizes by predicting the over-under on featured sports events.
    • Developed an application using protocol-oriented MVVM architecture with a clear separation of concerns between modules (easy to replace modules, easy to unit test).
    • Created live in-app chat which allows users to communicate, OverUnder to communicate with users, and to receive real-time sport event updates.
    • Implemented a notification content extension that modifies incoming push notifications to make them more personal for each user.
    • Helped identify and implement key analytic events and funnels.
    • Added support for mobile ads—showing ad banners when appropriate.
    Technologies: Instabug, Google Ads API, Fabric, Firebase, Instruments, Xcode, Core Data, Swift
  • Senior iOS Developer

    2017 - 2017
    Adforprize (via Toptal)
    • Developed Adforprize: a platform where users can express themselves through creative ads. Companies posts prizes which are rewarded to users who make the best ads for their campaign.
    • Refactored the existing application by resolving a number of issues, crashes and memory leaks; reorganized project structure and replaced heavy storyboards with XIB files.
    • Implemented a live in-app chat using Firebase realtime database.
    • Worked on and improved advanced video editor (recording multiple video clips, edits them and merges them): fixed crashes and issues; added support to add soundtracks, insert GIFs in between video clips and add images on top of videos.
    • Implemented a number of custom UI components with CoreAnimation and Lottie animations (Demo video: ).
    • Attended daily standups and proposed new features, solutions, and iOS best practices.
    Technologies: REST, Git, Firebase, Core Animation, AVKit, Swift 3, iOS
  • iOS Developer

    2016 - 2017
    NimbleRx (via Toptal)
    • Developed a set of three iOS applications.
    • Supported and added new features to the NimbleRx, application which keeps track of users prescriptions; a user can order prescription refills, track it on the map and pay it using the app.
    • Led the iOS development on the NimbleMD, application for MDs to keep track of drugs and medication; their description, usages, insurance coverage, and other information.
    • Created the NimbleRx marketing iPad application.
    • Developed applications fully in Swift by utilizing protocol-oriented programming concepts.
    Technologies: MapKit, Core Animation, Git, Amplitude, Crashlytics, Swift, iOS
  • Lead iOS Developer

    2016 - 2016
    Proballers (via Toptal)
    • Developed from scratch a social network application that connects basketball players with fans and released to the App Store in six weeks.
    • Setup and guided the client with the set up of a source code repository, Apple developer accounts, in-app purchases, analytics, crash reporting, and releasing the app on Test Flight and in the App Store.
    • Implemented auto-renewable in-app subscriptions.
    • Developed a verification system for pro players by incorporating the video recording feature in the onboarding flow.
    • Solved the challenge of presenting players statistical data on a small screen by adding a custom UI component (UICollectionViews inside parent UICollectionView).
    Technologies: Fabric, Twitter API, Facebook API, AV Foundation, Crashlytics, Git, iOS, Swift
  • Software Engineer | Lead iOS Developer

    2013 - 2015
    Amphinicy Technologies
    • Implemented a set of mobile (iOS and Android) applications for use by operatives of the rapid response team for disaster relief and humanitarian operations.
    • Developed a mobile application for configuring satellite antenna (Azimuth, Elevation, and Skew Angles) for an appropriate geosynchronous satellite through an augmented reality interface.
    • Participated in the whole software development process, from the requirements-and-design phase to testing, integration, and communication with a client.
    • Worked as the technical interviewer of new iOS developer applicants.
    • Led a small team.
    Technologies: Appcelerator, Android, Swift, Objective-C, iOS
  • Junior Software Engineer

    2011 - 2012
    Amphinicy Technologies
    • Developed for Amphinicy Technologies—the world’s leading software provider for companies operating in the satellite industry.
    • Built the Java back end for a large in-house CMS product.
    • Implemented Android and iOS mobile clients (EPUB and PDF reader) for the in-house CMS.
    • Developed the mobile CMS client by customizing, configuring, and adding features to an existing RMSDK client application.
    • Collaborated and communicated with international clients.
    • Worked in both local and distributed teams.
    Technologies: Flex, Java, Android, Objective-C, iOS


  • Define It (Development)

    This is an app for building and improving the user's vocabulary. Users build their vocabulary by searching for different words and then learn those words by playing mini word games.

    Project Details:
    • Designed and developed the application independently; also handled the release to the App Store.
    • Developed the app in Swift using clean MVVM architecture and protocol-oriented programming concepts.
    • Implemented speech recognition features.
    • Developed optical character recognition features (OCR),
    • Added Today iOS extension (iOS widget).
    • Implemented a simple version of the application for the Apple Watch.
    • It has over 80,000 downloads.

  • Cherished (Development)

    Cherished is an app for creating and sharing the user's most valuable memories. Users take photos, customize them using unique filters, artworks, and typography, and then share created memories on different social networks.

    Project Details:
    • Designed and created the app independently along with handling the release to the App Store and all marketing efforts.
    • Heavily utilized the Core Image iOS framework and social network integrations.
    • Implemented using the protocol-oriented MVVM architecture with Coordinator pattern.
    • Created the application's landing web page (

  • Comic Battle (Development)

    A fast-paced, multiplayer iOS game where players train a team of fighters and challenge other players worldwide to a real-time duel.

    Tasks Accomplished:
    • Developed using Cocos2d-iPhone and native UIKit components.
    • Implemented a custom network communication library using TCP stream and TCP socket connection to avoid unnecessary overhead in communication with the server.
    • Implemented a connection error handling mechanism for user-friendly reconnection and state perseverance, which is especially important when the player is in the middle of a duel with another player.
    • Created a modular architecture that makes it easy and painless to add new game resources (new characters, items, skills or side effects).
    • Implemented user analytics, crash reporting, and an easy content-adding mechanism.
    • Served as the product owner and only iOS developer.
    • Coordinated efforts between back-end developer, iOS developer, and artist.

  • mySea (Development)

    mySea is an interactive cruising guide for Greece, Croatia, and Turkey (Mediterranean coast) as well as an online reservation and payment system for berths and national park tickets

    Tasks Accomplished:
    • Maintained the application and added new features.
    • Integrated two different payment providers (the chosen one is determined on the fly via the back end).
    • Developed the app in Objective-C but the new features were implemented and added using Swift.

  • Set of Utility Mobile Applications for Field Operatives (Development)

    Tasks Accomplished:
    • Implemented the iOS and Android mobile applications for configuring solar panels to achieve maximum usability for a specified period of time.
    • Implemented iOS and Android applications for configuring satellite antenna to point to a specified geosynchronous satellite.
    • Configured, rebranded, and added additional features to a VoIP application to meet project requirements and to use specific audio codecs.
    • Gained knowledge and experience in VoIP technology.
    • Utilized device sensors to calculate appropriate azimuth, elevation, and skew angles required to setup satellite antennas.

  • How to Write Automated Tests for iOS (Publication)
    In this tutorial, you will learn how automated testing works for the iOS platform and how to implement it in your project.
  • Swift Best Practices and Tips by Toptal Developers (Publication)
    This resource contains a collection of Swift best practices and Swift tips provided by our Toptal network members.


  • Languages

    Swift 5, Swift, Swift 3, Swift 2, Objective-C, Java
  • Frameworks

    iOS SDK, Cocoa Touch, UIkit, Core Data, AFNetworking, Flex, Core Location, WatchKit, MapKit, AV Foundation
  • Libraries/APIs

    Core Animation, REST APIs, Firebase iOS SDK, JSON API, Core Graphics, Fabric, CocoaPods, Facebook API, Twitter API, Google Maps, Google Places API, AVKit, Google Ads API, WebRTC
  • Tools

    Xcode, GitHub, Git, Crashlytics, Trello, Appcelerator, Instruments, Instabug, J2ObjC, CallKit, Jira, Atlassian Confluence, Android Studio
  • Paradigms

    Object-oriented Programming (OOP), REST, Unit Testing, Continuous Integration (CI), Agile Software Development, Model View Viewmodel (MVVM)
  • Platforms

    Mobile, iOS, Apple, Firebase, Android
  • Other

    iPhone X, Custom Views, UI Animation, User Interface (UI), Payment Gateways, In-app Purchases, Amplitude, HTML5 Animations, VoIP, UI Testing
  • Storage



  • Master's degree in Software Engineering and Information Systems
    2009 - 2011
    Faculty of Electrical Engineering and Computing, University of Zagreb - Zagreb, Croatia
  • Bachelor's degree in Computing
    2006 - 2009
    Faculty of Electrical Engineering and Computing, University of Zagreb - Zagreb, Croatia

To view more profiles

Join Toptal
Share it with others