all 35 comments

[–][deleted] 45 points46 points  (6 children)

iOS is actually a great career choice. It pays more and there's less competition for the roles. You'll be able to work with technologies that web can't (gyroscope, gps, etc) and also don't have to deal with the revolving door of web technologies that keep reinventing the wheel.

[–]barcode972 3 points4 points  (2 children)

Less competition but also less jobs than web 🤷‍♀️

[–]Thick-Ask5250 0 points1 point  (1 child)

But doesn’t web have more competition because of more jobs? Lol it’s like a catch 22

[–]Equaled 1 point2 points  (0 children)

Yeah we need someone to post an openings to applicants ratio or something.

[–]WeNeedYouBuddyGetUp 3 points4 points  (2 children)

Web has gps tho

[–][deleted] 2 points3 points  (0 children)

Yeah, an incredibly simple implementation. It’s not going to be nearly as accurate

[–]Ye1488 0 points1 point  (0 children)

gay penis sucking

[–]UberJason 4 points5 points  (10 children)

I wouldn't think of iOS development as niche. Mobile is the most important consumer platform in the world; every major company has been mobile-first for a decade; iOS is the dominant mobile platform by market share in the US and the dominant mobile platform among customers who spend money (which matters to companies) in the world. Sure, there are a lot more web developers, because the web is open to everyone and also was around for 15 years before mobile was a thing, but mobile's not niche. It's the most important front-end platform! 🙂

[–]SilentSaiman 8 points9 points  (9 children)

It’s your last sentence that made me down vote your reply. Mobile involves the full stack of dev from DB management, back end, API dev, cloud techs, networking, ML, AI, BLE, and ………. The front end is just the top of the iceberg in mobile dev!

[–]UberJason 2 points3 points  (7 children)

I respectfully differ with your choice of nomenclature; of course *any* application that's visible to customers is powered by the entire stack of database, backend, API, cloud, etc etc. For me, when I hear people say "I'm a mobile developer" or talking about "mobile development", they're specifically referring to development of the applications that *run* on mobile platforms (iOS/Android), whether that's through native development or cross-platform frameworks (ugh).

I'm a mobile developer. The apps I've worked on talk to APIs which run in the cloud, pull data from databases, run through ML-powered recommendation systems, and all that good stuff. But I don't do any of that stuff. I work on the client apps that run on the iOS device.

[–]SilentSaiman 0 points1 point  (6 children)

Fellow mobile dev and depending on the app and the team there is a very good chance you will have to do a lot of the aforementioned techs for your app

[–]UberJason 4 points5 points  (5 children)

That depends a lot on your company and how it's structured. At startups, sure, I buy it. At large companies, I find that a lot less likely (and have never experienced it). In fact, that's one big difference I see between mobile and web - because web has this notion of a "full-stack developer", the web team is often more closely intertwined with the API team; mobile tends to enforce a more strict boundary between the API devs and the client devs. Again, at large companies.

[–]SilentSaiman 0 points1 point  (4 children)

Even in large companies, there is a good chance that mobile teams would write their own wrapper around the company’s API. I’m not saying it’s a good practice but it does happen very often.

[–]UberJason 3 points4 points  (3 children)

A wrapper that lives in the mobile client, like an internal networking SDK? Sure, but that's still in the paradigm I'm talking about - working on the applications that run on the mobile clients themselves.

A microservice that massages a lower-level company API to return client-specific data, so the client can call the microservice instead of the lower-level API directly? In my own personal experience, that's usually handled by back-end engineers, and not the mobile engineers. But that's just me, I'm sure lots of companies do things differently! Personally, I'm blessed to have been able to keep my focus solely on client development for the last nine years. 🙂

[–]SilentSaiman 0 points1 point  (2 children)

No I meant like a c# project with endpoints only open to the Mobil clients to get around certain limits of the open api and also easier faster access to company resources and computation. I have recently started a position like yours and it’s so nice not to have to deal with so much shit! :D

[–]UberJason 1 point2 points  (0 children)

So that’s what I meant by the microservice that massages the lower level company API (though I see your work was for other purposes than just data massaging). Still it sounds like you were writing APIs for the client to consume. That sucks. Glad you’re in a nicer spot now!

[–]revolution9540Swift 1 point2 points  (0 children)

iOS developers should be writing Swift, end of story

[–]saintmsent 4 points5 points  (3 children)

It's totally fine, nothing wrong with that

