# [ios developer](https://blog.undabot.com/so-you-think-you-can-call-yourself-a-senior-ios-developer-767fb9d6e423) ###### tags: `iOS_Developer` ## Ability 1. Good UI / UX / animation 2. Dependencies manage 3. Data Persistence 4. Networking 5. Deal with Multi-threading programming 6. Memory management (ARC) 7. App lifecycle 8. QA 9. Architecture - MVVM, MVVM-C 10. Design Pattern - write a beautiful, maintainable and readable code 11. Security 12. CI/CD 13. RxSwift - reactive programming ## Tools & Document 1. Xcode 2. GitHub 3. Gitmind 4. Trello 5. HackMD 6. StackOverflow 7. [Apple Developer Documentation](https://developer.apple.com/documentation/uikit/app_and_environment) ## In iOS these are must know patterns: [Singleton](https://www.swiftbysundell.com/articles/avoiding-singletons-in-swift/) Observer Delegate [Strategy](https://www.appcoda.com.tw/strategy-pattern/) Factory Iterator Builder Multicast delegate pattern Facade pattern Composite pattern Memento pattern Additionally, you should be familiar with the [SOLID](https://en.wikipedia.org/wiki/SOLID) principle and use it appropriately. [網友的實作](https://wilden-chen.gitbook.io/swift-design-patterns/decorator) ## [swift developer Roadmap](https://trello.com/b/hLGyiEEE/swift-developer-roadmap) [roadmap & skill matrix](https://awesomeopensource.com/project/BohdanOrlov/iOS-Developer-Roadmap)
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up