딜리셔스 윈터 인턴십 기록 - iOS편

딜리셔스 윈터 인턴십에 참가한 iOS 개발자의 경험담을 들어봅니다.

이남준, 
윤조현
2022.04.19

딜리셔스에서는 2022년 1월부터 두 달 동안 윈터 인턴십을 진행하였습니다. iOS 파트에서는 두 분의 인턴이 들어와 인턴십 과정을 무사히 마치고 딜리언즈로 활약하고 있는데요, 준비 과정과 인턴십 기간 동안의 경험을 들어 보았습니다.

딜리셔스 윈터 인턴십 기록 - 희망편

안녕하세요, 2022년 1월부터 3월까지 두 달 간의 윈터코딩 인턴생활을 마치고 iOS 개발자로 근무 중인 이남준입니다.

제가 딜리셔스에 인턴으로 입사하고, iOS 개발자로서 첫 커리어를 시작하기까지 나름 독특한 과정을 겪어서 지원부터 입사까지의 과정을 남기고, 공유해 보고자 합니다.

입사는 2022년 1월이었지만, 딜리셔스와의 인연은 무려 2021년 상반기로 거슬러 올라갑니다.

2021년 4월 - 지원

당시에 대학교 4학년 1학기에 재학 중이던 저는, 저의 일상생활에서 가장 많이 사용하는 아이폰에서 직접 쓸만한 앱을 개발해보고 싶어서 2020년 11월쯤 iOS 개발 독학을 시작했습니다.

막상 시작은 했지만 주변에 iOS 개발을 공부하는 사람도 없었고, 학교 수업이나 외부 기관에서 교육을 수강한 적도 없다보니 쉽지만은 않았습니다. ‘지금 내가 공부하고 있는 방향이 맞는 걸까?’ 하는 의구심도 들었고, 실제 현업에서 개발하는 과정이 궁금하고 경험해보고 싶었기 때문에 개발자로 일하며 직접 부딪혀 볼 기회를 찾고있었습니다.

그리고 2021년 4월 중순쯤, 프로그래머스라는 개발자 채용 플랫폼에서 썸머코딩 인턴 프로그램 공고를 보게 되었습니다. 해당 공고를 통해 인턴으로 입사하면 정규직 전환까지 기대해볼 수 있는 프로그램이라 저에게 좋은 기회인 것 같았습니다. 신상마켓이라는 서비스를 들어본 적은 없었지만 평소 관심이 많았던 패션 관련 분야이기도 했고, 딜리셔스는 안드로이드와 iOS 개발자를 구분하여 채용하여 iOS 개발자로서의 전문성을 키우기에도 좋은 환경일 것 같아 주저 없이 딜리셔스에 iOS 개발자로 지원했습니다.

서류 접수 후 프로그래머스 공통 코딩테스트를 통과해야 기업에 지원서가 전달되는 방식이었는데, 무리 없이 코딩테스트를 통과하게 되어 설레는 마음으로 서류 검토 결과를 기다리게 되었습니다.

2021년 5월 - 첫 면접

얼마 지나지 않아 딜리셔스 피플팀으로부터 서류전형 합격 소식과 함께 인터뷰 일정을 어레인지 하기 위한 연락을 받았고, 5월 27일로 인터뷰 일정이 정해졌습니다.

개발 경험이 많지 않았던지라 처음에는 큰 기대 없이 지원했지만, 막상 코딩테스트에 이어 딜리셔스 서류전형까지 합격했다는 소식을 들으니 점점 기대감을 가지고 인터뷰를 준비하게 되었습니다.

드디어! 면접날이 되어 기대감과 긴장감이 섞인 묘한 기분을 안고 대학로 오피스에 도착했고, 대기실에서 잠시 긴장을 푼 뒤 큰 창이 있어 햇빛이 잘 드는 회의실에서, 편한 분위기로 인터뷰를 시작했습니다.

*인터뷰 당시 채용 담당자 분이 인턴십 프로그램 기록 차원에서 사진을 한 장만 남겨도 되겠냐는 요청을 주셔서 뒷모습을 제공(?)해드렸는데, 알고보니 제가 지금까지의 인턴십 전형 중 사진으로 남은 유일한 지원자였다고 합니다. 이정도면 운명인가요?

