Domagoj Stanković, Software Developer in Zagreb, Croatia
Domagoj Stanković

Software Developer in Zagreb, Croatia

Member since January 8, 2019
Domagoj is an iOS and watchOS developer passionate about well-structured, efficient, and testable code. He began with Java, enjoyed Objective-C, and then fell in love with Swift. He has experience working on a large scale app as part of Facebook's iOS News Feed team. As a lead iOS developer at Sofascore, he tamed the legacy Objective-C code, splitting it into several frameworks that were easily reused for another app.
Domagoj is now available for hire

Portfolio

  • Bunch
    Swift, RxSwift, VIPER Architecture, Git, SnapKit, CocoaPods, Xcode, CircleCI...
  • Underflow
    Viper, Model View Viewmodel (MVVM), RxSwift, Objective-C, Swift, iOS...
  • Sportening
    Swift, iOS, RxSwift, Clean Architecture, Protobuf, UIKit, Unit Testing...

Experience

Location

Zagreb, Croatia

Availability

Part-time

Preferred Environment

Git, Xcode, Objective-C, Swift, iOS, RxSwift, VIPER Architecture

The most amazing...

...platform independent app I've built wraps the existing C++ framework reliably running numerous evolutionary computation experiments in parallel.

Employment

  • Senior Product Engineer

    2021 - PRESENT
    Bunch
    • Successfully delivered rewrite of the app using RxSwift and VIPER architecture. That feat greatly contributed to closing the $1.5M fundraising round.
    • Maintained and fixed bugs in legacy apps written in SwiftUI and Combine.
    • Integrated Fastlane with CircleCI to achieve continuous integration.
    • Integrated Sentry and Crashlytics for error and crash logging.
    • Used Amplitude and Segment to investigate user journeys and monitor important KPIs.
    • Wrote hundreds of unit and snapshot tests in order to increase stability and confidence when releasing.
    Technologies: Swift, RxSwift, VIPER Architecture, Git, SnapKit, CocoaPods, Xcode, CircleCI, Sentry, Fastlane, UIKit, Amplitude, Segment, Braze, Firebase, Airtable, Unit Testing
  • CEO | Founder | iOS Development Consultant

    2020 - PRESENT
    Underflow
    • Consulted several companies regarding iOS development.
    • Set up architecture and processes for iOS development. Adapted a React Native app for iOS.
    • Helped integrate a low-level GPU library into an Xcode project.
    Technologies: Viper, Model View Viewmodel (MVVM), RxSwift, Objective-C, Swift, iOS, Mobile Development
  • Senior Software Engineer

    2020 - 2021
    Sportening
    • Created a rich UI with smooth animations and interactive custom components.
    • Built a robust and responsive app using RxSwift and clean architecture.
    • Wrote hundreds of unit tests using snapshot testing, RxBlocking, and RxTest.
    • Wrote several bash scripts to record network traffic smartly. Also wrote scripts to automate tedious tasks like updating proto models, downloading and formatting localization files, and more.
    • Moved the codebase from Carthage to Swift Package Manager.
    Technologies: Swift, iOS, RxSwift, Clean Architecture, Protobuf, UIKit, Unit Testing, Bash Script, Jira, Confluence, Carthage
  • iOS Development Consultant

    2020 - 2020
    Farm Credit DRP
    • Boosted the development of an iPhone app for insurance.
    • Delivered on all requirements within a tight schedule.
    • Built a reactive application using RxSwift and MVVM.
    Technologies: Model View Viewmodel (MVVM), RxSwift, Swift, iOS, Mobile Development
  • Senior iOS Developer

    2019 - 2020
    Nomadic Tribe (via Toptal Projects)
    • Built a booking system and integrated it with Stripe payments.
    • Added support for push notifications and created a push notification extension. Integrated Swift Package Manager support.
    • Built social media features with rich posts, comments, people, location tagging, sharing, and other feed actions. Provided smooth scroll performance, an intuitive UI, and efficient data load and persistence.
    • Tweaked misbehaving custom fonts. Used instruments to find performance bottlenecks. Built a custom scroll-based fading navigation bar.
    • Extracted custom build settings to Xcode configuration files and schemes, making them easy to switch based on the environment—debug, QA, staging, and release.
    Technologies: Jira, Git, SnapKit, PromiseKit, Stripe, Core Data, Swift, iOS, Mobile Development
  • iOS Development Consultant

    2019 - 2019
    WeSports
    • Created a library for a lightweight Amazon Cognito sign-up process for Carthage.
    • Created a test app to demonstrate usage of the library.
    • Handled asynchronous tasks primarily using RxSwift.
    Technologies: Amazon Cognito, Carthage, RxSwift, Swift, iOS, Mobile Development, SDKs
  • Lead iOS Developer

    2014 - 2019
    Sofascore
    • Split a legacy Objective-C codebase into several frameworks and integrated Swift support.
    • Wrote hundreds of unit and snapshot tests making sure things don't break. It sped up development, making team members more confident when releasing updates.
    • Implemented a non-consumable in-app purchase and an auto-renewable subscription with local validation using OpenSSL.
    • Created a library to facilitate the use of table views with mixed table view cells and made seamless animated transitions between states.
    • Implemented a watchOS app as well as Today and Intents app extensions.
    • Refactored the core app using Promises to make data load and persistence seamless, fast, and efficient.
    • Developed a multiplayer penalty shoot-out game from scratch using Swift and reusing existing underlying frameworks.
    Technologies: BuddyBuild, Sirikit, StoreKit, SnapKit, PromiseKit, Git, CocoaPods, Objective-C, Swift, WatchOS, iOS, Mobile Development
  • Software Engineering Intern

    2015 - 2015
    Facebook
    • Created a pixel perfect UI and animations to enhance user engagement.
    • Fetched necessary data from a database using GraphQL.
    • Deployed code to a codebase shared with hundreds of developers.
    • Improved accessibility for visually impaired people.
    • Wrote unit, snapshot, and end-to-end tests for the technology.
    Technologies: GraphQL, ComponentKit, Mercurial, Objective-C++, Mobile Development
  • Software Developer

    2013 - 2014
    aiKATE
    • Developed an application to track students' progress in the early stages of education and for direct parent-teacher communication.
    • Worked on processing input data and creating backup Excel files.
    • Developed forms using ASP.NET to collect user input.
    Technologies: Microsoft SQL Server, ASP.NET, C#

