Posts [회고] 하이퍼커넥트 인턴 후기
Post
Cancel

[회고] 하이퍼커넥트 인턴 후기

하이퍼커넥트 인턴부터 전환까지

이 글을 왜 적고 있는가

이전글인 주니어 개발자의 퇴사 에서 언급했던 스타트업 H사는 제목에서 짐작할 수 있듯이 하이퍼커넥트이다. 이전글에서는 쓰지 못했던 하이퍼커넥트 인턴과 전환까지의 과정인 코딩테스트, 면접, 인턴 생활기들을 기록해보고자 한다. 또한 불확실한 상황에서 정규직을 포기하고 인턴을 선택한 회사였고 인턴십임에도 불구하고 배운점이 굉장히 많았기 때문에 이전 글과 동일하게 나중의 내가 나태해졌을 때에 이 순간을 잊지 않기 위해 기록하고자 한다.

(물론 하이퍼커넥트는 이전 회사와는 개인적으로 생각해보았을 때 훨씬 좋은 회사이긴 하다. 혹시나 이 글을 읽고 나처럼 극단적인 선택을 한 후 후회는 하지 말기를 바란다. 반드시 후회가 없다라고 생각을 했을 때 도전하는 것을 추천한다.)


코딩 테스트

솔직히 말하자면 난이도는 그렇게 높지 않았던 것 같다. (참고로 나는 알고리즘을 굉장히 못한다.)

총 3문제가 나왔고 3문제 모두 풀었다. 난이도가 높지 않은 문제들이었지만 효율성을 고려해야 하는 문제도 있어 그렇게 막 쉬운 것도 아닌 것 같다.

문제를 모두 풀었기 때문에 면접은 갈 수 있을 것 같아 면접을 준비했다. (이때 왜이렇게 미친 자신감을 가졌는지 모르겠다. 지금 생각해보니 코딩 테스트에서 떨어지지 않아 천만다행인 것 같다.)



hyperconnect_intern_interview

화상 면접

코로나로 인해 하이퍼커넥트는 재택을 하고 있었고 그로인해 면접 또한 화상 면접으로 진행되었다.

구글 MEET 를 사용해서 면접을 봤고 면접 시간은 30분 내외로 다른 회사에 비해서는 짧은 편에 속했다. (기억하기로는 한.. 25분..? 정도 본 것 같다.)

면접관은 팀리더 1분과 멘토 1분으로 2:1로 면접을 진행했다. 짧은 면접 시간 탓인지 기본적인 CS 부터 안드로이드에 대한 전문 지식까지 꽤 많은 질문들이 우다다다- 쏟아졌다.

그중에는 대답을 한 것도 있었고 못한 것도 있었다. 모르는 것에 대해서는 시간 끌지 않고 모른다고 대답하였고 오히려 질문에 대한 답을 알려달라고 했다. (당연히 그에 대한 답을 주셨다.)

면접은 늘 그렇듯.. 긴장 속에서 하루하루를 살았다. 그렇게 결과는..

hyperconnect_intern_nice

제가 더 감사하죠… 🙇‍♂️ x 100000

나는 하이퍼커넥트의 인턴이 되었다.



최고..? 최고..!

내가 하이퍼커넥트에 인턴으로 입사를 하고 처음으로 입이 쩍- 하고 벌어졌던 순간은 장비를 받았을 때이다.

주변 친구들에 말에 의하면 묻지도 않고 따지지도 않고 맥을 건내준다는 N사, K사의 이야기를 듣고 부러웠었는데 하이퍼커넥트도 역시 묻지도 않고 따지지도 않고 맥북을 건내줬다. 무려 16인치.. i9.. 램은 32GB..

장비를 받고 지인들에게 말했다.

“나.. 이 회사에 대한 신뢰도와 충성심이 상승했어..”



인턴의 시작 - 과제 편

일단, 나의 동기가 된 분들은 10명이 채 되지 않는 인원이었다. 그중에서도 나와 같은 팀의 동기는 단 1명이었다.

나와 동기, 이 둘은 인턴십 과제에 대한 요구사항을 받고 처음부터 ‘쉽지 않을 것 같다’ 라고 생각했다. (나만 그렇게 생각한 것일 수도 있다.) 자세히는 말을 할 수 없으니.. 간략하게 말 해보자면 MVVM 구조, Repository 패턴, RxJava 사용 등 최신 기술 스택을 사용해 프로젝트를 하는 과제였다.

이와 동시에 앞서 말한 기술들을 학습한 내용을 공유 및 발표를 하는 과정이었다. 또한 과제에 대한 코드 리뷰는 나와 같은 과제를 받은 동기와 서로 PR을 날려 서로 코드 리뷰를 받는 방식으로 진행했다.

나는 이전 직장에서 Only Java (물론 Kotlin의 중요성을 느끼고 개인적으로 학습을 지속해왔다.)를 사용했고 아키텍처 패턴은 MVP만 신규 프로젝트에 도입해봤을 뿐 MVVM 사용 경험은 전무했다. 단순 UI 개발자였기 때문에 Repository 패턴을 사용해본 경험 역시 없었고 데드라인을 맞추기 위해 급급해 DI 프레임워크인 Dagger2, RxJava 등.. 요새 트렌디한 기술들에 대한 사용에 대한 경험이 없었다.

호기롭게 퇴사를 하며 내가 목표했던 기술 스택은

  1. Kotlin을 Java 처럼 자유롭게 쓸 수 있도록
  2. RxJava 혹은 코루틴을 습득해 비동기 처리를 잘 할 수 있도록
  3. MVVM 패턴을 통해 옵저버블한 UI를 짤 수 있도록

이었다.

놀랍게도 개인적으로 쌓고자했던 기술 스택과 완벽하게 부합했던 과제의 요구사항에 솔직히 기분이 좋았고 전환이 되지 않더라도 얻어가는 것이 분명 있을 것 같았다.

러닝 커브가 높기로 유명한(?) RxJava, Dagger 등 여러 기술 스택들을 짧은 기간 안에 학습 한다는 것은 정말 쉽지 않다. 동기분이 굉장히 친절하고 자세하게 본인의 지식을 함께 나누어 주셨기 때문에 무사히 학습하고 실제로 기술들을 사용할 수 있었던 것 같다. 이 글을 빌어 동기분에게 감사하다는 인사를 하고 싶다. 🙇‍♂️



인턴의 시작 - Task 편

과제는 약 5주간 진행하며 마무리를 하였다. 굉~~ 장히 어려운 기술로 보이는 도전과제들은 손도 못대고 끝이났다. 원래는 인턴 기간인 2달 간 과제를 진행할 계획이었지만 “학습은 이 정도면 된 것 같으니 Task 를 맡아서 해보는 것이 좋을 것 같다.” 라는 멘토와 팀리더님의 말에 5주차 중간정도 부터는 업무를 할당받아 진행하게 되었다.

혹시 본인이 계획이 틀어지는 것을 정~~~~~~~~말 싫어하시는 분이라면 어쩌면 기분이 나빴을 지도 모르겠다. (꽤나 갑작스럽게 변경되긴 했다.)

하지만 나는 일단 그런 타입이 아니었고 인턴으로 들어와서 팀 내에 기여를 해볼 경험이 생겼다는 것 자체가 나는 기뻤고 설렜다. (사실 동기분과 굉장히 겁을 많이 먹었다. 내가 잘못해서 crash가 나면 나의 전환은 물 건너 갈 것 같았다.)

처음 업무를 받고 ‘이거 이렇게 바꾸고 저거 저렇게 바꾸면 금방 끝나겠는데?’ 라고 생각했다. 쉬울 거라 생각했기 때문에 나 혼자만의 데드라인을 2주로 잡았다. (쉬울 것 같은데 2주..? 나름 넉넉하게 잡은 것이었다. 😂)

하 ! 지 ! 만 !

이게 뭐람.. 신경 쓸 게 한 두가지가 아니였고 팔을 고치면 다리가 고장나고 다리를 고치면 어깨가 고장나는 상황이 계속 반복되었다. (하이퍼커넥트의 코드가 이상한 것이 아니라 내가 전체적인 코드의 구조나 흐름을 파악하지 못하고 수정한 탓이었다. 진심으로..)

그렇게 2주를 까먹었다.

인턴 기간은 총 9주로 여태까지 과제 5주, 팔,다리,어깨를 고치느라 2주를 사용했다. 이제 고작 2주 남았다.

마음속으로 생각한 나의 데드라인은 이미 넘어섰다. ‘진짜 1주만 더 해서 진짜 끝낸다.’ 라는 생각으로 다시 일주일을 보냈다.

PR도 날렸다..!

하 ! 지 ! 만 !

