ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • SW마에스트로 15기 최종 합격 후기
    SW마에스트로 2024. 3. 29. 12:47

     

     

     

    아직 워크샵도 진행하진 않았지만 합격해서 기쁘기도하고

     

    면접 때 받은 질문들 중에서, 다시 나에 대해 돌아볼만한 질문도 있어서 

    그런 인상깊었던 내용들을 기록하고자 글을 작성했습니다.

     


    지원하게 된 이유

    국내에는 여러 부트캠프가 존재하지만

    소프트웨어 마에스트로는 정부에서 지원하는 사업인 만큼 인지도와 교육의 질이 가장 높은 프로그램으로 알고있습니다.

     

    사실 저 나름대로 규모가 크진 않지만 대내외 활동을 여러가지를 해보고

    제 진로를 찾기 위해서 데이터분석 공모전이나 여러 공모전들을 참가했던 경험이 있습니다.

    여러 경험들을 하면서 백엔드 개발을 선택했고,

     

    실력있는 연수생들과 함께 활동하며

    제가 지금 백엔드 개발자로 성장하기 위해서 어느 정도의 수준에 있는지 확인하며 단점을 보완하고 

    소마 과정을 통해 함께 배우면서 성장하고 싶은게 가장 큰 이유였던 것 같습니다.

     


    자소서

    [자기소개] SW분야의 전문성을 키우기 위해 몰입했던 경험과 도전이 무엇인지, 또한 이러한 성장과정을 통해 얻은 배움은 무엇인지를 서술하여 주시기 바랍니다.(최소 400자, 최대 1000자 입력가능)

    • 교내에서 진행했던 캠퍼스SW아카데미에 참여했던 경험이 있는데, 해당 과정에서 개인적으로 흥미롭게 배웠던 국내 데이터베이스 기업인 Tmax사에서 나온 TiberoDB를 배우면서 기록했던 내용들과 실제 마지막 팀 프로젝트에 해당 DB를 선택하여, 진행하면서 겪었던 이슈들을 해결한 내용을 풀어냈던 기억이납니다.

     

     

    [연수계획서] SW마에스트로 과정 참여를 통해 어떠한 프로젝트를 수행하고 싶은가요? 해당 프로젝트를 수행하기 위한 계획과 이루고자 하는 목표가 무엇인지 구체적으로 서술하여 주시기 바랍니다.(최소 400자, 최대 1000자 입력가능)

    • 어떤 프로젝트를 수행하고 싶은가에 대한 초점을 기획쪽이 아닌 백엔드에서 제가 새로 배우고자 하는 내용을 실제 프로젝트에 적용하고 싶다는 측면으로 서술해나갔습니다.

     


    1차 코딩테스트

    • 알고리즘 4문제
    • SQL 1문제

     

    위와 같이 문제가 출제되었습니다.

    저는 그중에서 알고리즘 3문제, SQL 1문제를 테스트 케이스를 통과했습니다.

    예전에 14기때에도 코딩테스트를 치뤄본 경험이있는데,

    그때와 비교했을 때 개인적으로 이번 15기 1차 코딩테스트가 훨씬 쉬었다는 생각이 들었습니다.

    C++ 기준으로 map과 priority_queue를 사용했던 거 말고는 특이점은 크게 없었던 것 같습니다.

     


    2차 코딩테스트

    • 알고리즘 4문제
    • SQL 1문제

     

    그렇다면 이번 1차 코딩테스트처럼 2차도 비슷한 기조로 흘러가나...?

    그건 아니였습니다..

    확실히 2차가 1차보다 난이도가 많이 높았습니다.

    저는 5문제 중에 테스트 케이스 성공 기준으로 알고리즘 2문제, SQL 1문제를 풀었던 걸로 기억합니다.

     

    특히 SQL 문제를 해결하는데 시간을 많이 투자했었습니다.

    나름 소마 대비한다고 SQL 어려운 문제들 위주로 풀었다고 생각했는데

    한번에 해결할 수 있는 함수가 기억이 안나서 계속 모니터 화면만 멍때리면서 기억해낼려고 애썼던거 같습니다..

     

    알고리즘 문제는

    구분자를 통한 문자열 분할, 동적 계획법(DP), 머지 소트와 같은 완전 이진 트리를 잘 숙지하고 있는가?에 대한 문제가 있었고

     

    마지막 문제는 코딩 테스트가 끝나고 나니, 예전에 푼 기억이 있는 백준 14939 불 끄기 문제와 유사했다는 걸 깨달았습니다...

     

    14939번: 불 끄기

    전구 100개가 10×10 정사각형 모양으로 늘어서 있다. 전구에 달린 스위치를 누르면 그 전구와 위, 아래, 왼쪽, 오른쪽에 있는 전구의 상태도 바뀐다. 전구 100개의 상태가 주어지면 모든 전구를 끄

    www.acmicpc.net

    2차 코테에서는 비트마스킹으로 풀자는 생각이 들지 않아서

    DFS 관점으로 문제 해결을 시도했습니다..

     

    2년전 문제 풀고 나에게 적었던 메세지..

     

     

    이번 1년동안은 백엔드 개발을 위해 시간을 거의 다 투자해서

    알고리즘 복습과 문제 풀이를 많이 진행하지 못했는데

    또 한번 반성하게 되었던 것 같습니다.

     

    미루지말고 복습을 꾸준히 하자....

     

    제발!!!!

     


    최종 면접

     

    위 사진의 왼쪽은 면접관 내부 사진으로

    14기때 소마 SNS 계정에 올라왔던 사진인데 15기때도 환경은 이와 같았습니다.

     

     

    저는 2분과 3번을 배정받았고

    면접실에 들어가서 면접자들은 3분간의 준비해놓은 포트폴리오를 발표하게 됩니다.

    또한 면접관님의 코딩 테스트 관련 문제 질문에 사전 복기할 수 있도록

    본인의 각 자리에 2차 코딩테스트 문제 프린트물들이 놓여있습니다.

     

    저와 같이 면접을 진행했던 다른 분들의 포트폴리오 발표를 보는데

    정보올림피아드에서 수상한 분도 있고

    각종 알고리즘 문제 대회에서 수상하고 출제한 분도 있고...

    수상 내역들이 화려해서 솔직히 기가 많이 죽었습니다.

     

     

    난 여기 왜..?

     

     

    개인 질문

    인상 깊었던 점은 저희 분과에서는 코딩테스트에 대한 질문은 들어오지 않았고

    대부분, 면접자들이 수행했던 프로젝트에서의 기술 관련 질문을 해주셨습니다.

     

    Q) 자바 기반으로 백엔드 개발을 하면서 느꼈던 단점이 있었나요?

     

    Q) 스프링부트로 백엔드 개발을 하게 된 이유가 있을까요?

     

    Q) Kafka에서 프로듀서와 컨슈머간의 개선시도를 해봤나요?

     

    Q) Kafka가 성능이 좋다고들 얘기하는데, 네트워크나 OS 관점에서 말해줄 수 있나요?

     

    Q) 총학생회 홈페이지를 개발한 DB를 보면, RDB인 MySQL과 NoSQL인 DynamoDB를 사용하고 있는데, 이렇게 사용한 이유가 있을까요?

     

    Q) 혹시 총학생회 쪽 프로젝트에서 MySQL은 몇 버전을 사용하고 있는지 알고있나요?

    A) 8버전을 사용하고 있습니다.

    Q) 그렇다면 MySQL 8버전 이상 NoSQL 관련 문제를 지원하고 있는거 알고있으셨나요?

     

    Q) Python과 pyodbc 연동에서 버전 문제로 오류가 발생해 이슈를 제보했었다고 하는데,

          검색해도 찾지못하는 문제는 본인은 어떻게 해결해 나갈 것인지 말해줄 수 있나요?

     

    Q) MSA구조에서 k8s 관련 오케스트레이션 질문

     

    Q) 본인은 팀장으로써 리더형과 참모형 중에 어디에 가까운지 말해줄 수 있나요?

     

     

    공통 질문

    저의 분과의 경우,

    개인 질문을 많이해주시고 꼬리 질문이 생각보다 많이 들어와서 시간 관계상 공통 질문은 하나만 하고 끝내셨습니다.

     

    Q) 만약 팀 프로젝트에서 팀원이 멘토와의 의견 충돌로 불화가 발생한다면 본인은 어떻게 행동할 것인가요?

     

     

    블로그 초반에 말했던 인상깊었던 질문은

    위의 개인 질문에서 MySQL 8버전 이상부터 NoSQL 관련 문제 지원에 대한 질문이였습니다.

    처음 해당 질문을 듣고 머리가 띵했고, 면접이 끝나고 집가서 찾아봤던 기억이 아직도 생생합니다..

     

    저의 개인적인 생각이지만, 해당 질문을 해주신 이유는

    새로운 기술을 선택하기 전에, 기존에 사용하고 있는 범위 내에서 해결할 수 있는 방안을

    얼마만큼 고민을 해봤었는지를 여쭤보는 것 같았습니다.

    저는 해당 질문에 트랜잭션 관점에 대한 고민을 말씀드리고, NoSQL이 RDB 보다 더 빠른 읽기 쓰기 성능의 장점을 이유로 답변했었습니다.

     

     

    [이렇게 사용하세요!] MySQL 8.0, 개발자를 위한 신규 기능 살펴보기! #4 JSON

    ​​MySQL 8.0 개발자를 위한 네번째 신규 기능 ‘JSON’을 알아봅니다.

    medium.com

     

    MySQL 8 버전 특징

    NoSQL MySQL Document Store는 개발자가 전통적인 SQL 관계형 응용 프로그램과 NoSQL, schema-free document 데이터 베이스 응용 프로그램일 개발하는데 최대한의 유연성을 제공합니다. 따라서 별도의 NoSQL documen

    kchanguk.tistory.com

     

     

     


    끝, 그리고 다시 시작!

     

     

     

    합격의 기쁨은 뒤로하고

    이제 내 앞에는 소화해야할 빡빡한 일정들이 기다리고 있다...

     

    과정은 쓰지만 이로인해 오는 결과는 달다

    포기하지말고 달려가보자~

    열ㅈ정열정열정!

     

    'SW마에스트로' 카테고리의 다른 글

    SW마에스트로 15기 발대식  (0) 2024.06.14
Designed by Tistory.