Dan Bodnar
Verified Expert in Engineering
iOS Developer
Puerto de la Cruz, Spain
Toptal member since November 30, 2020
Dan is a passionate iOS developer (Swift and Objective-C) with 10+ years of experience and deep expertise in Bluetooth integration, networking, synchronization systems, and data persistence. He is a huge fan of reactive programming and implementing pixel-perfect applications. Dan has worked on a 100% remote basis for the past three years, and he is always thrilled to learn and apply new technologies and optimize how he works.
Portfolio
Experience
- Objective-C - 10 years
- Swift - 6 years
- Core Bluetooth - 6 years
- Core Data - 5 years
- RxSwift - 4 years
- Realm - 4 years
- SwiftUI - 1 year
- Combine - 1 year
Availability
Preferred Environment
Functional Reactive Programming, Functional Programming, Reactive Programming, Swift, RxSwift, MacOS, Xcode, iOS
The most amazing...
...thing about me is that I never say, "It can't be done."
Work Experience
Lead iOS Developer
Kolibree
- Developed a pixel-perfect, highly reactive, Bluetooth-connected iOS application for one of the world's biggest consumer products companies.
- Created an outstanding, independent watch application for the same client, using SwiftUI, Combine, Core Data for local storage, and Core Bluetooth to communicate with the peripheral directly from the watch.
- Used RxSwift, RxCocoa, and Rx community frameworks in an MVVM-C architecture largely.
- Wrote unit tests, integration/UI tests, snapshot tests, and pact tests.
- Developed a series of widgets for iOS 14+ for the same application using SwiftUI.
- Oversaw the project's continuous integration system and improved it with different tools, such as SwiftLint, SwiftFormat, and code coverage.
- Improved the continuous deployment system for automating the builds and deployments.
- Oversaw the preparation of test data, testing, and debugging during QA cycles.
- Tracked bugs, crashes, and suggestions, using Instabug and Jira. Kept technical documents up-to-date and maintained them in Confluence.
- Ensured that code review practices were fully adopted by a team of nine iOS developers working on the same project.
Senior iOS Developer
Visualismo
- Developed a podcast application with live stream functionalities from scratch.
- Built the entire ecosystem of the audio player with capabilities such as switching seamlessly between radios, downloading programs (in advance or over the internet), and live streaming with background use and offline use.
- Developed the back-end integration in the app and the local persistence for offline use.
- Built a complex and highly reactive in-app purchasing system.
iOS Lead Developer
Pentalog
- Developed a highly interactive, Bluetooth-connected medical iOS project consisting of a client and admin app.
- Created a series of SDKs used internally in all the projects entering the company. This included a BLE connectivity framework (agnostic to any GATT protocol) that allowed projects to easily set up communication with any BLE peripheral device.
- Introduced code-review practices and code-coverage requirements to all iOS teams within the company.
- Proposed architectural designs and defined the technical stack for all projects entering the company.
- Ensured team members correctly implemented the chosen development paradigms and principles.
- Configured and maintained the continuous integration and continuous deployment system.
- Developed proofs-of-concept, using the latest technologies.
iOS Developer
Yourshore
- Developed and released an iOS application for a research company client that worked in tight relations with some of the biggest universities on the West Coast.
- Ensured that the application's key features were working in concordance with the client's demands.
- Wrote unit tests for the service layers of the applications, reaching as high as 80% code coverage.
- Implemented NSOperationQueue and NSURLConnection to integrate with back-end web services.
- Oversaw the entire continuous integration and continuous deployment system for the iOS application.
iOS Lead Developer
Beler Soft
- Developed a series of iOS applications in Objective-C and Swift for different clients in different fields of activity.
- Implemented pixel-perfect UI elements using Auto Layout constraints and UIkit elements.
- Led and guided teams to move toward using the MVVM design pattern to better improve code maintainability and testability. Led the iOS development teams and oversaw their work.
- Maintained strong relationships with clients and defined high-level specifications, estimates, and deadlines.
Web Developer
ServTotal
- Developed a series of web applications for company's clients.
- Implemented MVC architectures in .NET-specific frameworks.
- Maintained a Microsoft SQL Server database and created complex queries, views, and indexes.
- Collaborated with senior developers who were applying the Agile methodology.
Experience
Salvame Radio
Colgate Connect
https://apps.apple.com/us/app/colgate-connect/id1505852279hum by Colgate
yBand Therapy
A therapy system motivates stroke patients to train their arms and regain arm mobility. The system consisted of three key parts: the BLE wrist device, an iPhone client/user application, and an iPad application for doctors. Both applications were paired with BLE wrist trackers that provided arm movement information.
CHALLENGES
One of the project's biggest challenges was that the iPad application had to easily pair with an unlimited number of peripherals and hold and work with up to five active connections simultaneously. Due to the nature of the project, the data could only be stored locally, and a peer-to-peer synchronization system between the user app and the doctor app had to be developed.
ROLE
As the technical leader in a team of three, I made high-level technical decisions. I proposed and implemented an MVVM and C project architecture with an n-tier layout (six dynamic libraries). I developed the BLE communication layer, the multipeer connectivity layer, the AirPrint services, and many others. I also ensured that the Git flow is respected (trunk-based), that the pull requests are correctly reviewed, and that the project's code coverage doesn't drop from one pull request to another.
La Casa del Panadero | Point of Sale
Biometric Solution
TransnetYX
https://apps.apple.com/us/app/transnetyx-colony/id1241001338An offline-first application that manages the colony data in research laboratories. In a team of two, I developed a large part of the application, mainly, but not limited to, the local storage system (with Core Data) and the app side of the synchronization system.
CHALLENGES
The biggest challenges were to make the app fully functional offline and allow a reliable synchronization with the back end for large chunks of data in limited and poor internet conditions.
Indoor Localization App
An iOS application for indoor localization and an indoor mapping system. The main feature of the application was to present a map of the inside of a building, hall, or showroom; position the user on that map in real time, and draw a route to a point of interest. One of the app's clients was Tranoi, a leading fashion trade show in Paris. Using the app, users could easily find their way through different showcases and the route to the next one they wanted to visit.
CHALLENGE
The biggest challenge was to triangulate the user location using the iBeacons placed inside the hall.
ROLE
As the technical leader in a team of five, I spearheaded all the design choices and developed a large part of the triangulation system and most of the graph algorithm to find the shortest paths.
Plus Workout
https://apps.apple.com/us/app/plus-workout-indoor-cycling/id944800953NightShot
SnapSlidy
An iOS application for creating and sharing videos from photos. All videos were presented in a feed (collection) where any app user could play them.
CHALLENGE
The main challenge of the application was to create a mechanism to load and play the videos in a fast and reliable way.
ROLE
I created the two key features of the application: the video creator, which included filters for photos and background music, and the video feed.
BroVid
Education
Bachelor's Degree in Computer Science
University of Craiova - Craiova, Romania
Skills
Libraries/APIs
RxSwift, REST APIs, CocoaPods, Mapbox API, Parse SDK
Tools
Xcode, GitLab, GitHub, TestFlight, Fastlane, Jenkins, Jira, Confluence, Git, Zeplin
Languages
Swift, Objective-C, C#, C++, SQL, PHP 5, Swift 5
Frameworks
RealmSwift, UIKit, Core Data, Core Bluetooth, Combine, AFNetworking, .NET, SwiftUI, Multipeer Connectivity
Paradigms
Unit Testing, Model View ViewModel (MVVM), Reactive Programming, Functional Programming, Functional Reactive Programming, Offline-first Development
Platforms
iOS, MacOS, Bluetooth Low Energy (LE), Firebase, Mapbox, Parse
Storage
Realm, Databases, Data Synchronization, MySQL, Cloud Firestore
Other
Programming, OOP Designs, MVC Frameworks, In-app Purchases, Push Notifications, Code Coverage, Localization, Code Review, Multithreading, Background Threading, Networking, iOS App Design, iOS Design Trends, AVFoundation, Apple AirPrint, Internationalization, iBeacon, SDKs, Carthage, Graphs, Authentication, Biometrics, POS, In-app Purchase (IAP)
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring