Can I get a good job as an iOS developer after learning just Swift

11 points by uofmihnea ↗ HN
Hello,

I was wondering what people's thoughts were around employability of knowing Swift (but not Objective-C)?

Some context: I had studied CS Eng. in undergrad (and graduated at the top of my class) from a top program that focused on C++. I and know C++ forward & backward, but I dipped into the business side of things immediately after undergrad. Now, four years later, I'd like to get back into software development and my area of interest is iOS. I've been focused on learning Swift through a Stanford iTunes U course which is really good, but I'm not sure how it would be perceived if I don't know Objective-C.

I'm in the SF Bay Area and looking to stick around here in case that's relevant to the answer set.

Thank you!

14 comments

[ 3.0 ms ] story [ 41.6 ms ] thread
There are lots of Swift jobs.

http://www.warplife.com/jobs/computer/united-states/californ...

However, no one will hire you unless you have at least one app in the app store. There's no specific requirement for what that app actually does. As far as I can tell, there's not even a specific requirement that the app be any good.

This has to do with that, at one time, it was quite difficult to get Apple to accept new apps. Now Apple accepts nearly all comers, yet hiring managers still have the idea that applicants are only qualified if they have a shipping app.

What that means is that your knowledge of C++ and Swift and your CSE degree won't help much; what you need is an app in the app store.

Thanks Michael - very insightful. Yes that is my goal after completing the class. To build an app and get it into the app store.
> However, no one will hire you unless you have at least one app in the app store.

I guess this encourages publishing random garbage apps and polluting the app store. You can be a great engineer but not a businessman. Not everybody comes up with a polished product ready for publishing.

Btw, all your links (including internal) redirect to: http://www.warplife.com/ethics/reputation.html

mod_rewrite FTW.

I've been contemplating doing that for years.

What led me to choose last night to set up the redirect, was a reply to my complaint that having grey hair, as well as being openly public about my mental illness, has made it impossible to find paying work.

Some joker replied that if I wanted to find paying work, I wouldn't link to my essays about my schizoaffective disorder.

I regard his suggestion as the problem, not the solution.

I won't leave that redirect there forever. Eventually I'll stop being so pissed off.

On the other hand, it might be a good filter - you really don't want to work with those kind of people who hesitate to offer you a job because of your disorder, neglecting your background and experience.
This is an assumption, but if you go to work for a big tech company (Fb, Twitter, or any of the like), the code base is most likely to still be in Objective-C. So for practicality, it would be wise to catch up with Obj-C.
Sure but do you think it's a barrier to entry or is it acceptable to learn on the job?
Saying "no" is kind of difficult here, but most codebases at large companies are going to require some Obj. C familiarity at minimum, and proficiency on average.
Yes. Of course. But you you will be more valuable to potential employers if you learn objective C.
I've been an iOS guy for 6 years now; recently, I've had to pick up swift to adapt with the market and the many readily available resources being in swift. I say this because the advice I'll give you is based on what I've seen in the Bay Area, larger companies, and even from a personal learning experience. If you can build an app from scratch in Swift and publish it to the App Store, then you're golden in the job market. It's always the apps you have in the App Store that will bring out your resume when companies look to bring you in for interviews. With that being said, here are some pieces of advice I have for Swift vs. Objective-C: - Learn Swift through the iTunes U Standford course and master it - Stay upto date with the NSHipster blog for many of the ins and outs of Swift, Obj-C, and the iOS framework - Be sure to learn some of the Objective-C concepts that aren't that common in Swift (contact me for more details) - Research the common iOS interview questions as many of them still pertain to Objective-C - Understand your basic CS theory: Data Structures, Algorithms & their complexities, OOP, System programming - Integrate libraries that are written in Objective-C into one of your Swift apps and be sure to know how to incorporate it correctly

Currently, I'm working with a team of iOS engineers to build out our SDK for our service. One of the issues we've come up with over the past year was Swift vs. Objective-C. We made the decision to continue development and refactoring in Swift while maintaining our well written Objective-C code base. So, anyone coming on to our team would need Swift experience and be able to understand some details in Objective-C.

If you have any questions about what I mentioned, you can email me: aqadan@gmail.com

I'm job-hunting currently and most companies demand you know Objective-C with Swift as the icing. Many don't even care about Swift at all.

Many frameworks are written in Objective-C and have not been ported over.

I think you'll find it very frustrating if you only know Swift because there's just so much Objective-C out there and they're by no mean deprecated.

You should learn the basics of Objective-C at the very least.

Edit:One thing I forgot to mention, knowing just Swift means you have next to no experience with iOS comparatively speaking since Swift hasn't been around that long. There are companies that expect us to know pre-ARC Objective-C just to let you know where the bars are in this game.

Having learned Swift, followed later by Objective-C, I would say that Swift's biggest advantage (for me) was giving me a familiar-feeling language while working out the idiosyncrasies of the iOS API's, Xcode, and all the other things that come with learning iOS development.

Once you know Swift well, and have written at least one app, you'll probably know a bit of Objective-C anyways. As other commenters have mentioned, there are lots of libraries that haven't been ported yet, lots of example code on Stack Overflow, etc. The Swift community is still evolving, so you're going to encounter some Obj-C as you work more in iOS-land. From there, learning Obj-C is pretty much limited to the language itself, which is not a huge hurdle (I picked up the rest of what I needed to be productive in a matter of days).

TL;DR Learning Swift makes it easier to learn iOS - once you know Swift + iOS, it's easy to pick up Objective-C.

Your post makes no sense. On the one hand, you claim to "know C++ forward & backward" and on the other, you claim you "don't know Objective-C". You seem to think you cannot teach yourself Objective-C quickly and easily. That does not portent well for your ability to solve problems and learning quickly.

How about taking an afternoon (or however long it takes you) to learn Objective-C. After all,it is just another C variant and closely related to C and C++, which you already know.

Whether you are employable as a developer depends on your programming skills which are separate and distinct from the particular language(s) you "know".

Hey thanks for the message. I think there's a distinction between knowing objective-c (or any language) and having significant experience where you can program effectively in that language. I should've been more precise with my wording, but I had meant the latter.

I'm sure I can teach myself objective-c quickly, but if I were to code an app I'd probably prefer to do this in Swift.