View
iOS 취업 공고의 자격요건과 우대요건들을 간략하게 정리해봤다! 다른 취준생들의 시간을 아껴주는 포스트가 되기를 바란다 :)
올해 안에 졸업을 하기 위해서는 나는 올해 하반기에 인턴을 진행해야 한다 ㅜㅜ
막상 iOS 인턴을 지원해보려고 하니, 나에게 프로젝트에 대한 경험은 몇 개 있지만 기술력에 있어서는 경쟁력이 있다고 생각이 들지 않았다. 기획이나 디자인 과정에 참여하고 협업을 할 줄은 알지만, 막상 비동기를 활용한 개발을 능숙하게 처리한다거나 Restful api를 활용한 개발을 진행하지는 않았기에 취준에 어려움이 있을 것 같다는 생각이 들었다. iOS 분야는 인턴이나 신입 포지션도 잘 없는데, 몇 없는 좋은 기회들을 날려버리기는 너무 아쉽다는 생각에 남은 기간동안 내가 준비할 수 있는 부분들을 최대한 챙겨보려고 계획하고 있다.
우선은 회사에서 원하는게 뭔지 파악하기 위해 공고를 쭉 살펴봤다. 개발자 채용 시장에 대해 아직 잘 알지 못하기 때문에, 특별한 기준 없이 눈에 들어오는 회사들을 골랐다. 공고 확인을 위해서 원티드, 프로그래머스, 그룹바이 를 확인했고, 아래 회사들의 공고를 확인했다.
[코콤, 일루미나리안, 버킷플레이스, 플로, 와이어트, 파수, 팀블라인드, 한국전자인증, 넛지헬스케어, 세무통, 번개장터, 브이피, CJ올리브영, 한빗코코리아, 우아한형제들, 리디]
인턴 공고는 전멸이라, 경력직 공고들을 15개 정도 확인해보고 아래처럼 Numbers에다가 정리를 했다.
그리고, 공고에서 나온 키워드들의 언급 횟수를 카운트 하여 표로 정리해보았다.
기술 스택
우선 2회 이상 언급된 기술스택을 내림차순으로 나열해봤을 때, 다음의 키워드가 자주 등장했다.
RxSwift, ReactorKit, Combine / 아키텍처 / Rest API / Fastlane, Xcode Cloud / SwiftUI
회사에서는 비동기에 대한 사례, 다양한 다키텍처 (주로 MVVM), CI/CD 툴 등에 대한 스택을 요구하고 있다. 의외로 UIKit을 기술 스택이 적어둔 기업은 없었다. 아무래도 UIKit이 기본이고 추가로 SwiftUI를 요구하는 것이겠지…
자격요건
자격요건에서도 RxSwift, REST API, 아키텍처에 대한 내용은 상위권으로 올라왔다. 그런데 의외로 “커뮤니케이션이 원활한 사람”, “UX/UI를 고려하는 사람” 이 많이 언급되었다. 그 다음으로는 코드리뷰, 문제 해결 능력 등이 포함되어 있다. 자격요건에서도 정량적인 기술 뿐만 아니라 이런 정성적인 ‘소통’을 중요시한다는 걸 알았다. 이걸 어떻게 회사에 보여줄 수 있는가는 되게 어려울 것 같은데, 이런 것들을 보여주기 위한 방법들이 뭐가 있는지 더 찾아봐야 할 것 같다.
우대사항
우대 사항에서 상위로 올라온건 테스트코드와 해당 공고에 대한 도메인 지식, CI/CD 와 개발 프로세스 및 서비스 개발 경험이다. iOS에서 프로젝트로 개발을 진행할 때에는 테스트코드를 작성하고 검사하는 방식을 거의 사용하지 않았었는데, 이 수치에서 준비를 해야한다는 느낌이 확 든다. CI/CD도 마찬가지로, 한 번도 다뤄본 적이 없는 영역이지만 앞서 Xcode Cloud나 fastlane 같은 툴이 언급되는걸 보면 반드시 알아둬야할 부분으로 보인다.
이외에도 서비스 개발 경험, 업무 프로세스 개선 경험, 성능 최적화에 대한 고민 등이 포함되어있다.
앞으로 준비할 것
- 서비스 개발 경험
- 내가 프로젝트 진행 경험은 그래도 몇 번 가지고 있다 생각했는데, 유지보수에 대한 경험은 거의 없다시피하고, 캡스톤으로 진행했던 서비스 역시 출시를 위한 준비 기간이 질질 끌리면서 출시하지 못하고 있는 상황이라 여기 부분에서 내가 유리한 포인트가 아니라고 생각이 든다. 반드시 앱스토어에 출시하고 유지보수 경험을 만들어봐야 할 것 같다. 거기에서 배우는게 정말 많을텐데, 놓칠 수 없지!
- 아키텍처
- MVVM, MVP, TCA, Modular Architecture, Clean Architecture 같은 다양한 아키텍처들이 공고에 작성되어 있었다. MVVM과 클린아키텍처는 이제 슬슬 감을 잡아가는데, 다른 아키텍처들에 대한 공부 - 특히 swift로 개발하면서 해당 아키텍처를 적용하는 방법에 대해 공부를 해보고싶다.
- RxSwift, ReactorKit, Combine
- 비동기 처리에 대한 경험이 필요하다. 사실 iOS 앱개발을 하면서 서버를 사용하는 앱을 만들지 않았다보니 비동기처리가 크게 필요하지 않아 공부를 못했던 부분인 것 같다. 이번 프로젝트에서 플러터를 사용하면서 조금씩 비동기 처리에 대해 배우고 있는데, iOS에서 이를 적용하는 방법을 배우고 개인 프로젝트에 적용할 필요성을 느꼈다.
- 테스트코드
- 이번에 야곰 강의를 들으면서도 느꼈지만, 확실히 잘 쓰면 유용한 기능일 것이다. 공고 중에서는 “테스트코드는 필수” 라는 슬로건을 작성한 회사도 있을 정도로 다양한 기업에서 이 테스트코드 작성을 중요하게 생각하는 것 같다. 한 번 맛을 봤던 부분인 만큼, 테스트코드를 작성하는 것도 빠지지 않고 챙겨봐야 할 것 같다.
- CI/CD
- 말로만 듣던 CI/CD. 지금까지 한 번도 적용해보지 않았었는데, 사실상 내가 진행했던 프로젝트에서 배포를 자주 할 일이 없다 보니 발생한 문제인 것 같다. 나름 높은 순위로 언급되는 것을 봤을 때, 회사에서 실무 레벨에서 작업을 할 때 반드시 이해가 필요한 영역인 것 같다. Fastlane과 Xcode Cloud, 공부해두자!!
- RESTful API
- 사실 지금도 Restful API가 뭘 말하는건지 잘 모르겠다 ㅋㅋㅋ. 공고에서 의외로 많이 나와서 살짝 당황했다. 요것도 여기저기에서 자주 나오는걸 보면 내 생각보다 유명한 개념일 것 같은데, 보면 또 금방 배우지 않을까 싶다.
- 그외
- 위에는 나오지 않았지만, 코딩 테스트 준비를 위한 Swift 알고리즘 공부도 빼두면 안된다. 잊지말자!
- 나의 커뮤니케이션, 협업 능력에 대해 전달할 방법 찾아보자.
- 양질의 코드리뷰를 남기기 위해서 내가 어떤 노력을 기울이고 있는지, 어떻게하면 더 좋은 코드리뷰를 주고받을 수 있을지 고민해보자.
적어놓고 보니 인턴을 신청하려는 3-4개월 안에 내가 배워야할게 산더미처럼 많은 것 같다. 그 동안에 플러터 프로젝트로 끝내버려야 하고, 이번학기 남은 과제에 기말고사까지 쳐내야하는데, 가능할지는 잘 모르겠다. ㅋㅋㅋ 완벽하게 하는 것보다 듬성듬성이라도 대략적인 내용을 다 파악하는게 더 중요하다고 생각하고 준비해봐야겠다. 내가 저걸 다 할 줄 알면 경력직이지, 신입이겠어?
이렇게 정리해두고 나니깐, 갑자기 막 열정이 불타오르는 것 같다!! 인프런이랑 유데미에서 강의도 좀 찾아보고, 토이프로젝트도 몇 개 구해보면서 실력을 기르기 위해 노력해봐야겠다. 자 드가자!!🔥🔥
'Develop > iOS 개발' 카테고리의 다른 글
[iOS] Apple MVC ≠ Standard MVC (0) | 2024.05.07 |
---|---|
[iOS] SwiftUI에 MVVM이 적합하지 않다고? (0) | 2024.05.05 |
[Swift] 스위프트는 Protocol-Oriented Programming 을 지향한다! (0) | 2024.03.24 |
[Swift] DateFormatter는 매번 생성하지말고 재활용하자 (0) | 2024.03.17 |
[Swift] Array를 ContiguousArray로 바꿔서 최적화 (0) | 2024.03.16 |