Story

소프트웨어 마에스트로 12기 합격 후기 (지원 과정, 코딩테스트, 면접)

oranz.23 2022. 1. 27. 14:49

 

 

 

 

    2021년 내가 가장 많은 시간을 할애했던 프로젝트가 끝난지 벌써 2달 정도 되었다. 이제 다음 스텝을 위해 하루하루 공부하고 있는 내게 작년 매일같이 팀원들과 개발에 매달렸던 일상은 꿈결같기도 하다. 그렇지만 13기 모집 공고가 올라온 것을 보고 더 늦기 전에 이제 떨리는 마음으로 소마를 준비하고 있을 누군가를 위해 내 작은 경험을 공유해보고자 한다.

 

서류 접수

    아마 자기소개서가 서류 접수에서의 가장 큰 문턱이었던 것으로 기억한다. 각 질문마다 최대 3,000자까지 허용하는 스케일은 글자수==성의 라고 생각했던 나에게 꽤나 부담으로 다가왔고, 그래서 11기 때는 지원을 안했다(?) 그렇지만 이번에는 어떻게든 도전해보자는 생각이 있었고, 나름의 이야기를 최대한 전달하기 좋게 담아보고자 했던 것 같다. 각 질문에 대한 대략적인 답은 다음과 같다.

 

[자기소개 1] 소프트웨어 분야 전문성을 키우기 위해 남들과 달리 특별한 노력을 경험을 서술해 주시기 바랍니다.    

    컴퓨터과학 전공자이지만 처음부터 개발에 열정적으로 임했던 것은 아니었다. 그렇기 때문에 기술력을 갖춰야겠다고 생각한 계기, 발전해나간 과정을 적었다. 참고로, 합격하고 나서 개발 경험이 풍부한 분들도 많았지만 거의 처음 개발을 해보는 분들도 종종 만나곤 했다. 이 질문 역시 '전문성'에 초점을 맞추기보다 '특별한 노력'을 어필하는 것이 소마 측에서 원하는 바이지 않을까 생각한다. (1455자)

 

[자기소개 2] 귀하의 장래희망을 서술하여 주시기 바랍니다.

    나는 스티브 잡스를 보고 IT업계 쪽 일을 해야겠다고 생각했고, 여전히 그 때 스스로에게서 발견했던 새로운 것을 좋아하는 성향은 유효하다고 생각했다. 그러나 어떤 기술의 전문가가 될 것인지, 앞으로의 커리어패스에 대한 완벽한 청사진을 그렸다든지 하는 것은 없었다. 그렇기 때문에 내가 원하는 미래의 내 모습의 요소들을 나열하는 식으로 이야기를 풀어나갔다. (1358자)

 

[연수계획 1] 어떠한 능력을 갖춘 연수생들과 어떠한 프로젝트를 어떻게 수행할 것인지 귀하의 구체적인 계획을 서술하여 주시기 바랍니다.

    종종 생각하던 주식 종목에 대한 위키 사이트를 만드는 것에 대한 이야기를 썼다. 아마 깊게 생각해본 내용이 아니라 군데군데 기획적인 허점이 있었을 것이라고 생각한다. 개인적으로 이 질문은 너무 말도 안되는 것만 쓰지 않으면 괜찮지 않을까 한다. 그렇지만 어느 정도 고민해보는 것을 추천한다. 면접에서 이 프로젝트에 관한 세부사항들을 질문받기도 했고, 합격한다면 고민해볼 주제이기 때문이다. 참고로, 난 여기에 쓴 프로젝트를 실제로 하지 않았고 만났던 동기 연수생들도 대부분 그러했다. (1072자)

 

[연수계획 2] 앞으로 귀하께서 과정을 통해 이루고자 하는 목표가 무엇인지 구체적으로 서술하여 주시기 바랍니다.

    무언가를 얻게 되는지는 사실 과정에 들어서기 전보다 하면서, 그리고 하고 나서 알게 되는 부분이 많다고 생각했기 때문에 진심이지만 다소 뻔한 내용으로 채우게 되었다. 서비스를 세상에 출시하는 과정을 느껴 보고, 기술적인 부분에서 배우고 사람들을 얻어가고 싶다고 기술했다. (748자)

 

    내가 알기로 소마 지원 과정 중 서류에서 떨어지는 경우는 거의 없다. 그러니 서류를 어떻게든 제출했다면, 합격할지 불합격할지 조바심에 떨기보다는 당장 코딩테스트를 준비할 것을 권한다.

 

코딩테스트

    참고로 나는 저 때나 지금이나(...) 백준 골드에 머무르고 있고, 크게 내세울 만한 알고리즘 실력을 갖추지는 못했다. 바꿔 말하면, 소마에 한해서는 알고리즘 실력이 뛰어나지 않다고 겁먹지는 않아도 된다고 말하고 싶다. 아래의 책으로 기본적인 알고리즘들의 원리를 숙지하고, 구현할 수 있을 정도로 학습하면 충분히 합격할 수 있을 것이다. 

 

http://www.yes24.com/Product/Goods/91433923

 

이것이 취업을 위한 코딩 테스트다 with 파이썬 - YES24

나동빈 저자의 유튜브 라이브 방송 https://www.youtube.com/c/dongbinnaIT 취준생이라면 누구나 입사하고 싶은 카카오 · 삼성전자 · 네이버 · 라인!취업의 성공 열쇠는 알고리즘 인터뷰에 있다!IT 취준생

