How to Become an Entry Level iOS Developer — YML

Basic CS Knowledge

Swift or Objective-C?

Frameworks and API

  • UIKit (UITableView, UIButton, UINavigationController, GestureRecognizers)
  • Interface Builder (Storyboards, Segues, and the odd .xib)
  • Foundation Types (NSArray, NSDictionary, NSString) and their Swift counterparts (Array, Dictionary and String), HTTP API (NSURLSession, Basic REST API concepts, JSON Parsing with NSJSONSerialization)
  • Grand Central Dispatch (GCD, NSOperationQueue)
  • Persistence (NSCoding, NSUserDefaults, CoreData)
  • Memory Management (what Retain Cycles are and ARC fundamentals)

Development Patterns

  • Delegation (This is sort of the workhorse of most iOS API’s, you should DEFINITELY understand this.)
  • Model View Controller (I don’t think Apple did the best job of encouraging best MVC separation, but it’s an important pattern that can help improve your code if you take the time to implement it properly. Also, it’s pretty much guaranteed to be on any iOS job interviewer’s question list.)
  • Subclassing (Almost all user interface code will be a subclass of something.)
  • Singleton (This one can definitely be abused… use sparingly.)

Familiarity with the Environment

UX/UI

Tools

  • Xcode (Of course.)
  • Git Source Control (Some companies might use Subversion or Mercurial, but git should be enough to get you in a door somewhere.)
  • JIRA or Bugzilla (Most likely JIRA. Again, you don’t need to be a pro with this, but you should probably at least play with it enough to not be scared the first time you see it.)
  • CocoaPods (This is a tool we use to manage dependencies and third-party code. I haven’t heard of a company that isn’t using this.)

Opinions

Portfolio

Conclusion

--

--

--

YML is a design and digital product agency. We create digital experiences that export Silicon Valley thinking to the world.

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Create a UITabBar Programmatically | Xcode 12, Swift 5.3

Social Media Integration in iOS

Image 2

Create a Swift Package and import it into an Xcode project locally

Creating a macOS Statusbar Application

Summary of WWDC 2019: Combine APIs for iOS

Continuous Integration and Deployment of an iOS app with Bitrise

Ripple into page with Flutter

ABBYY Mobile is Fully Equipped for iOS 15

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
YML

YML

YML is a design and digital product agency. We create digital experiences that export Silicon Valley thinking to the world.

More from Medium

NoSQL databases

CS371p Spring 2022: Lilia Li Blog #7

The Essential Features and Cost of building a Messaging App like Signal!

ReactJs — useEffect () — side-effect