top of page

iOS Technical Questions


1. Swift:Q: What is the difference between weak, strong, and unowned references?A:

  • strong: Default, increases reference count.

  • weak: Doesn’t increase count, allows deallocation (used in closures, optional).

  • unowned: Non-optional version of weak, assumes referenced object will never be nil after assignment.

2. SwiftUI:Q: What is GeometryReader used for?A: It provides access to the size and position of parent views. Used for building responsive layouts dynamically based on available space.

3. UIKit:Q: How do you implement pagination in a UITableView or UICollectionView?A: Detect scroll position in scrollViewDidScroll, and when near bottom, fetch and append new data to your data source, then call reloadData().

4. Core Data:Q: How do you implement background context saving in Core Data?A: Use newBackgroundContext() on the NSPersistentContainer and perform operations inside perform {} block to avoid blocking the UI.

5. NFC:Q: What’s the difference between NFCNDEFReaderSession and NFCTagReaderSession?A:

  • NFCNDEFReaderSession: Only reads NDEF-formatted tags.

  • NFCTagReaderSession: Lower-level API, used for custom and advanced tag types (e.g., ISO7816, FeliCa).

6. Data Structures:Q: What is the difference between a binary tree and a binary search tree?A: A binary tree has two child nodes per node. A binary search tree (BST) adds the constraint that left < parent < right for fast lookup.

7. In-App Purchases:Q: What are App Store Server Notifications?A: They are server-to-server updates sent by Apple to notify about subscription events like renewal, cancellation, or refund.

8. Notifications:Q: How do you test push notifications in development without a real device?A: Use Xcode’s push notification testing tool (since iOS 14+) or use Firebase Console/TestFlight for real-device testing.

9. Firebase/Firestore:Q: What is the difference between Firestore’s set, update, and add methods?A:

  • set: Creates or replaces document.

  • update: Modifies existing fields only.

  • add: Adds a new document with a unique ID to a collection.

10. Storyboard:Q: How do you reuse a view controller defined in a storyboard from code?A: Instantiate it using UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "MyVC").

Apple News & Developer Updates

  • iOS 18 expected at WWDC25: New AI APIs, lock screen widgets, and predictive app suggestions.

  • Apple Files Patent for “Contextual UI layering” – could change multitasking on iPad.

HR Question

Q: Tell me about a time you disagreed with your manager.A: In a previous role, I disagreed on the timeline for a release. I gathered technical evidence, proposed a compromise plan, and we aligned after discussion.

Personality Question

Q: How do you handle pressure and tight deadlines?A: I prioritize tasks, break work into sprints, eliminate distractions, and communicate clearly with the team to avoid surprises.

Project Management

Q: What tools do you use for managing agile development?A: Tools like Jira, Trello, GitHub Projects, along with Slack for communication and Notion for documentation.

Team Management

Q: How do you handle underperformance in your team?A: I diagnose root causes (personal, skill gaps, or misalignment), offer mentoring or training, and set measurable short-term improvement goals.

 
 
 

Recent Posts

See All
{{ $('Get Ready Post').item.json.Title }}

AI agent workflows are shifting enterprise spending. Gartner predicts AI inference costs per agentic workflow will increase more than 5x through 2028 as systems shift from basic LLM prompts to continu

 
 
 
{{ $('Get Ready Post').item.json.Title }}

Cloud-based AI has two persistent problems for mobile developers: latency, because every inference call is a round trip to a server, and privacy, because user data has to leave the device to be proces

 
 
 

Comments


© 2025 by Shahzad. Powered and secured by QMShahzad

bottom of page