Logo for tanaschita.com

Preparing for a technical iOS job interview

with over 200 questions & answers

Book logo
Download preview

About this book

Having been a freelance iOS developer for over 10 years, I participated in quite a few hiring interviews for various projects and have also been in a position of leading the technical interviews myself.

With this book, I'd like to give you a guide for technical iOS questions you might be asked in such an interview for an iOS hiring position.

This book can also be used to get an overview on different iOS development topics. It can be an inspiration for deepening and expanding your knowledge on your iOS journey.

It provides over 200 technical questions & answers on various iOS topics, covering Swift & Objective-C, SwiftUI & UIKit, Combine, HTTP Networking, Core Data, Concurrency with async/await, Security, Automated Testing and more.

Buy ebook on Gumroad

Content

Each chapter starts with a questions overview that allows you to check your knowledge without seeing the answers. All questions are numerated so you can quickly find the answer if needed. The following topics are covered:

Swift

Being the main programming language for the iOS platform, a deep knowledge in Swift is expected from an iOS developer. This chapter provides questions and answers on Swift and general programming language concepts.

Objective-C

Objective-C is becoming more and more obsolete after Swift was released in 2014. However, with existing apps written in Objective-C still out there, knowledge on Objective-C may be required for an iOS position. This chapter provides questions and answers on Objective-C basics and the interoperability between Swift and Objective-C.

Xcode

Being the main iOS development tool, a confident usage of Xcode is expected from an iOS developer. This chapter provides questions and answers on working and debugging with Xcode.

SwiftUI

Since 2019, SwiftUI is Apple's main framework for building user interfaces for iOS. This chapter provides questions and answers on the main aspects of SwiftUI.

UIKit

With SwiftUI slowly pushing UIKit into the background, UIKit is still part of many existing iOS applications. A deep knowledge of UIKit may be required for an iOS position. This chapter provides questions and answers around key aspects of UIKit.

Combine

With the release of Combine at WWDC 2019, Apple introduced a native way to write functional reactive code. This chapter provides questions and answers on Combine and on functional reactive programming concepts in general.

Server Communication

Server communication is part of almost every iOS application. This chapter provides questions and answers on general computer networking concepts and on specific iOS networking topics.

Concurrency

Apple introduced Swift's async/await syntax during WWDC21, allowing us to write asynchronous code in a shorter and safer way. This chapter focuses on this concurrency model with async/await. It also provides questions and answers on more low-level technologies like Grand Central Dispatch and Operations. Since they were used in iOS applications before async/await, knowledge around these technologies may be required for an iOS position.

Persisting Data

Persisting pieces of data is required in many applications. For different scenarios, Apple offers different ways to store data. This chapter contains questions and answers on the iOS File System, UserDefaults, Keychain and the Core Data framework.

Security

Many applications need to manage some kind of sensitive user data. To ensure a high level of security, Apple provides different technologies to be used by developers. This chapter provides questions and answers on specific security-related iOS technologies such as keychain or shared web credentials, as well as general cryptography concepts.

Automated Testing

Testing is an important part in every software development process. Apple offers tools to write unit, UI and performance tests for iOS applications. This chapter provides questions and answers on general testing concepts and specific iOS testing tools.


Buy ebook on Gumroad

© 2023 tanaschita.com

Privacy policy

Impressum