몇 초 간의 사진촬영을 마친 후 인터뷰어 세 분과 서로 간단하게 소개를 하고, 제 포트폴리오에 있는 내용들을 중심으로 공부해왔던 방식이나 프로젝트 경험에 대한 질문을 받았습니다. 그 때의 질문이 정확히 기억이 나지는 않지만, 프로젝트의 특정 부분을 구현한 방식이나 iOS/Swift에 대한 기본적인 지식, 그리고 저의 평소 공부법이나 취미 등과 관련된 질문을 받았습니다.

(제 취미는 포스트 하단에서 확인해 보세요!)

질문을 받을 때마다 단순히 “답은 A입니다” 하고 끝나는 것이 아니라, 제가 답변한 내용에 대해 추가 질문을 주시기도 하고, 관련된 대화를 계속 이어나가는 식으로 인터뷰가 진행되었습니다. 정해진 답이 없다보니 어떤 부분에서는 더 어렵게 느껴질 수도 있겠지만, 제 입장에서도 억지로 외운 답변이 아니라 지금까지 공부해오면서 고민했던 내용이나, 경험한 부분에 대해 솔직하게 공유할 수 있어서 오히려 편하게 이야기할 수 있었습니다.

딜리셔스 인터뷰 프로세스 중 특이했던 것은 딜리언즈톡인데요, 인터뷰에 이어서 인터뷰에는 참석하지 않았던 선배 딜리언즈와 정해진 주제 없이 자유롭게 이야기 나눌 수 있는 시간으로, 인터뷰 일정 어레인지 시 참석을 희망하는 경우 자리를 마련해주셨습니다. 인터뷰는 제가 해온 경험들을 공유하는 시간이었다면 딜리언즈톡은 반대로 취업, 그리고 개발자로서의 생활 등에 대해 제가 궁금했던 부분을 많이 질문하고 여러 조언도 들을 수 있는 시간이었습니다. 인터뷰 프로세스를 진행하며 딜리셔스에서 인턴십 전형에 대해 고민도 많이 하고, 후보자들에게도 많은 도움을 주는 형태로 준비해주셨다는 느낌이 들었습니다.

* 면접 후 작성한 개인 블로그 포스팅

인터뷰 이후 다시 한 번 딜리셔스 피플팀의 연락을 받았는데요, 아쉽게도 2021년 여름 인턴십에는 함께하기 어려울 것 같다는 소식이었습니다. 기다리던 소식은 아니었지만 당시 개인 블로그에 작성한 위의 글처럼 인터뷰 과정을 통해 부족한 부분이 무엇인지 파악할 수 있었던 것 자체로도 의미가 컸고, 이후에 명확한 방향성을 가지고 더 공부할 수 있는 동기부여가 되었던 경험이었습니다.

2021년 11월 - 두 번째 지원

몇 달 후인 11월, 프로그래머스에 딜리셔스 인턴십 공고가 다시 올라왔고, 첫 번째 지원에서 쓴맛을 한번 봤지만, 지난 채용 과정과 인터뷰에서 좋은 경험을 했고 다시 한 번 도전해보고 싶은 기업이어서 재차 지원을 했습니다.

지난 여름과 동일하게 코딩테스트와 서류 검토를 거치고 2021년 12월 15일 다시 한번 딜리셔스 대학로 오피스에 방문을 하게 됐습니다.

그래도 한 번 와봤던 곳이라고 조금은 익숙함을 느꼈고 마스크 때문에 거의 못 알아볼뻔 했지만 같은 팀원 분들과 인터뷰를 진행하게 되어서 지난 인터뷰 때보다 긴장이 많이 덜어졌습니다.

같은 분들과 진행하는 두 번째 인터뷰인 만큼 오히려 더 부담이 되는 것도 없지 않았는데요, 지난 경험을 떠올리며 더 많은 준비를 하고 참석하니 훨씬 수월한 분위기에서 진행되었던 것 같습니다. 인터뷰 말미에는 “지난 인터뷰 이후에 공부를 많이 한 것 같다”라는 기분 좋은 이야기도 들었습니다!

