Software Maestro 12기 최종 합격 후기

김정욱·2021년 4월 4일
13

SoftwareMaestro

목록 보기
1/6
post-thumbnail

최종 합격

  • 글의 목적
    : 저는 소마를 준비하면서 각 절차마다 필요한 정보들을 얻기 위해서 많은분들블로그참고했고, 많은 도움을 받았습니다. 감사합니다.
    그래서, 조금이나마 앞으로 소마를 준비하실 많은 분들에게 도움이 되길 바라는 마음으로 제가 준비했던 과정느낀점들을 기록하려고 합니다.
    (글 작성에 서툰 점 이해해주시면 감사하겠습니다.)

Software Maestro 12기 절차

  • 서류 검토
    : 개인의 인적사항 / 학력사항몇가지 질문에 대한 으로 구성
  • 코딩테스트
    • 1차 코딩 테스트 (총 8문제)
      : 알고리즘 6문제 / SQL 1문제 / Web 1문제
    • 2차 코딩 테스트 (총 5문제)
      : 알고리즘 3문제 / SQL 1문제 / Web 1문제
  • 심층 면접
    : 서류에 작성한 내용 / 코딩테스트 관련 내용을 기반으로 하는 심층 면접

[ 서류 검토 ]

  • 개인의 인적사항 / 학력사항 등은 개인이 입력하는 부분이니 생략
  • 최대 3,000자를 가지는 항목들에 부담을 느끼는 사람이 많을 것으로 예상되어 필자의 글자수를 안내
  • 질문을 중심으로 다룸
    • 자기소개 2문항
    • 연수계획 2문항
    • SW대회 수상 증빙 자료 : 개인적이므로 생략

자기소개(1~2)

  • [자기소개1] 소프트웨어 분야 전문성을 키우기 위해 남들과 달리 특별한 노력을 한 경험을 서술해 주시기 바랍니다. (최소 400자, 최대 3,000자 입력가능)
    • 내용
      : 본인이 SW 역량을 키우기 위해 도전했던 것들을 중심으로 작성
      (협업 프로젝트 활동 / 개인 프로젝트 활동 / 동아리 활동 / 등등)
    • 필자 작성 글자수 : 1423자
  • [자기소개2] 귀하의 장래희망을 서술하여 주시기 바랍니다. (최소 400자, 최대 3,000자 입력가능)
    • 내용
      : 개인미래에 어떤 비전을 가지고 있는지를 물어보는 것이라고 생각
      (개발자로서 청사진 / 앞으로 되고싶은 구체적인 대상 / 창업 / 등등)
    • 필자 작성 글자수 : 1504자

연수 계획(1)

  • [연수계획1] 귀하께서는 2021년도 「SW마에스트로」 연수과정에서 동료 연수생들과 협력하여 새로운 프로젝트를 완성하여야 합니다. 어떠한 능력을 갖춘 연수생들과 어떠한 프로젝트를 어떻게 수행할 것인지 귀하의 구체적인 계획을 서술하여 주시기 바랍니다. (최소 400자, 최대 3,000자 입력가능)
    • 내용
      : 해당 질문을 통해서 결국 물어보고자 하는 것은 크게 3가지라고 생각
      • 어떤 능력을 갖춘 연수생과 함께하고 싶은지
        1) 본인이 함께하고 싶은 연수생성향, 실무 능력, 협업 가치 등 에 대해서 설명
        2) (중요) 1번과 같은 기준을 가지는 이유타당하게 설명
        (본인 경험 바탕으로 얻게 된 기준이라면 해당 내용을 추가하면 더 내용풍부해보인다고 생각함)
      • 어떤 프로젝트를 진행하고 싶은지 (기술적 / 사업성 / 목표 등)
        1) 기술 스택
        2) (중요)사업성
        : 소마창업을 지원하는 큰 목표가 있는 프로그램이기 때문에 사업성을 중요하고 생각한다고 판단
        3) 목표
        : 소마는 우수 프로젝트를 대상으로 '인증' 이라는 과정을 달성하여 다양한 혜택(창업지원, 기술지원 등)을 해주며 이러한 것을 목표로 정함
      • 프로젝트를 어떻게 진행할 것인지 (협업 측면 / 기술 측면)
        : 협업 룰 / 소통 방식 / 협업 툴(slack, git 등) / 역할 분담 / 멘토링 과정 등등
    • 필자 작성 글자수 : 2024자

