Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I've been programming for the iPhone for quite some time now. I have read books like Beginning iPhone 4 Development by Jeff LaMarche and Programming in Objective C by Stephen Kochan. Right now I am pretty comfortable with view controllers, table views, gestures, GCD, Core Data etc.

I am now seeking to build a career in iOS (instead of a hobby as it has so far been). How can I take my knowledge to the next level so that I can be hired as a profesional iOS developer. What are the other technologies I must be familiar with in order to be comfortable building enterprise level applications for different industries like banking, telecommunications etc? Are there any good books that talk from the perspective of enterprise architecture for mobile applications ?

share|improve this question

migrated from stackoverflow.com May 20 '11 at 11:19

This question came from our site for professional and enthusiast programmers.

What I essentially wanna ask is: Is there a book like this "Patterns of Enterprise Application Architecture - Martin Fowler" for iOS? –  iPhone Developer May 19 '11 at 23:05

5 Answers 5

Instead of trying to find out additional domains to learn about - You should write a lot of code. In the process of doing the latter, you will invariably hit the domains you need to master.

share|improve this answer
Amen. Reading lots of books will make you a well-read beginner. The only thing that can make you an "intermediate/advanced" programmer is shipping code. –  svintus Jan 3 '13 at 22:06
What about writing and publishing an app to the store?:) –  Daniel G Sep 30 '14 at 20:11

One of the most common tasks you will need to do in an enterprise is communicate with databases and web services.

There is a book called Professional iPhone and iPad Database Application Programming by Patrick Alessi that covers the following topics: Introducing Data-Driven Applications The iPhone and iPad Database: Sqlite Displaying Your Data: The UITableView ipad Interface Elements Introducing Core Data Modeling Data in Xcode Building a Core Data Application Core Data-Related Cocoa Features Core Data Migration and Performance Working with Xml on the iPhone Integrating with Web Services

It is not as well written as the Beginning iPhone 4 Development book by LeMarche and Mark, but it will get you started on some of the skills you will need to use in enterprise development on the iPhone (and iPad).

share|improve this answer
Throw in security and you've covered it. –  JeffO May 20 '11 at 14:35

One basic thing you need to do is show what you can accomplish. Write a good app or two and put it in the App Store. They don't have to make money, but they should be available for people you point them out to.

Many people judge on appearances, and they'll likely think that a guy who can write a good-looking app can pick up banking and databases and such more than they'd think that a bank database guy can write a good-looking app. (They're likely being accurate, too. Designing and writing a good-looking and functional iPhone app shows skills most people don't have.)

share|improve this answer

To a considerable degree I've found that corps/managers that want to hire programmers expect that the programmers know the business of the corp or manager. Domain specific knowledge on the part of the programmer is at least as important as knowledge of platform or API or language.

If you want a contract in banking it would help a lot if you understand banking, if telecom then understand telecom. Knowledge of a platform or API or language is infrastructure: knowledge of the line of business gives you better design ability.

share|improve this answer
absolutely worthless answer –  Wildling May 20 '11 at 12:22
@RYUZAKI - do you feel that domain knowledge is unimportant or that those doing the hiring don't take this into consideration? –  JeffO May 20 '11 at 14:34
The problem with this advice is that it assumes the OP knows who he wants to work for. Domain knowledge is good, but you can't get domain knowledge in everything before you look for that first job. The OP wants to get into iPhone development, and I don't know what sort of domain knowledge would be good for that. –  David Thornley May 20 '11 at 15:44

These are podcast from Standford University. ;-)




share|improve this answer
I am familiar with these. Like I said I understand the microscopic view of implementation of iOS concepts and frameworks. What I'm looking for is the macroscopic view of enterprise software systems. –  iPhone Developer May 19 '11 at 23:01

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.