이번 인터뷰 때는 제가 포트폴리오에 첨부한 Github과 개인 블로그까지 살펴보고 와서 자세한 질문을 많이 해주셨고, 저도 준비해왔던 것들에 대해 편하게 대답하고 궁금했던 것들도 질문할 수 있었습니다. 인터뷰 이후에는 지난번과 동일하게 딜리언즈톡에서 개발자 분들과의 대화로 오피스 방문을 마무리했습니다.

2021년 12월 - 합격

인터뷰 참석 약 일주일 후 최종합격을 했다는 감격의 전화를 받았습니다. 이로써 딜리셔스에서 아마도 유일하게 불합격과 합격을 모두 경험한 인턴이 될 수 있었습니다.

2022년 1월 - 입사

드디어 2022년의 첫 월요일, 딜리셔스에 입사하게 되었습니다.

설레는 마음으로 첫 출근을 한지가 얼마 안된거 같은데 벌써 인턴도 마치고 정규직으로 회사를 다닌지 한 달이 넘어 제 사진이 떡하니 자리잡은 사원증과 함게 첫 명함도 생겼습니다!

만족스러웠던 채용 과정과 마찬가지로 인턴으로 근무하면서도 많이 배우고 성장할 수 있었고, 모두들 잘 챙겨주신 덕분에 즐겁게 회사 생활을 하고 있습니다. 앞으로 딜리셔스에서 해결해야 할 여러 과제를 앞장서서 해결할 수 있는 팀원으로 성장해 나가기를 기대하고 있습니다!

딜리셔스 윈터 인턴십 기록 - 더 큰 희망편

작고 소중한 거북목 진단 앱 만들기

안녕하세요, iOS 개발자 윤조현입니다. 딜리셔스에 지원하고 딜리셔스 기술블로그를 읽어보던 것이 엊그제 같은데 어느덧 제가 글을 쓰고 있다니 감회가 새롭군요. 저는 딜리셔스에서의 두 달 간의 인턴생활에 대해 적어보려고 합니다.

입사 첫 날

2022년의 첫 월요일, 두근두근하는 마음으로 딜리셔스에 첫 출근을 하였습니다. 첫 날에는 오리엔테이션이 있었습니다. 오리엔테이션에서는 회사와 서비스에 대한 소개를 듣고 인턴생활에 대한 가이드를 들었습니다. 그리고 CTO님이 오셔서 연구개발센터를 설명해주셨습니다. 그리고 사무실을 군데군데 안내해주시고 각자 자리로 인계해 주셨습니다.

자리로 가서 면접 때 이후로 다시 뵙게 된 iOS 파트 분들, 그리고 인턴 동기인 남준님과 인사를 나누고 자리에 놓여있는 딜리셔스 후드와 웰컴키트를 확인하고 받은 노트북에 업무환경을 세팅하기 시작했습니다.

* 화각이 소심해 보인다면 맞습니다. 뉴비라서 아주 소심하게 찍었습니다 ㅎㅎ

* 개발환경 세팅 중에 찍은 사진. 역시 소심한 화각입니다.

그러다 보니 어느덧 점심 시간이 되어 파트 분들과 점심 식사를 하고 오후에는 클라이언트 개발팀 분들과 티타임을 하면서 인사를 나누는 시간을 가졌습니다. 그리고 자리로 돌아와 인턴과제에 대한 공지사항을 전달 받고 다시 Xcode를 설치하고 인턴계약서를 작성하고 했더니 어느덧 저녁 여섯 시가 되었습니다. 인턴 기간 동안은 10시 출근 19시 퇴근하는 스케줄이었지만 입사 첫 날은 1시간 조기 퇴근의 혜택이 있어 빠른 퇴근을 하였습니다.

인턴 과제

인턴 기간 동안의 평가는 주어진 과제를 수행한 내용을 평가하고, 대표님과의 정규직 전환 면접을 통해 전환이 결정되는 절차로 진행되었습니다.

주제 선정

직무마다 인턴 과제는 다르게 진행되었습니다. 제가 속한 iOS 파트에서는 Alamofire, RxSwift, Kingfisher, SnapKit, Then, ObjectMapper 등 딜리셔스에서 신상마켓 iOS앱을 만들 때 자주 사용하는 라이브러리를 사용해 만들고 싶은 앱을 만드는 것이 인턴과제였습니다.

