iOS Dev Job Interview - Must Know Topics

  Рет қаралды 73,551

Sean Allen

Sean Allen

Күн бұрын

I put together a collection of my best iOS Developer job interview topic videos to help you prepare for your interview. It's impossible to know what questions will be asked during an interview, but these topics are VERY commonly asked about:
Topics covered:
- Network Calls
- Classes vs. Structs
- Generics
- Closures
- Filter, Map, Reduce
- Array vs. Set
- Unwrapping Optionals
- Unit Tests
- Singletons
- Dependency Injection
- Delegates & Protocols (UIKit)
- View Lifecycle (UIKit)
- Concurrency & Threading
- ARC & Retain Cycles (UIKit)
My iOS Dev Courses:
seanallen.teachable.com/
Twitter:
Sean Allen - / seanallen_dev
Hired.com:
hired.com/x/1n01g
Book and learning recommendations that help out the channel if you decide to purchase (Affiliate Links):
Paul Hudson's Hacking With Swift:
gumroad.com/a/762098803
Donny Wals - Combine:
gumroad.com/a/909014131
Mark Moeyken’s SwiftUI Books:
www.bigmountainstudio.com/swiftui-views-book/fzc51
Objc.io Books (Thinking in SwiftUI & Advanced Swift):
gumroad.com/a/656585843
Timestamps:
0:00 - Network Calls
24:56 - Classes vs. Structs
31:22 - Generics
41:01 - Closures
54:31 - Filter, Map, Reduce
1:07:15 - Array vs. Set
1:15:57 - Unwrapping Optionals
1:29:18 - Unit Tests
1:45:56 - Singletons
1:50:56 - Dependency Injection
1:56:56 - Delegates & Protocols (UIKit)
2:06:47 - View Lifecycle (UIKit)
2:13:49 - Concurrency & Threading
2:21:12 - ARC & Retain Cycles (UIKit)
#swift #softwaredeveloper #iosdeveloper