Experience

  • ECF Lab
    https://github.com/dstank25/ECF_Lab

    ECF Lab is a platform-independent desktop app written in Java developed to simplify usage of the Evolutionary Computation Framework written in C++. It manages parallel runs of experiments through interprocess communication independent of the background problem and algorithm.

    Before ECF Lab, the user had to manually write configuration files and run experiments from the console which was slow and error-prone. Results were in the form of plain text with no graphical representation. Professors and students would usually leave the app work overnight and results were waiting for them in the morning saving them days and days of work.

Skills

  • Languages

    Swift, Objective-C, C#, GraphQL, Java, Bash Script
  • Tools

    Xcode, Git, BuddyBuild, Slack, SwiftLint, iOS Instruments, Jira, Amazon Cognito, Mercurial, Sirikit, YouTrack, IntelliJ, Confluence, CircleCI, Sentry, Fastlane, Braze
  • Paradigms

    Mobile Development, Object-oriented Programming (OOP), Promise, Unit Testing, Model View Viewmodel (MVVM), Continuous Integration (CI), Test-driven Development (TDD), Clean Architecture, VIPER Architecture
  • Platforms

    iOS, WatchOS, Firebase
  • Frameworks

    XCTest, ASP.NET, StoreKit, ComponentKit, Viper, Core Data, UIKit
  • Libraries/APIs

    CocoaPods, SnapKit, PromiseKit, RxSwift, Alamofire, Stripe, Protobuf
  • Storage

    Microsoft SQL Server, SQLite
  • Other

    Objective-C++, Multithreading, Carthage, SDKs, Amplitude, Segment, Airtable

Education

  • Master's Degree in Computer Science
    2014 - 2016
    Faculty of Electrical Engineering and Computing - Zagreb, Croatia
  • Bachelor's Degree in Computer Science
    2011 - 2014
    Faculty of Electrical Engineering and Computing - Zagreb, Croatia

To view more profiles

Join Toptal
Share it with others