따라서 처음 일주일 간은 상위기획과 상세기획을 차례로 준비하고 발표해 피드백을 받으면서 어떤 서비스를 만들지 기획하고 어떤 UI를 사용할지 구체화시켰고, 이후의 4-5주 간의 기간은 기획한 내용을 바탕으로 개발을 진행했습니다.

* 상세 기획의 와이어프레임 중 일부.

어떤 주제로 과제를 진행할지 고민하며 여러 오픈 API를 찾아보다 이미지를 촬영해 POST하면 response로 이미지에 있는 사람의 신체 포인트를 좌표값으로 받을 수 있는 Kakao Pose API를 발견하였습니다.

이를 보고 거북목 진단을 떠올렸습니다. 사진을 촬영해 이미지를 기준으로 거북목인지 아닌지 진단할 수 있다면 재미있을 것 같았습니다. 여기서 기능을 확장해 거북목 진단 및 개선을 할 수 있는 헬스케어 앱인 이른바 turtle을 기획하고 개발하게 되었습니다.

과제 내용

과제에 대해 자세히 이야기하면 하나의 글을 써야 할 것 같아 간략하게 화면 위주로 적어보았습니다. 제가 만든 앱의 화면 구성은 다음과 같습니다.

거북목 진단 탭에서는 앨범의 이미지를 선택하거나 카메라로 바로 촬영할 수 있고, 이미지를 API에 POST한 response에서 얻은 오른쪽 귀와 오른쪽 어깨의 좌표를 토대로 arctan 값을 사용해 각도를 계산하였습니다.

이를 기반으로 목과 어깨가 이루는 각도가 15도 이상일 경우 거북목으로, 그렇지 않을 경우 정상 범주로 판단하도록 하는 로직으로 거북목을 진단했습니다. 또한 좌표값을 기반으로 어깨와 오른쪽 귀를 붉은 선으로 잇는 선을 추가한 상세 이미지와 진단한 각도를 알려주어 구체적인 정보를 제공하고자 하였습니다. 진단한 결과는 Firebase Storage에 저장해 두어 향후 진단기록을 모아볼 수 있도록 했습니다.

목 건강 관리 탭은 segmented control로 스트레칭과 진단기록을 각각 가로 스크롤과 세그먼트 버튼을 터치해 이동할 수 있도록 UI를 구성했습니다. 먼저 스트레칭 세그먼트에서는 거북목에 좋은 여러 스트레칭을 소개하고 스트레칭을 한 횟수를 기반으로 세상에 찌든 거북이 또는 몸이 아주 가벼운 거북이를 보여주어 사용자의 스트레칭을 열심히 하도록 동기부여를 하고자 했습니다.

스트레칭의 각 셀을 클릭하면 스트레칭 방법과 함께 타이머를 실행할 수 있고, 스트레칭을 완료하면 애니메이션과 함께 스트레칭을 완료했다는 화면을 볼 수 있고 스트레칭 횟수가 한 번 증가하게 됩니다.

마지막으로 진단기록 세그먼트에서는 collectionView로 FireStore에 저장한 이미지를 보여주고 각각의 셀을 클릭할 경우 진단 일자 및 거북목 각도 등의 상세 진단 결과를 확인할 수 있습니다.

우여곡절

인턴 과제를 하면서 어려웠던 부분이 몇 가지 있었는데 그 중 하나는 사용해보지 못했던 라이브러리를 과제 중 빠르게 익혀야 했다는 점입니다. 인턴기간 이전에는 Alamofire 대신 URLSession , ObjectMapper 대신 Codable 을 사용했었고, RxSwift 대신 프로퍼티 옵저버를 사용한 바인딩을 사용했었기 때문에 새로 적응하는데 시간이 필요했습니다. 특히 Rx의 다양한 활용을 익히는 데 시간을 꽤 투자해야 했습니다. 그러나 돌이켜 생각해 보면 인턴 기간 동안 빠르게 배웠기 때문에 수월하게 온보딩할 수 있었던 것 같습니다.