Пікірлер: 121
@seanallen
@seanallen Жыл бұрын
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 8 ай бұрын
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 Жыл бұрын
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 Жыл бұрын
I appreciate that! Glad you enjoy the content 😀
@clintonagyemangduah2000
@clintonagyemangduah2000 Жыл бұрын
Bro. Does meta use SwiftUI or Objective-c?
@browhocodes
@browhocodes Жыл бұрын
@@clintonagyemangduah2000 objective-c!
@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 :)
@mr__khan5251
@mr__khan5251 10 ай бұрын
You are awesome man, you explain things so well.
@wizard19900509
@wizard19900509 6 ай бұрын
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).
@samdiablo0
@samdiablo0 10 ай бұрын
I have an interview coming up and this was exactly what I was looking for! Thank you for this detailed video!
@user-yd9xy3rb4x
@user-yd9xy3rb4x 10 ай бұрын
Detailed???
@akankshapakhale2965
@akankshapakhale2965 11 ай бұрын
Hey Sean video really helped me to understand the swift concept deeper and really appreciate your hard work for spreading knowledge
@user-pu3gk1sy7r
@user-pu3gk1sy7r 4 ай бұрын
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 3 ай бұрын
Happy to hear it was helpful and you finally understood those network calls!
@dk-sky3820
@dk-sky3820 11 ай бұрын
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 11 ай бұрын
Great timing then. Best of luck on the interview!
@favoritetroll9774
@favoritetroll9774 2 ай бұрын
share your saved links just in case it can be useful to others like me etc
@ejolsson
@ejolsson 8 ай бұрын
Thanks Sean! Keep up the great work!
@seanallen
@seanallen 8 ай бұрын
Wow, I appreciate the generosity! Thanks!
@TtnKolonyasi
@TtnKolonyasi 2 ай бұрын
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 2 ай бұрын
I appreciate the kind words :). Best of luck in the interview!
@jasongoodrow949
@jasongoodrow949 5 ай бұрын
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 5 ай бұрын
Glad it was helpful!
@binhhuynh5005
@binhhuynh5005 Жыл бұрын
Nice video. I would add a bit on sync vs async in Concurrency session
@sarathkumarsankar5090
@sarathkumarsankar5090 Жыл бұрын
I am so grateful. thank you, Sean.
@seanallen
@seanallen Жыл бұрын
You're welcome :)
@indianfyre
@indianfyre Жыл бұрын
Amazing resource right here, thanks Sean!
@seanallen
@seanallen Жыл бұрын
My pleasure!
@ashok2089
@ashok2089 9 күн бұрын
Thanks Sean, It's helpful!
@misran449
@misran449 Жыл бұрын
Man Sean!!! dude thank you!!
@seanallen
@seanallen Жыл бұрын
Happy to help!
@nithinyel3836
@nithinyel3836 Жыл бұрын
the most awaited video !!
@seanallen
@seanallen Жыл бұрын
Hope you enjoy!
@dawei84_dev
@dawei84_dev Жыл бұрын
This is awesome, thank you Sean!
@seanallen
@seanallen Жыл бұрын
Hope it helps!
@rafaelfelipe2886
@rafaelfelipe2886 Жыл бұрын
this is gold!!! thnks!!!
@seanallen
@seanallen Жыл бұрын
Glad you liked it!
@hao-bz
@hao-bz Жыл бұрын
super helpful stuff!!!
@clon-e6096
@clon-e6096 Жыл бұрын
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.
@TechRagh
@TechRagh Жыл бұрын
Thanks Sean! ❤
@seanallen
@seanallen Жыл бұрын
You're welcome!
@theiosdeveloper555
@theiosdeveloper555 Жыл бұрын
great video, thanks for sharing!!
@indianstate14
@indianstate14 7 ай бұрын
This content is Gold ❤
@seanallen
@seanallen 7 ай бұрын
Thanks for the kind words and I'm glad you enjoy it!
@tracytim
@tracytim 5 ай бұрын
Thanks, Sean. 👍🏼
@jasonjackson55
@jasonjackson55 7 ай бұрын
41:06 who are we @escaping from 😂 this made my day 😂
@tommytexter4054
@tommytexter4054 10 ай бұрын
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 10 ай бұрын
Best of luck! Let me know how it goes.
@shubham-itachi
@shubham-itachi 8 ай бұрын
Did it go well bro
@tommytexter4054
@tommytexter4054 8 ай бұрын
@@shubham-itachi nah, the interviewer was a jerk but i am having another next week
@shubham-itachi
@shubham-itachi 8 ай бұрын
@@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 4 ай бұрын
@@tommytexter4054 how were all your interviews going? did you land an ios engineer role?
@mateo5677
@mateo5677 3 ай бұрын
Sean subtlety flexing his Porsche 911 in his teachings is iconic 😅
@seanallen
@seanallen 3 ай бұрын
😏
@steliostz2661
@steliostz2661 8 ай бұрын
excellent video, thank you!
@seanallen
@seanallen 8 ай бұрын
Glad you liked it!
@NomadicDmitry
@NomadicDmitry Жыл бұрын
I'm a Test Engineer, but I'm really interested into the iOS. Thanks!
@seanallen
@seanallen Жыл бұрын
Happy to help!
@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
@rohitozvlogs1617
@rohitozvlogs1617 4 ай бұрын
Just wow! 👏🏻
@seanallen
@seanallen 3 ай бұрын
Glad you liked it :)
@akashskumar6389
@akashskumar6389 4 ай бұрын
soooo geateful for creating this compilation
@seanallen
@seanallen 4 ай бұрын
Happy to help!
@ask1218
@ask1218 5 ай бұрын
This is amazing
@seanallen
@seanallen 4 ай бұрын
Glad you liked it!
@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.
@yisamulin5636
@yisamulin5636 Жыл бұрын
Nice vidio❤ thank you very much!
@seanallen
@seanallen Жыл бұрын
Glad you liked it!
@miketechdev8866
@miketechdev8866 10 ай бұрын
great video
@seanallen
@seanallen 10 ай бұрын
Thanks!
@adhamraouf6656
@adhamraouf6656 6 ай бұрын
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.❤❤
@zapakitul
@zapakitul Жыл бұрын
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 Жыл бұрын
Happy to hear you enjoy the content even though you aren't into iOS Dev 😀
@viveksehrawat36
@viveksehrawat36 Жыл бұрын
great
@SlavisWolf
@SlavisWolf 8 ай бұрын
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 8 ай бұрын
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 KZfaq has playback speeds. Glad you enjoyed the video!
@LexicalNoScope
@LexicalNoScope Жыл бұрын
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!
@recoveryhubapp
@recoveryhubapp 10 ай бұрын
the BOSS
@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 Жыл бұрын
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 Жыл бұрын
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 KZfaq 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.
@salibhaldar6568
@salibhaldar6568 7 ай бұрын
While Creating Generic Fetch Data Function, what’s the use of “For” parameter? It was not used inside.
@ghreacts
@ghreacts 6 ай бұрын
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?
@user-yd9xy3rb4x
@user-yd9xy3rb4x 10 ай бұрын
Looks like a list for interns/juniors if you get rid of generics
@seanallen
@seanallen 10 ай бұрын
That because it is. It’s meant to help people get their first iOS dev job.
@user-yd9xy3rb4x
@user-yd9xy3rb4x 10 ай бұрын
@@seanallen that explains it ☺️
@bruhmoment3731
@bruhmoment3731 2 ай бұрын
how long until prompting becomes an important part of coding interviews?
@kstackz8249
@kstackz8249 Жыл бұрын
Do you think CI/CD, jenkins, etc is needed? or a plus
@user-yd9xy3rb4x
@user-yd9xy3rb4x 10 ай бұрын
A huge plus for a senior, even though it depends on a team you work on.
@Tyheir
@Tyheir 8 ай бұрын
Why does a network call take so many lines of code
@user-yl5ni9bs5g
@user-yl5ni9bs5g Жыл бұрын
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!
@seanallen
@seanallen Жыл бұрын
Lol, my dream car.
@ViktorJenei
@ViktorJenei 11 ай бұрын
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]).
@spikesagal
@spikesagal 8 ай бұрын
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 8 ай бұрын
Oh nm I think I know what you meant: look up by value, not by index.
@kav04
@kav04 6 ай бұрын
its now a ioS dev interview preparations , these are trivial tutorials
@seanallen
@seanallen 6 ай бұрын
Disagree. These are fundamental topics & concepts that are always asked about in Jr. iOS dev interviews.
@nickpavlov4012
@nickpavlov4012 Жыл бұрын
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 Жыл бұрын
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.
@user-yd9xy3rb4x
@user-yd9xy3rb4x 10 ай бұрын
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 10 ай бұрын
@@user-yd9xy3rb4x спасибо Денис 💪
@dominicmm6
@dominicmm6 Жыл бұрын
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 Жыл бұрын
@@seanallen good to know thanks!
@user-yd9xy3rb4x
@user-yd9xy3rb4x 10 ай бұрын
@@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.
@Welcome_to_real_life_
@Welcome_to_real_life_ 9 ай бұрын
1k . like is from me.
@user-lv8jm7bv9w
@user-lv8jm7bv9w Жыл бұрын
To be honest, these are so simple that nobody even asks in China.
@link123triFoRce
@link123triFoRce Жыл бұрын
What do they ask in China?
@user-yd9xy3rb4x
@user-yd9xy3rb4x 10 ай бұрын
Agree.
@user-lv8jm7bv9w
@user-lv8jm7bv9w 6 ай бұрын
such as, the source code of runtime(gdc, weak reference...), crash report, memory monitor, system design @@link123triFoRce
@kav04
@kav04 6 ай бұрын
agree, primitive questions. useless for real iOS dev interview
@salibhaldar6568
@salibhaldar6568 7 ай бұрын
While Creating Generic Fetch Data Function, what’s the use of “For” parameter? It was not used inside.
@seanallen
@seanallen 7 ай бұрын
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/
Intro to Unit Testing in Swift
17:34
Sean Allen
Рет қаралды 31 М.
iOS Developer Mock Interview | Tech Round (Round-2)
31:37
Я нашел кто меня пранкует!
00:51
Аришнев
Рет қаралды 3,9 МЛН
KINDNESS ALWAYS COME BACK
00:59
dednahype
Рет қаралды 119 МЛН
Swift API Calls for Beginners (Networking) - Async Await & JSON
25:35
Most Tech Interview Prep is GARBAGE. (From a Principal Engineer at Amazon)
12:57
Swift Closures Explained
14:23
Sean Allen
Рет қаралды 60 М.
iOS Developer Mock Interview | Exploration Round
14:09
iCode
Рет қаралды 8 М.
Мок-собеседование iOS разработчика
1:17:34
iOS Такой • IOS Разработка • IT Подкасты
Рет қаралды 10 М.
Урна с айфонами!
0:30
По ту сторону Гугла
Рет қаралды 8 МЛН
После ввода кода - протирайте панель
0:18
Up Your Brains
Рет қаралды 1,1 МЛН
Как слушать музыку с помощью чека?
0:36