Version control systems: Git, git flow
Dependency managers: Cocoapods, knowledge of Carthage (optionally)
Networking: HTTP protocol, Alamofire, cur
Persistence: CoreData
UI: Auto Layout, storyboards, XIB’s
IDE: Xcode
Bug tracking: basic workflow with Jira
Debug and profiling: basic experience with Xcode profiling tools, zombie objects
Time estimation for the required functionality
Planning the architecture of the solution — both at the low and on the application level
Coding the solution
Communication with the customer, clarification of requirements
1. Psychological support system with the ability to chat/call selected advisors.
Architecture:
Lightweight MVC
View-Models as layer that provides ready for displaying data
Technology:
Mixed-language project: Obj-C + Swift 5.0Chat:
PubNub + RESTCode quality: SwiftGen, Swiftlint, Copy-Paste Detector, Unit-Tests (XCTest), UI Tests
(XCUITest)Networking: AFNetworking,
AlamofireThird-party: Firebase RemoteConfig
Data storage: Key Chain, User Defaults
Distribution: Firebase (former Fabric), TestFlight
CI: GitLab CI
2. App for products delivery agent, that provides information about packages and a place of delivery.
Architecture:
MVC
Coordinators
Service
Technology:
Swift 5.0, REST
AVAudioSession HERE MAP SDK / REST API — route calculation and optimization with user constraints
Tools:
Data store: Realm, RealmSwift, Keychain, User defaults
Networking: AlamofireData storage: Keychain, User Defaults
Distribution: TestFlight
3. App — system for collecting information/data from industrial air conditioning systems in the USA, data synchronization
Architecture:
Small part of project — MVP (started by another team)
Coordinators approach
State machine
Lightweight MVC in general
Model-ViewModel approach without react
Technology:
Swift 5
REST
Tools:
Code quality: SwiftlintNetworking: Alamofire,
AlamofireObjectMapperData storage: Core Data, Keychain, User Defaults
Deep Linking: Firebase
Third-party: Google Maps, Google Places
Distribution: TestFlightCI: GitLab CI
4. Fintech project for Arab Emirates.
Architecture:
MVC
Coordinators
Repo
Technology:
Swift 5
REST
open banking
Tools:
Data storage: CoreData
Networking: Alamofire
Data storage: Keychain, User Defaults
Distribution: Testflight
CI: GitLab CI