또한 과제를 하면서 어려웠던 부분은 기획 및 디자인이었습니다. 인턴 과제가 자유 주제이다 보니 기획부터 많은 고민을 했습니다. Open API를 사용하다 보니 기획안을 떠올리다가도 API가 원하는 값을 내려주지 않는 경우가 많아, api가 제공하는 기능에 기획을 끼워맞추는 구상을 하기도 했고, Kingfisher 라는 이미지 캐싱 라이브러리를 활용하기 위해 다량의 이미지가 필요한 앱을 기획하게 되었는데 처음에는 API에서 여러 이미지를 내려주는 경우만 생각해 마땅한 기획안이 떠오르지 않았습니다. 또한 디자인도 쉽지 않았습니다. 흰 것은 화면이요, 채워야 하는 것 또한 화면이었습니다. 상용서비스를 참고하면서 간단한 디자인적 요소만 넣어 만들어 보았지만 디자인은 어려웠습니다.

좋았던 점

앞서 언급한 바와 같이 인턴 과제가 자유 주제이기 때문에 기획이나 디자인 측면에서 어려운 점이 많았지만 원하는 주제를 선택한 만큼 앱이 모습을 갖춰갈수록 재미있게, 애착을 갖고 과제를 수행할 수 있었습니다.

두 달 간의 인턴생활을 하면서 정말 많이 배웠습니다. iOS 파트에서는 인턴 과제 기간 동안 매주 화요일마다 코드 리뷰를 받는 시간이 있었습니다. 코드 리뷰를 받으면서 협업할 때 어떻게 코드를 짜는 것이 좋을지, 유지 보수하기 용이한 코드를 짜기 위한 조언을 해 주셔서 보다 읽기 편한, 유지보수하기 편한 코드를 위해 더욱 신경을 쓰게 되었습니다. 또한 기존 코드보다 더 나은 방안을 적극적으로 제안해주셔서 많은 것을 배울 수 있었습니다. 또한 실제 상황에서 발생할 수 있는 예외 경우를 다양하게 제시해 주셔서 사용성을 개선하기 위해 개발자로서 고려해야 할 부분을 생각해볼 수 있었습니다.

또한 두 달 간 낯 가리는 쑥맥 인턴을 잘 받아주시고 지원을 아끼지 않았던 iOS 파트, 그리고 클라이언트개발팀 분들 덕분에 즐거운 인턴생활을 할 수 있었습니다. 인턴 기간 면담 등을 통해 지원이 필요한 부분은 있는지 신경 써 주셨고 평소에도 신경을 써 주셔서 감사했습니다. 편하고 유쾌하게 대해주셔서 많이 웃으면서 다녔고, 좋은 팀원 분들과 입사 동기 분들이 있어서 앞으로 여기서 일하는 모습을 자연스럽게 그려 나가며 인턴 생활을 무탈하게 마무리할 수 있었습니다.

마무리

두 달간의 인턴십 기간 동안의 생활을 적어보았습니다. 인턴십을 통해 혼자서는 배울 수 없는 다양한 경험을 쌓을 수 있어 유익한 시간이었습니다. 어느덧 정규직으로 전환된 이후로 한 달 반 정도가 지났네요. 이제는 실제 프로젝트에 조금씩 참여하고 동기들과 스터디도 진행하면서 많은 것을 배워나가고 있습니다. 앞으로도 초심을 잃지 않고 빠르게 배워나가며 신상마켓을 비롯한 딜리셔스의 서비스를 만들어 나갈 생각입니다.


딜리셔스는 다가오는 6월 초, 대학로에서 강남권으로 오피스 이전을 앞두고 있는데요, 현재 채용 중인 2022년 썸머코딩 인턴은 새롭게 오픈하는 강남 오피스로 첫 출근을 하게 됩니다. 따끈따끈한 ☆신상☆ 오피스에서의 근무, 기대되지 않으시나요?!

이남준

딜리셔스 iOS 개발자

"주기적으로 취미를 발굴하는 게 취미인 개발자입니다."

윤조현

딜리셔스 iOS 개발자

"누워 있기, 달리기, 그리고 개발을 좋아합니다."