www.yes24.com

    

     소마 코딩테스트는 신기하게도 일반적인 코딩테스트와 달리 알고리즘, SQL, 웹 문제가 출제된다. 문제 비율은 6:1:1 정도였던 것으로 기억하며, 백엔드 개발을 주로 하던 나는 웹에 대한 것은 잘 몰라 테스트 중 그 쪽 문제는 쳐다보지도 않았다. 문제 수가 보여주듯 일단 알고리즘을 잘 푸는 것이 제일 핵심이며 작년의 코딩테스트는 엘리스 플랫폼에서 이뤄졌는데, 제한시간이 60초(...)로 효율성을 덜 고민하더라도 일단 돌아가는 코드를 먼저 짜보라는 것이 개인적인 팁이다. 

     SQL 같은 경우는 사실 알고리즘과 달리 문제를 많이 접하기가 어렵지만, 프로그래머스에 있는 SQL Kit 문제들로 대략적인 감을 잡았고, 난이도를 그렇게 높지 않은 수준이라 SQL을 어느 정도 아는 사람이라면 1분 이내로 풀 수 있는 내용이었던 것으로 기억한다.

    1차와 2차 코딩테스트가 있는데 2차가 더 난이도가 높거나 하진 않았던 것으로 기억한다. 체감상으로는 2차가 더 쉬웠던 것 같다. 추가적인 팁을 주자면, 면접 때 코딩테스트에서의 코드에 대해 질문하는 경우가 종종 있고 로컬 IDE 사용을 소마 측에서 허용하므로 코드를 저장해두고 복기한 후 면접에 가는 것을 추천한다.

 

면접

합격 메일

    위의 과정을 거치고 기쁘게도 합격 메일을 받을 수 있었다. 면접은 이전까지의 전형과는 달리 선릉에 위치한 소마 센터에서 오프라인으로 진행되는데, 많이 떨렸고 면접이 정말이지 오랜만이라 인터넷으로 소마 면접 후기, 개발자 면접 질문 등을 검색하여 다음과 같이 예상 질문들을 정리해보고 친구를 불러다가 카페에서 연습을 해보았다. 늦었지만 그 때 도움을 준 대학원생 친구에게 감사를 전한다.

 

1.    공통

 

-        간단한 자기소개 & 지원 동기 & 자신있는 분야

-        최신 기술 습득 방법 & 공부 방법 & 언제 기술을 습득했다고 생각하는지?

-        소마 과정에서 배우고 싶은 현업이 무엇인지?

-        생활 속에서 문제를 해결하기 위해 알고리즘 적용해본 사례가 있는지?

-        학업과 소마 병행 가능한지?

-        소마에서 어떤 프로젝트를 하고 싶은지?

-        앞으로의 포부

-        소마여야 하는 이유?

-        내가 생각하는 소프트웨어 개발이란?

 

2.    코딩테스트 관련 질문

 

-        시간복잡도, 개선사항

-        알고리즘을 설계할 중점적으로 생각하는 것은?

-        문제별 설명

 

3.    팀워크

 

-        자신의 장단점

-        멘토님과 의견 충돌은 어떻게 해결할 것인가

-        프로젝트하면서 가장 힘들었던 부분

-        사용해본 프레임워크 장단점

-        간의 갈등이 생기면 어떻게 해결할 것인지?

-        프로젝트에 있어서 가장 중요한 것이 뭐라고 생각하나요?

-        팀장 역할을 좋아하는지 팀원 역할을 좋아하는지?

-        프로젝트에서 맡고 싶은 포지션과 이유는?

-        프로젝트에서 PM으로서 어떻게 프로젝트를 진행할 것인지?

-        팀원들끼리 사용하는 기술 스택이 다르다면?

-        기업가정신이란?

-        프로젝트 마감기한이 되었다면 어떻게 대처?

-        코트 작성하는 규칙은 팀원끼리 어떻게 상의할 계획인지?

-        프로젝트를 실제 사업에 적용한다면 기술적 비용 & 사업적 비용 어떨까?

 

4.    기술

 

-        Java C 차이? C Python 차이?

-        Docker 컨테이너에 대해서

-        OSI 7계층

-        가비지 컬렉터

-        VM 컨테이너의 차이?

-        Int, char 알고 있는 자료형과 그것에 할당되는 크기

-        분산처리에 대해 아는 대로 말하세요

-        주력 언어의 장단점

-        RESTful API 장단점

 

5.    자소서

 

-        했던 프로젝트 설명

-        최신 기술이 어떻게 사회에 이득을 있다고 생각하는지

 

    실제로 면접에서 받았던 질문들은 다음과 같다.

 

  1. 프로젝트하면서 발생한 기술적 이슈와 그에 대한 해결 방법
  2. 코딩 테스트 문제에서 어떤 알고리즘 및 자료구조를 쓴 것인지?
  3. AWS를 사용해본 것 같은데, 클라우드란 무엇인가요?
  4. AWS에서 보안 그룹 서브넷 설정은 어떻게 했나요?
  5. 창업에 관심 있어 보이는데 바로 창업할 생각인지?
  6. 어떤 PM이 될 것인지?
  7. (제안한 프로젝트 기반) 이걸 어떻게 업데이트 할 거냐, 사람들이 그렇게 할 요인이 있는가?
  8. 했던 프로젝트들을 간단히 설명해주세요.

     상당히 떨려서 모든 질문에 만족스럽게 대답하지는 못해서 당일날 굉장히 아쉬워했던 기억이 있다. 그렇지만 지금 돌이켜보면 미화됐는지 핵심적인 포인트들은 놓치지 않은 것 같긴 하다. (개인적으로 4번 질문 받고 컴퓨터네트워크를 벼락치기로 공부했던 게 약간 뿌듯했다) 위와 같은 과정을 거쳐 기쁘게도 다음과 같이 최종 합격 메일을 받을 수 있었다!

    이 기세로 다음에는 소마 수료 후기를 작성해볼까 한다. 이 보잘것없는 글이 누군가에게 도움이 되기를...🙏