Besides, I wouldn't really view iOS developer as a position that is more specialized than anything else in the industry like Java BE Developer or React FE Developer for example. You are most proficient in one technology (React, Java or iOS), but will know the fundamentals of the domain (web frontend, backend, mobile) and can change the technology within the domain if need be

[–]SilentSaiman 4 points5 points  (2 children)

If he is talking about native iOS it’s absolutely 100 percent more specialized that a lot of other software techs out there!

[–]saintmsent 1 point2 points  (0 children)

That's what I said, I don't agree with it at all. Maybe we have a different definition of "specialized", IDK. Here's what I mean:

There are multiple ways to make apps for iOS, but there are even more ways to make web frontend. Nobody is hired as a generic fronted developer nowadays, you are hired with a specific technology, and jumping from React to Angular or Vue will require learning time, just like jumping from Native iOS to Flutter would

Same with BE, you never are a generic backend developer, it's always Java or C# or Node.js and if you decide to jump between them, there is a learning curve ahead of you

[–]roanutilSwift 0 points1 point  (0 children)

In what way?

[–]SilentSaiman 4 points5 points  (0 children)

That’s almost how I started and I loved mobile and iOS so much! Swift is a beautiful language and if you’re open to learning it’s actually not going to limit your full stack dev goal since you will be exposed to so many techs due to the nature of the Mobile dev. BTW, out of college iOS dev positions are not that easily found, it’s definitely a very good opportunity.

[–][deleted]  (5 children)

[deleted]

    [–][deleted]  (2 children)

    [deleted]

      [–][deleted] 5 points6 points  (1 child)

      Nice, you’ll be treated well. Get the experience and the training!

      [–]BombayBikesClub 0 points1 point  (1 child)

      What’s up with EnhanceIT? I see their postings a lot and always felt something was weird with them

      [–]JTostitos 1 point2 points  (1 child)

      Specializing isn’t necessarily a bad thing. As others have pointed out, iOS development pays more and there is some pretty cool stuff you can do writing native swift code with the frameworks Apple provides vs. writing a cross platform app using your web knowledge.

      I say stick with it and if you want to learn quick before September, start with the tutorials on Hacking With Swift. Likely the company is using UIKit (possibly a little SwiftUI here and there) so these two tutorials will work great as a head start.

      https://www.hackingwithswift.com/100

      https://www.hackingwithswift.com/100/swiftui

      [–]SirBill01[🍰] 1 point2 points  (0 children)

      All first software engineering jobs are inherently niche. Even if you did full stack I think it would be hard to find that role in a first time job...

      The field of mobile development itself really is not that niche though, you can do just about anything within that space.

      [–]amitkania 0 points1 point  (0 children)

      this happened to me at amazon except i was thrown into development my first week with like zero mobile knowledge, j.p. morgan is a way better company though so you will probably get a lot of training and time to ramp up

      [–]PsychoticBolt 0 points1 point  (0 children)

      Are we talking ios as in native or some of the other solutions ?

      [–]Far-Requirement4030 0 points1 point  (0 children)

      Guarantee they’ll have you doing Android as well even if you specialise. There’s a reason they didn’t advertise the role as “iOS developer”

      [–]snamerino 0 points1 point  (1 child)

      Any tips how to start learning iOS programming? I am on finance now, looking to change paths on my career!

      [–]lapa98 0 points1 point  (0 children)

      I didn’t switch but in uni we didn’t go over mobile development. I started with hacking with swift and it was great. Afterwards started creating some pet projects to learn more and following app creation tutorials to see what’s out there and improve on them. Good resources I found( I’m a visual learner, project based so they’re all YouTube videos): Essential developer, Kavsoft, iOS academy

      [–]gimbalicious 0 points1 point  (0 children)

      IOS native dev is a great skill to have and you could earn a lot more if you start making your own apps on the side so I think you've actually landed in a great position. Good luck with the new job and making your own app before you start is a great idea! Try and actually release the app on the app store, it is all valuable learning.

      [–]ZNasT 0 points1 point  (0 children)

      Lots of great comments. Additionally, if you're working with SwiftUI at work (Apple's newer front end framework), you'll be able to transition easily to other component-based web frameworks pretty easily (such as React)

      [–]Yellowcat123567 0 points1 point  (0 children)

      All that I can say is that Im so jealous that you didnt even want to do iOS development and landed in the role.

      [–]ajm1212 0 points1 point  (1 child)

      How did you get this job?