연수 계획(2)

  • [연수계획2] 2021년도 「SW마에스트로」 연수 과정에서는 연수생에게 교육지원비, 노트북PC 및 프로젝트 재료비 등을 지원할 예정이며, 본인이 희망하는 온·오프라인 교육과 프로젝트 수행을 도와주는 멘토를 통해 귀하의 SW능력을 향상·발전 할 수 있는 기회를 제공하고 있습니다. 앞으로 귀하께서 본 과정을 통해 이루고자 하는 목표가 무엇인지 구체적으로 서술하여 주시기 바랍니다. (최소 400자, 최대 3,000자 입력가능)
    • 내용
      : 소마를 통해 궁극적으로 달성하고 싶은 목표에 대해서 구체적으로 서술하는 것
      예시 1) 창업 달성
      예시 2) 열정있는 사람들과의 협업
      예시 3) 프로젝트 협업을 위한 성장
    • 필자 작성 글자수 : 2021자

[ 코딩 테스트 ]

[ Intro ]

연수생 선출과정에서 가장 많은 사람들이 걱정하고 준비하는 부분일 것이라고 생각합니다.
코딩테스트총 2번 수행되고, 코로나 시국이라서 '엘리스'라는 플랫폼을 기반으로 온라인으로 진행했습니다.
문제의 구성알고리즘, SQL,Web 이렇게 3분야로 나오는데 SQL은 기본으로 가져가야 하는 문제라고 생각하며, 자신의 역량에 따라 Web문제알고리즘 문제를 푸시면 될 것이라고 생각합니다.