내가 짠 코드는 너무 비효율적이었다. 코드 리뷰를 받으며 수정해야되는 부분이 굉장히 많아졌다. 내심 절망아닌 절망을 했다.

그러면서도 하이퍼커넥트에 대한 신뢰도가 더욱 더 상승했다.

허울뿐인 코드 리뷰가 아닌 정말 코드의 효율을 생각하고 side-effect가 없도록 꼼꼼한 코드 리뷰를 해주셨기 때문이다.

다른 PR들을 봤을 때에 이미 코드 리뷰를 중요시 한다는 느낌을 받았기 때문에 나 또한 그 기대에 부응하기 위해 PR을 날릴 때면 내가 얻은 내용, 참고한 레퍼런스, 다양한 디바이스에서 테스트한 내용들을 공유했다.

결론적으로는 인턴 마지막 시간이 될 때까지 할당받은 Task를 마무리하지 못했다.
(인턴이 종료된 시점에서 말하기로는 인턴이 맡기에는 생각보다 큰 규모의 작업이었던 것 같다.)



전환 면접

hyperconnect_final_interview

마지막 주에는 전환 면접이 이루어졌다. 할당받은 Task를 마무리 하지 못했기 때문에 전환의 기회도 없을 것이라 생각했다.

Task를 마무리하지 못했더라도 앞서 말했던 것 처럼 꾸준히 PR을 통해 코드 리뷰를 받으며 내가 얻은 내용, 다양한 디바이스에서 테스트한 내용들을 공유했던 것과 인턴 과제 진행 시 학습 자료를 꼼꼼히 정리했던 것이 장점으로 작용했던 것 같다.

어쨌든, 운이 좋게 전환 면접을 가질 수 있게 되었다는 것에 너무나 감사했다. 🙇‍♂️ x 1000000

전환 면접은 디렉터급 1분과 1:1로 진행되었고 약 45분 가량 진행하였다. 너무 긴장이 돼서 모든 질문들이 생각나지는 않지만 인턴 면접보다는 더 깊은 수준으로 질문이 던져졌고 직무 질문 외에도 하이퍼커넥트와 fit이 맞는지에 대한 질문도 많이 오갔던 것 같다.

결과는 아주아주아주 빠르게 단 하루만에 나왔고 결과는

hyerperconnect_final_nice

너무 다행스럽게도 최종 합격을 하게 되었다 ! 나와 함께할 시간이 기대된다니.. 하이퍼커넥트와 함께할 제가 더 기대됩니다..! 🙇‍♂️ x 100000000

(이번에 결과가 좋지 않았더라면 나는 정규직을 포기한 상태로 백수가 되었을 것이고 멘탈도 와르르멘션이었을 것 같다.)


성장의 발판

이전글에서 말했던 것 처럼 나는 하이퍼커넥트라는 회사를 인생의 터닝 포인트로 잡았다. ‘나의 성장에 도움이 될 것 같다’ 생각했고 신기술을 지속적으로 사용하며 ‘지속적으로 성장하는 개발자’ 가 되는데에 도움이 될 것이라 판단했다.

실제로 인턴 과제와 Task를 진행하면서 또, 코드 리뷰를 진행하면서 이 회사가 주는 신뢰감을 믿어보려고 한다.

회사가 나에게 신뢰감을 주었던 것 처럼 이제는 나도 회사에게 신뢰감을 주어야 한다. 전환이 되었다고 해서 멈추지 않고 각종 신기술, 클린 아키텍처와 클린 코드들에 대해 끊임없이 학습하고 공부하며 면접에서 이야기했던 것 처럼 “안정성과 효율성이 높은 코드를 작성할 수 있는 개발자”가 되기 위해 노력할 것이다.


올해 초 1월 1일이 되는 순간 내가 처음 들었던 음악은 “유재석&이적의 말하는 대로” 이다.
그 덕분에 올 한 해는 말하는 대로, 마음먹은 대로, 생각한 대로 흘러가고 있는 것 같아 뿌듯하고 잘 해오고 있는 것 같다. 현재에 안주하지 말고 한 걸음 더 성장할 수 있도록 노력하자 !

(올해 초 이 노래를 추천해주고 듣게 해주신 지인분께 감사의 인사 드립니다. 🙇‍♂️)

This post is licensed under CC BY 4.0 by the author.

[알고리즘] leetcode > Valid Palindrome 풀이

[Conference] if 카카오 2020 후기

Comments powered by Disqus.