iOS Dev Job Interview - Must Know Topics

Поділитися
Вставка
  • Опубліковано 26 лис 2024

КОМЕНТАРІ • 130

  • @seanallen
    @seanallen  Рік тому +11

    Go deeper and build apps with my iOS developer courses at seanallen.teachable.com

    • @tb45g
      @tb45g Рік тому

      You should so some more portfolio reviews! They're super helpful, but some of your old ones are for websites that are no longer available (a couple portfolio sites are spam links now).

    • @JustFocus-xs1hw
      @JustFocus-xs1hw Рік тому

      Sean, I have a big interview coming up tomorrow, and this was incredible, thank you so much!
      Would you be open to creating another video in a similar long-form format, that just goes through all of the available UIKit Views and ViewControllers, one-by-one going into detail with how to use them? And likewise, one for SwiftUI and each Views popular viewmodifiers, etc.?
      That would be super awesome to see all in sequence just like this, because then you can absorb the full context of what is available out of the box in each framework, without needing to get too lost in the docs.
      Thanks!

  • @browhocodes
    @browhocodes Рік тому +69

    As a ex-Facebook iOS engineer and content creator myself, I cannot enough of your videos, man. Succinct, informative, engaging. Keep it up brother!💎

    • @seanallen
      @seanallen  Рік тому +3

      I appreciate that! Glad you enjoy the content 😀

    • @internationalswic
      @internationalswic Рік тому +2

      Bro. Does meta use SwiftUI or Objective-c?

    • @browhocodes
      @browhocodes Рік тому +5

      @@internationalswic objective-c!

  • @wizard19900509
    @wizard19900509 10 місяців тому +4

    Great video! I used this to refresh myself before an iOS interview. One small issue I found is that the the delegate part, you didn't add weak to the delegate example. This could lead to reference cycle in classes (super easy mistake for beginners).

  • @dk-sky3820
    @dk-sky3820 Рік тому +16

    I cannot express enough my gratitude for this video Sean.
    It is all the information I read over and over in million articles before all my interviews put into one concise video with demonstration that sticks in your mind.
    Now I don't even need to read my saved links anymore to refresh my mind.
    This video helped me so much before the interview today. I don't know the results yet but I already felt so much better during it because of the confidence this information gave me.
    Thank you!

    • @seanallen
      @seanallen  Рік тому +2

      Great timing then. Best of luck on the interview!

    • @favoritetroll9774
      @favoritetroll9774 7 місяців тому

      share your saved links just in case it can be useful to others like me etc

    • @mathisankar615
      @mathisankar615 3 місяці тому

      yeah i agree with the same

  • @RamyaWaddepally
    @RamyaWaddepally 8 місяців тому +1

    I am glad I found this video in my life! The explanation of all the network calls async & away in one file was the peak! I watched numerous videos with different folders for each of them but the way you explained in on file I was able to understand after a long time.

    • @seanallen
      @seanallen  8 місяців тому

      Happy to hear it was helpful and you finally understood those network calls!

  • @tommytexter4054
    @tommytexter4054 Рік тому +5

    I am having a iOS dev interview next Monday. I have been watching your videos this entire weekend! Hope I can do great tmr !🎉

    • @seanallen
      @seanallen  Рік тому

      Best of luck! Let me know how it goes.

    • @llegenda-r3c
      @llegenda-r3c Рік тому

      Did it go well bro

    • @tommytexter4054
      @tommytexter4054 Рік тому +2

      @@llegenda-r3c nah, the interviewer was a jerk but i am having another next week

    • @llegenda-r3c
      @llegenda-r3c Рік тому

      @@tommytexter4054 Bro you learned iOS swift development so is Mac mini m2 16/256gb enough for hardcore xcode development. I get it in $800 education discount. Can I buy

    • @danielniels22
      @danielniels22 9 місяців тому

      @@tommytexter4054 how were all your interviews going? did you land an ios engineer role?

  • @binhhuynh5005
    @binhhuynh5005 Рік тому +3

    Nice video. I would add a bit on sync vs async in Concurrency session

  • @ejolsson
    @ejolsson Рік тому +5

    Thanks Sean! Keep up the great work!

    • @seanallen
      @seanallen  Рік тому

      Wow, I appreciate the generosity! Thanks!

  • @samdiablo0
    @samdiablo0 Рік тому +2

    I have an interview coming up and this was exactly what I was looking for! Thank you for this detailed video!

  • @jasonjackson55
    @jasonjackson55 Рік тому +6

    41:06 who are we @escaping from 😂 this made my day 😂

  • @jasongoodrow949
    @jasongoodrow949 10 місяців тому +1

    This is excellent! Just getting my feet wet and had figured out a bunch by typing but this vid really summed up and explained really clearly and efficiently. Good work!

    • @seanallen
      @seanallen  10 місяців тому

      Glad it was helpful!

  • @TtnKolonyasi
    @TtnKolonyasi 7 місяців тому +1

    Thanks for being a great teacher and idol Sean. Learned a lot from your vids and landed a job. Working 1+ year and its time for a change so I’m having a technical interview tomorrow for a bigger, better company. So here I am once again learning from you 😁

    • @seanallen
      @seanallen  7 місяців тому

      I appreciate the kind words :). Best of luck in the interview!

  • @muzikjay
    @muzikjay Місяць тому

    You’re the man for putting this together. Thank you!

  • @zapakitul
    @zapakitul Рік тому +3

    I am not at all interested in iOS specific programming. I have a big distaste for modern programming languages (swift, rust, etc). Even so, your videos are really high value and full of knowledge to keep a 00’s coder up-to-date with the modern standards and practices.
    I wish I had access to resources like yours when I started programming in C89 or even C# back in the day. Thank you for teaching the next generation with so much care and detail.

    • @seanallen
      @seanallen  Рік тому +1

      Happy to hear you enjoy the content even though you aren't into iOS Dev 😀

  • @NomadicDmitry
    @NomadicDmitry Рік тому +2

    I'm a Test Engineer, but I'm really interested into the iOS. Thanks!

  • @mateo5677
    @mateo5677 8 місяців тому +1

    Sean subtlety flexing his Porsche 911 in his teachings is iconic 😅

  • @wherearethegnomes
    @wherearethegnomes Рік тому

    I'm a self-taught developer and to be honest I didn't even called for an interview once because I graduated from Business :) Also, I live in Turkey and there are like 20 job posts and they all look for seniors.

  • @MrKhanLabRunner
    @MrKhanLabRunner Рік тому +1

    You are awesome man, you explain things so well.

  • @laurentb6563
    @laurentb6563 Рік тому

    Beautiful! just when I am starting to look for a job again! Thank you Sean! After following you for so long I totally trust your insights on this subject :)

  • @akankshapakhale2965
    @akankshapakhale2965 Рік тому

    Hey Sean video really helped me to understand the swift concept deeper and really appreciate your hard work for spreading knowledge

  • @karlostj4683
    @karlostj4683 Рік тому

    Here's one problem with converting incoming JSON from "snake case" to "camel case": Someone else looking to find where the REST API-based JSON "avatar_url" shows up in your Swift code won't find it and won't know to search for "avatarUrl" - and vice versa. You're converting from one arbitrary readability standard (either Python or JS) to another arbitrary readability standard (Swift). And yes, they are both arbitrary. This becomes a Maintainability issue: After you win Powerball and are never heard from again, someone else is going to have to be able to understand your code without you around to answer questions about it.

  • @ashok2089
    @ashok2089 5 місяців тому +1

    Thanks Sean, It's helpful!

  • @sarathkumarsankar5090
    @sarathkumarsankar5090 Рік тому +2

    I am so grateful. thank you, Sean.

  • @adhamraouf6656
    @adhamraouf6656 11 місяців тому +1

    Hello Pro,
    Thank you for your awesome videos; I've learned a lot from them. If you could do us a favor and explain what we should focus on in problem-solving questions during interviews, we would be very thankful.❤❤

  • @SlavisWolf
    @SlavisWolf Рік тому +1

    Thanks for your content, I'm preparing for applying to english jobs and I find this video very handy. I am not an iOS beginner, I've been working in iOS programing the last five years but your video is being very useful to review some concepts. The only drawback I'd point out is that you speak very fast for me because I'm a non native english speaker and it's dificult keep up with your rhythm. But that is really my fault not yours 🤣 🤣

    • @seanallen
      @seanallen  Рік тому +1

      I've been told I speak fast and I've actually slowed down a lot over the years, lol. It's something I work on but can always improve. Luckily UA-cam has playback speeds. Glad you enjoyed the video!

  • @vicetbeki3734
    @vicetbeki3734 Рік тому

    Everything is great , you really know what you do , thanks for helping us 👌🏾
    I have a question , if I want to create an App switcher with SWIFTUI , what knowledge do I need , I’d like to know which course should I study in order to build it , thanks

  • @indianfyre
    @indianfyre Рік тому +1

    Amazing resource right here, thanks Sean!

  • @kavinda_dilshan_paramsoodi
    @kavinda_dilshan_paramsoodi 2 місяці тому

    I miss flat map, but depricated in iOS 18 I guess.

  • @ЭйБазилье
    @ЭйБазилье Рік тому +1

    Me: I should stop wasting time on videos about sports cars and watch some useful tutorial instead
    Some useful tutorial: Porsche 911 GT3
    Thanks for your work, Sean!

  • @indianstate14
    @indianstate14 11 місяців тому +1

    This content is Gold ❤

    • @seanallen
      @seanallen  11 місяців тому

      Thanks for the kind words and I'm glad you enjoy it!

  • @nithinyel3836
    @nithinyel3836 Рік тому +1

    the most awaited video !!

  • @spikesagal
    @spikesagal Рік тому

    Are you sure that lookup complexity for Array is O(n)? It's O(1) in pretty much every language I've learned. In languages that have true arrays (like Java), it's just a memory pointer with total size and a block size. If you look up an element at n, it's address is just (array address + (n * block size)), which is O(1).

    • @spikesagal
      @spikesagal Рік тому +2

      Oh nm I think I know what you meant: look up by value, not by index.

  • @King-DieGo-12
    @King-DieGo-12 9 місяців тому +1

    soooo geateful for creating this compilation

  • @MrKhanLabRunner
    @MrKhanLabRunner Місяць тому

    Why do we only need to do .users on the $1 in { $0 + $1.users } - what is the magic behind that? It understands that .users is what we’re looking for on the first element, and can’t add the entire object to the property of the second object?

  • @salibhaldar6568
    @salibhaldar6568 Рік тому

    While Creating Generic Fetch Data Function, what’s the use of “For” parameter? It was not used inside.

  • @LexicalNoScope
    @LexicalNoScope Рік тому +1

    Thank you so much. This is incredibly helpful. I’ve been on the fence about getting an iOS dev job or web dev so I have been learning both (SwiftUI and Next js mainly). There are basically 0 places hiring for either that aren’t government jobs within an hour drive of me so it would have to be remote. Does anyone who has experience with both (remote) have any advice?

    • @seanallen
      @seanallen  Рік тому

      Happy to hear it's helpful. Hope you enjoy it!

  • @dawei84_dev
    @dawei84_dev Рік тому +1

    This is awesome, thank you Sean!

  • @stasyanje4225
    @stasyanje4225 2 місяці тому

    Why people keep writing userUrl, this isn't some JS or is it? userURL would have looked much more consistent with Swift
    Nice video though

  • @theiosdeveloper555
    @theiosdeveloper555 Рік тому

    great video, thanks for sharing!!

  • @Денис-ж3ф5р
    @Денис-ж3ф5р Рік тому

    Looks like a list for interns/juniors if you get rid of generics

    • @seanallen
      @seanallen  Рік тому +2

      That because it is. It’s meant to help people get their first iOS dev job.

    • @Денис-ж3ф5р
      @Денис-ж3ф5р Рік тому

      @@seanallen that explains it ☺️

  • @nickpavlov4012
    @nickpavlov4012 Рік тому +1

    Hey Sean, please can you tell us is it possible to get a job today with only SwiftUI or you still have to know UIKit? Please give us an answer 🙏

    • @seanallen
      @seanallen  Рік тому +1

      Yes, it is possible. More of the jobs will be in UIKit, so it may be a little more difficult at this current time. But over time, SwiftUI will become more and more dominant.

    • @nickpavlov4012
      @nickpavlov4012 Рік тому

      @@seanallen Thank you so much for quick response!
      DO you offer private lessons or to help prepare for interview?

    • @seanallen
      @seanallen  Рік тому

      I don't outwardly offer private lessons but if someone asks and my schedule isn't crazy at the time, then I usually do it. Shoot me an email or a DM on twitter and we can discuss.

    • @Денис-ж3ф5р
      @Денис-ж3ф5р Рік тому

      Just learn both, swiftui is super unstable for big projects it has a lot of bugs and it’s partly UIKit under the hood

    • @nickpavlov4012
      @nickpavlov4012 Рік тому

      @@Денис-ж3ф5р спасибо Денис 💪

  • @bruhmoment3731
    @bruhmoment3731 7 місяців тому

    how long until prompting becomes an important part of coding interviews?

  • @somerandomvideos645
    @somerandomvideos645 3 місяці тому +1

    1:53:22 Now imagine how long this init could be in the real app. This VM also needs details, some actual Model. Also, probably access to some tracking, loggin, etc. services, etc.
    so then u get a long constructor anti-pattern or whatever it is called -> so you fix it with Builder, so now ->
    instead of a small class or struct with init with Model accessing some shared services -> you have two classes, one actual and one builder.
    I mean, it is clear, clean, and good for testing, but bigger, with more lines, files, and classes/structs. More time spent, etc.
    I mean, sometimes just KISS, guys.

  • @shreyanshmishra6613
    @shreyanshmishra6613 Рік тому

    Network calls are very intuitive if you have fundamental knowledge of how client server works. Its a cake walk for fullstack devs.

    • @seanallen
      @seanallen  Рік тому +1

      That's a pretty big "if" tho.

    • @shreyanshmishra6613
      @shreyanshmishra6613 Рік тому

      @@seanallen I don't know man. Knowing fundamentals are pretty essential to becoming a better developer. Understanding how computers work or communicate on a high level is necessary.

    • @seanallen
      @seanallen  Рік тому +1

      I didn't say it wasn't necessary. I was pointing out that most people watching this video and learning about network calls in Swift on UA-cam are not fullstack devs with a fundamental knowledge of client/servers.

    • @shreyanshmishra6613
      @shreyanshmishra6613 Рік тому

      @@seanallen You are doing a great job here. Love your videos. I'm just saying, if you are talking network calls you can also talk about client/servers. You said network calls are tough. But is that true? No. Will your audience find it tough if they didn't know the basics already? Yes. I don't know wheather you have videos teaching fundamentals but if you don't that's a gap to fill.
      Most people start by becoming a frameworkers, not engineers. Instead of learning UIkit, SwiftUi, jetpack, flutter, react, express, learn the principles of programming. Become software devs not ios devs.

  • @misran449
    @misran449 Рік тому +1

    Man Sean!!! dude thank you!!

  • @tracytim
    @tracytim 10 місяців тому +1

    Thanks, Sean. 👍🏼

  • @ghreacts
    @ghreacts 10 місяців тому

    I have a quick question. It has been 6 months since you posted but i hope you would see this. In the generic example, if i was to use func createName(person1: Name, person2: Name){} ---> and i create a protocol for the type NAMe, will it still
    work?

  • @rafaelfelipe2886
    @rafaelfelipe2886 Рік тому +1

    this is gold!!! thnks!!!

  • @hao-bz
    @hao-bz Рік тому

    super helpful stuff!!!

  • @yisamulin5636
    @yisamulin5636 Рік тому +1

    Nice vidio❤ thank you very much!

  • @Tyheir
    @Tyheir Рік тому

    Why does a network call take so many lines of code

  • @kstackz8249
    @kstackz8249 Рік тому

    Do you think CI/CD, jenkins, etc is needed? or a plus

    • @Денис-ж3ф5р
      @Денис-ж3ф5р Рік тому

      A huge plus for a senior, even though it depends on a team you work on.

  • @TechRagh
    @TechRagh Рік тому +1

    Thanks Sean! ❤

  • @kav04
    @kav04 11 місяців тому

    its now a ioS dev interview preparations , these are trivial tutorials

    • @seanallen
      @seanallen  11 місяців тому +1

      Disagree. These are fundamental topics & concepts that are always asked about in Jr. iOS dev interviews.

  • @miketechdev8866
    @miketechdev8866 Рік тому +1

    great video

  • @ask1218
    @ask1218 9 місяців тому +1

    This is amazing

    • @seanallen
      @seanallen  9 місяців тому

      Glad you liked it!

  • @gustavo12144
    @gustavo12144 3 місяці тому +1

    God bless you bro🙏

    • @seanallen
      @seanallen  3 місяці тому

      Glad you liked it :)

  • @kavinda_dilshan_paramsoodi
    @kavinda_dilshan_paramsoodi 3 місяці тому

    "escaping, like who are we running from?" Lol. That's the exact thought I got when I first see the pinky @escaping keyword when I was learning Swift. 😹😹😹

  • @ViktorJenei
    @ViktorJenei Рік тому

    Nice collection of topics. However, I would have added a local storage related topic too. As an interviewer myself, it's a very important topic. (UserDefaults, KeyChain, File System usage and DB basics [coredata or even realm]).

  • @rohitozvlogs1617
    @rohitozvlogs1617 8 місяців тому +1

    Just wow! 👏🏻

    • @seanallen
      @seanallen  8 місяців тому

      Glad you liked it :)

  • @dominicmm6
    @dominicmm6 Рік тому +1

    Combine videos please🙏🏼Edit: Buying interview course next week

    • @seanallen
      @seanallen  Рік тому

      Hey Dom! Hope you enjoy the job interview course! Combine seems to be a framework that Apple is leaving behind so I don't have plans create content about it.

    • @dominicmm6
      @dominicmm6 Рік тому +1

      @@seanallen good to know thanks!

    • @Денис-ж3ф5р
      @Денис-ж3ф5р Рік тому

      @@seanallen why do you think that they are leaving it behind??? SwiftUI uses it a lot. It’s faster than RXSwift. I don’t think they are leaving it.

  • @recoveryhubapp
    @recoveryhubapp Рік тому

    the BOSS

  • @viveksehrawat36
    @viveksehrawat36 Рік тому +1

    great

  • @Welcome_to_real_life_
    @Welcome_to_real_life_ Рік тому

    1k . like is from me.

  • @常仲伟
    @常仲伟 Рік тому +2

    To be honest, these are so simple that nobody even asks in China.

    • @link123triFoRce
      @link123triFoRce Рік тому +1

      What do they ask in China?

    • @Денис-ж3ф5р
      @Денис-ж3ф5р Рік тому +1

      Agree.

    • @常仲伟
      @常仲伟 11 місяців тому

      such as, the source code of runtime(gdc, weak reference...), crash report, memory monitor, system design @@link123triFoRce

    • @kav04
      @kav04 11 місяців тому

      agree, primitive questions. useless for real iOS dev interview

  • @steliostz2661
    @steliostz2661 Рік тому +1

    excellent video, thank you!

  • @salibhaldar6568
    @salibhaldar6568 Рік тому

    While Creating Generic Fetch Data Function, what’s the use of “For” parameter? It was not used inside.

    • @seanallen
      @seanallen  Рік тому

      That's an argument label. It just helps with readability of the function at the call site, it's not used inside the function. You can read more about them here -docs.swift.org/swift-book/documentation/the-swift-programming-language/functions/