아 그리고 소마 코테제한시간이 60초기 때문에 비효율적이더라도 일단 구현해서 풀어놓고 시간이 남으면 개선하는 것이 좋다고 생각합니다.
(그리고 면접에서 코테에서 푼 알고리즘 개선방안에 대해 시간복잡도를 바탕으로 설명하라는 질문을 받았는데, 이럴때를 대비해서라도 다른 풀이를 생각하면 좋을것 같습니다.)

  • 추천 영상 (Youtube 컴공 선배 - 과거 소마연수생이었던 분들이 운영하시는 Youtube)
    : 각자 다른 성향장점을 가지신 전 연수생 분들의 합격 이야기에 대한 내용인데 도움이 될것이라고 생각합니다.
    ( https://www.youtube.com/watch?v=JSVlqI_3IRA&t=186s )

[ 1차 코딩테스트 ]

  • 알고리즘
    • 총 6문제
    • 문제는 기억이 잘 안나는데, 총 3문제를 풀었음
    • 난이도는 대부분 백준silver / programers Level2 정도였다고 생각함
  • SQL
    : 2개의 테이블JOIN해서 특장 날짜 사이에 있는 데이터를 출력하는 문제였으며, 난이도는 쉬웠다
    특정 날짜 사이에 있는 데이터를 추출하기 위해 BETWEEN AND를 사용할 수 있으면 충분히 풀 수 있는 정도
  • Web
    • HTML / CSS 틀이 주어지고 미디어 쿼리(@Meida)를 사용해서 반응형 웹구현하면 되는 문제
    • 미디어 쿼리 작성하여 100px ~ 768px 사이로 지정할 수 있는 정도면 풀 수 있는 문제
  • 결과

[ 2차 코딩테스트 ]

  • 알고리즘
    • 총 3문제
    • 1번BFS를 사용한 블러드 필을 구현하는 문제
    • 2번1차원 배열에서 밟은 발판에 적힌 숫자에 따라서 칸을 움직이는데 순환이 있는 가장 큰 길이를 구하는 문제 (백준비슷한 문제가 있었던 것으로 기억함)
      : 소마 코테시간제한이 60초라서 그냥 모든 점에 대해서 순환을 검사하고 큰 길이를 추출
    • 3번재귀 문제였는데 난이도제일 어려웠던 것으로 기억함
    • 대부분의 난이도백준silver ~ 쉬운 gold정도 라고 생각됨
  • SQL
    : 책 정보, 책 구매기록, 회원 이렇게 3개의 테이블이 주어졌고, 1등급 멤버십인 고객에 대한 누적 구매액을 구하는 문제
    (서브 쿼리를 통해서 3 테이블의 정보가 모두 필요)
  • Web
    • 기본적인 JavaScriptdom접근 문법을 사용해서 다크모드를 만드는 기능
    • HTMLCSS에 대한 수정을 막아놔서 결국 document.getElementByIdgetTags등을 이용할 수 밖에 없었음
    • 추가로 다크모드 전환시 정적 이미지도 바꾸어야 했음
  • 결과

[ 느낀 점 ]

  • 필자가 푼 문제
    • 1차 코딩테스트
      : 알고리즘3 / SQL1 / Web1, 총 (5/8)문제
    • 2차 코딩테스트
      : 알고리즘2 / SQL1 / Web1, 총 (4/5)문제
  • 주변 지인들도 소마 코테응시하였고 정보를 나름 모아봤더니 생각보다 Web문제에 대한 비중있다고 느낌
    (물론, 알고리즘 다 풀고, Web안풀고 통과한 케이스도 있긴함)
  • 필자는 본격적인 코테준비1달 반정도 준비함
  • SQLJOIN이 딱 마지노선이라고들 많이 얘기하기 때문에 프로그래머스 SQL문제 푸는 것을 추천
  • WebHTML / CSS / JS에 대한 기본적인 이해와 응용정도 할 수 있으면 충분히 가능하다고 생각
  • 알고리즘을 잘해서 거의 다 맞출 수 있는 것이 아니라면 Web기본적으로 공부해서 맞추는 전략좋다고 생각함

[ 심층 면접 ]

[ 준비 과정 ]

  • 제출 서류 정독
  • 질문 세분화 & 예상 질의 구성
    • 공통 질의 : 모든 연수생을 대상으로 하는 질문
    • 서류 질의 : 내가 제출한 서류에 기반한 질문
    • 프로젝트 질의 : 내 프로젝트 이력에 대한 질문
  • 다양한 블로그들을 참고하여 기존에 질문했던 문항들을 참조해서 질의를 구성
  • 블로그들에 나온 모든 질문생각할 필요없음
    --> 개인이 작성한 서류에 기반기술적 질문도 많아서 이런 것들은 프로젝트 질의 구성참고만 함

[ 실제 질의 문항 ]

: 생각보다 어려운 질문들이 많았다고 생각하며 면접 by 면접을 감안하여 참고!

  • 좋아하는 언어 / 싫어하는 언어가 무엇이며 이유는?
  • 오픈소스 기반의 프로젝트를 통해서 느낀것(깨달은 것)은 무엇인지?
  • 페이스북 / 인스타그램같은 서비스에 참여한다면 본인이 할 수 있는 것은?
  • 2차 코딩테스트 문제들 중 개선하고 싶은 문제를 골라서 시간복잡도를 기반으로 구체적 설명 ?
  • 알고리즘의 평가 기준에 대해 설명 ?
  • 협업 간 갈등이 발생되었을 때 어땠으며, 어떻게 해결했는지?
  • 상황 제시 : 시간이 얼마 남지 않은 프로젝트에서 팀원이 더딘 상황이라면 어떻게 할 것인지?
    (가정 : 목표는 모두의 성장)

[ 느낀 점 ]

  • 생각과는 다르게 프로젝트와 관련된 질문은 거의 나오지 않았다 (오픈소스 질문 1개뿐..)
  • 필자는 서버개발이 진로라서 서버 관련 질문준비했지만 전혀 물어보지 않았음
  • CS에 대한 지식도 필요할 것 같아서 OS네트워크를 공부했지만 도움이 되지는 않았음
  • 면접시 기본적인 부분이지만 유의하면 좋을 점들
    • 목소리가 작은 경우 --> 의사 전달이 원활하게 이루어지지 않음
    • 말을 너무 더듬는 경우 --> 위와 동일
    • 대답이 너무 긴 경우 --> 자신이 무엇을 말하고자 하는지 잊어버림
  • 면접관분들은 대답천천히 / 길게 원하는 만큼 하라고 하시며 분위기 자체편했음
  • 면접3일에 걸쳐서 진행되었고, 예상 경쟁률2:1 ~ 3:1 정도라고 생각됨
  • 어디까지나 필자의 면접을 기준으로 말하는 것이라서 참고하는 것이 좋다고 생각함
    • 다음 날 면접을 본 친구는 위 질문들 처럼 복잡하거나 알고리즘과 관련한 문항아예 물어보지 않음
    • 프로젝트에 대한 질문동일하게 전혀 하지 않았음
    • 인성과 관련한 질문들이 대부분이었다고 함!

마치며

저도 많은 포스팅참고하였지만 항상 만족할 수는 없었습니다.
그래서 제 도 누군가에게는 부족할 것이라고 생각합니다.
하지만, 누군가에게는 좋은 정보가 되었으면 좋겠다고 생각합니다. 감사합니다.

profile
Developer & PhotoGrapher

2개의 댓글