2017학년도 가을학기 카이스트 전기 및 전자공학부 석사 면접 후기

흔치않은일상 2017.05.24 03:30


  음... 일단 결과가 나오기 전에 적어보는 면접 후기이다보니 조금은 두서없을 수도 있습니다. 일단 바로 전날에 면접을 치룬 상황이기에 기억이 생생할 때 몇 자 적어봅니다.


 카이스트 전기 및 전자 공학부의 경우 교수님과의 컨택이 이루어지기 전 입시가 진행되며 최종합격이 된 후 교수님과의 면담을 통해 연구실을 확정짓게 됩니다. 여기서는 카이스트 서류 통과 후 면접과정에 대해 다루겠습니다.


 일단 글쓴이의 프로필을 적어보자면


학점    : 4 초반

학교    : 인서울

전공    : 컴퓨터공학

영어    : 토익 700 후반


 먼저 카이스트 대학원 원서를 제출한 후 제출기한이 마감되면 며칠 후 지원시 작성하였던 메일 주소로 자신이 응시하고자 하는 시험을 선택하라는 내용이 전달됩니다. 아래는 전기및전자공학부에서 응시가능한 시험 분야입니다.


  1. 신호및시스템 (선형 시간 불변 시스템, 연속/이산 시간 신호 처리)
  2. 전자기학
  3. 회로 (회로이론, 아날로그 및 디지털 전자회로)
  4. 통신 (아날로그 통신, 기초 디지털 통신 및 기초 확률)
  5. 반도체 (물리전자, 반도체 소자)
  6. 컴퓨팅분야 (프로그래밍, 자료구조)


 카이스트 전기및전자공학부 대학원 면접전형은 전공 6분야 중 2분야를 선택한 후 관련 문제를 약 25분동안 풀고 면접관 앞에서 약 12분간 자신이 문제를 해결한 방법에 대해 칠판에 판서하면서 설명하는 방식입니다.


 다만, 전기, 전자, 정보계열이 아닌 다른 분야를 전공하였을 경우 1개만 선택해도 됩니다. 저의 경우 컴퓨터공학을 전공하여 전공과목 1개만 선택이 가능하였고 당연히 제 전공에 해당되는 6번 컴퓨팅 분야를 선택했습니다.


 그렇게 카이스트 대학원 원서를 접수한 후부터 전공 공부에 돌입하였습니다. 먼저 컴퓨팅분야에 시험범위로 적혀있는 프로그래밍과 자료구조론을 공부하였습니다.


 처음 공부할 때 프로그래밍이라 해서 혹시나 하는 마음에 C언어의 생기초부터 공부를 시작하여 자료구조론은 3번정도 읽었던 것 같습니다. 마지막으로 혹시 출제될 수도 있을 것 같아 면접 2주전에 운영체제와 데이터베이스를 오버뷰 한 다음 결과를 기다렸습니다.


 다행이 서류 합격! 처음에 긴가민가 해서 공부를 조금 소흘히 한 것이 마음에 남지만 면접은 서류 합격 5일 후에 바로 시작됩니다. 일단 면접이 코앞이라 자료구조 책을 다시 한 번 훍어보았습니다. 나머지 책은 눈에 잘 들어오지 않아 책을 읽는둥 마는둥 했습니다 ㅎㅎ



 그렇게 결전의 날이 밝아오고 새벽부터 KTX를 타고 카이스트로 향했습니다. 면접 소집 시간은 오전 8시 30분. 타지에 계신 분이라면 많이 빡빡한 일정이 될 수도 있는 이른 시간이긴 합니다만 면접장에 도착하는 약 50명 정도 되시는 분들이 면접장에 모여계시더군요.


 아차, 가끔 후기를 읽다가 복장에 대해 궁금해 했던 적이 있었는데요. 거의 대부분의 분들이 정장을 입고 계셨고 캐주얼 복장도 몇 분 계시긴 했습니다. 제 주변 분들이 대학원생이 연구실에서 정장 안입는다고 하면서 면접때 그냥 가도 된다 했었는데 하마터면 저 말에 깜빡 속을 뻔했죠 ㅎㅎ 이 나쁜 친구들!


 면접장소에 도착하게 되면 지퍼백에 자신의 휴대폰을 넣은 후 안내조교에게 반납합니다. 휴대폰은 자신의 면접 일정이 끝나기 전 까지는 사용할 수 없습니다. 휴대폰을 반납한 후 카이스트에 직접 보냈던 원서를 그 자리에서 받게 됩니다. 이 때 원서 위에 자신의 면접 일정을 간략하게 붙여둔 작은 일정표가 첨부되어 있으며 이 때 자신이 보게 될 과목과 순서 또한 표기되어 있습니다.


 그렇게 휴대폰을 반납한 후 아침 시간에는 인성검사가 진행됩니다. 인성검사는 1인당 약 5분정도 진행되며 카이스트 교수님들 중 원로교수님들께서 면접을 진행하고 계셨습니다.



교수 A   : 학생, 자기소개 해보세요.


본인      : (간단한 신상정보 소개) 저는 마이크로프로세서 분야에 관심을 가지고 있습니다.


교수 B   : 음... 이 쪽 분야는 워낙 발전된게 많아서 연구할 게 있으려나...?


본인     : 최근 지능형자동차가 등장하게 되면서 차량 내에 다양한 반도체가 들어갑니다. 특히 ECU의 경우 지능형자동차의 핵심 요소라 할 수 있습니다.


교수 B   : 그렇지. 요즘 자동차 안에는 수백개의 센서가 들어가니깐요. 학생은 장래에 목표가 무엇인가요?


본인     : 저는 석사과정 2년동안 마이크로프로세서 분야에 대해 연구한 후 자동차 회사에서 ECU 컨드롤러를 개발하는 연구원이 되고자합니다.


교수 B   : 아, 현대자동차 같은 회사 말이죠?


........


 대략 인성면접은 자신이 대학원을 진학하려는 이유와 앞으로의 장래회망에 대해 명확히 말씀하신다면 인성면접을 보시는 데에 큰 문제는 없으실거라 생각합니다.


 인성면접이 완료되면 아침 면접 일정은 종료됩니다. 점심은 학교에서 서브웨이를 제공해줍니다. 처음에 점심 제공을 해준다 해서 카이스트 학식을 맛볼 줄 알았는데 그렇지 않은 점은 조금 많이 아쉬웠습니다.



 다음으로 오후 일정은 전공면접입니다. 전공면접은 위에서 말씀드렸듯이 2개의 분야를 선택하여 면접에 임하게 됩니다. 다만 저의 경우 컴퓨터공학을 전공하였기 때문에 전공 분야는 1개만 선택이 가능하였고 그 중 컴퓨팅 분야를 선택하여 면접에 임하였습니다.


 면접 문제 난이도는 학기중에 교수님이 내주시는 과제를 해결할 줄 아는 능력 정도만 갖추셧다면 쉽게 푸실 수 있습니다. 다만, 자신이 공부를 한 지 좀 오래 되신 분이라면 저처럼 다시 복습하면서 문제를 해결하였던 과정을 다시 되새겨보시는 것도 나쁘지는 않을 겁니다.


 문제의 갯수는 자신이 선택한 분야마다 다를 수도 있습니다만 컴퓨팅분야의 경우 총 3문제가 출제되었으며 출제과목은 프로그래밍(간단한 손코딩), 알고리즘, 시스템프로그래밍및 자료구조론이었습니다. 문제 내용도 자신이 학기중에 과제를 충실해 해오셨던 분이라면 25분 내에 푸실 수 있을 정도의 난이도입니다. 이 중 2개의 문제를 선택하여 문제를 풀면 됩니다.


 문제풀이 시간이 끝나면 면접조교의 안내에 따라 교수님이 계신 방으로 이동하게 됩니다. 제가 들어간 컴퓨팅분야 방에는 두 분의 교수님이 계셨으며 칠판 앞에 서서 교수님께 문제를 어떻게 풀었는지에 대해 설명해주시면 됩니다.


교수A    : Factorial을 반복문을 사용해서 만들어보세요.


본인      : (칠판에 판서를 하면서) 먼저 반복문에 사용할 int 변수 하나를 선언한 후 ....(중략)... for문을 선언한 후 다음과 같이 코딩을 하면 Factorial을 구현할 수 있습니다.


교수B    : 음.. 그렇군요. 그럼 이번엔 Factorial을 recursion방식으로 구현해보세요.


본인     : 만약 인자 값이 1일 경우 if(n=1)을 사용하여 1을 return 해주며, return에 n*factorial(n-1) 방식으로 설계하면 될 것 같습니다.


교수A    : 음... 식이 이상한 거 같은데 if문 안에 조건을 저렇게 써도 되나요?


본인      : 음... (잘못 쓴 것을 눈치챔) 아, 제가 잘못썼습니다. if(n==1)로 작성해야 맞습니다.


교수A    : 음... 그렇군요. 그렇다면 다음 문제 피보나치수열을 구현한 다음 Time Complexity를 추정해보세요.


본인      : 피보나치 수열은 다음과 같이 코딩하고요 시간복잡도는 O(n)입니다.


교수A    : 엥? 시간복잡도가 그렇게 나오나요?


본인      : (당황) 아... 다시 보니 O(n^2)인 것 같습니다.


교수A    : 음... 아닌거같은데? 지금 작성환 소스코드를 좀더 효과적으로 나타내볼 수 있겠나요?


본인      : 네... 음..... 지금 작성한 제 코드가 최적화된 코드라고 생각합니다.


교수B    : 우리 이제 시간 없으니 다음 문제로 넘어가봐요.


 지금 후기 남기면서 피보나치 시간복잡도를 확인하니 O(2^n)으로 나오는군요. 그런데 지금 저 면접 때로 돌아가도 답은 제대로 못했을 것 같습니다. 워낙 긴장한 상황이다보니 말이지요.


교수A    : 문제에 제시된 소스코드를 보고 어떻게 동작할 지 설명해주세요.


본인      : 먼저 fork() 함수가 호출되기 전 A가 출력됩니다. 그 다음 fork()함수가 호출되면서 B가 두 번 호출됩니다. fork()함수의 결과값은 부모의 경우 자식 프로세스의 id값을 받게되며 자식 프로세스는 0을 받습니다. 그리고 다음으로 C는 4번 호출되며 D는 6번 호출됩니다.


교수B    : C에서 D가 호출될 때 어떻게 호출되는지 자세히 설명해봐요


본인      : C는 부모노드이고 fork() 함수의 return값이 0이 아니므로 if문이 실행되지 않아 fork() 함수가 추가로 호출 되지 않습니다. (이것저것 설명)


교수A    : 네. 잘했어요. 다음 문제 풀어볼까요?


본인      : 이 함수에서는 스택이 있습니다. 이 소스코드를 따라가다보면 스택의 값들이 모두 pop 하게 되어 .......


 소스코드 자체는 그렇게 많이 어렵지는 않았습니다. 다만, 소스코드 중간중간에 자기 자신을 호출하는 recursive 기능이 포함되어 있기 때문에 소스코드를 읽으면서 설명하다가 실수할 수도 있습니다.


본인     : 이러한 식으로 스택에는 값이 채워지게 되며 그 이후에도 같은 방식으로 스택에 값을 채우게 됩니다.


교수A   : 그와 같은 방식이 뭔데요?


 대략적인 상황은 대충 설명하고 넘어가지 말고 그 과정을 매우 디테일하게 설명해야 되는 상황이었습니다. 하지만 계속 반복해서 설명하면 교수님들도 이해하고 있구나 하고 넘어가시는 듯 보입니다.


교수A    : 그래서 그 스택을 모두 pop하는 operation()함수는 어떤 역할을 한다고 생각하나요?


본인     : operation()함수는 메모리상의 관점에서 보았을 때 stack 역할을 하고 있다고 생각합니다. operation 함수가 stack의 pop을 실행할 때 마다 실제 메모리에도 stack의 pop으로 나온 값이 메모리에 스택처럼 저장되기 때문입니다.


교수B    : 그래요 수고하셨어요.


 그렇게 저는 1개의 분야 문제풀이를 마치고 면접관에게 휴대폰을 받은 후 바로 집으로 귀가하였습니다.


 어떻게 보면 길면 길었지 결코 길지 않았던 12분의 시간만에 전공면접을 마치고 집으로 돌아가게 되었습니다. 지금 이 후기를 작성하는 시간은 면접 응시 다음날인 새벽 3시 18분 입니다. 과연 저는 합격할 수 있을까요?



※추가내용 - KEPSI-KAIST 장학생 전형


 카이스트 면접 바로 전날에 KEPSI(하이닉스 산학장학생) 면접이 있었습니다. PT방식으로 진행되는데 자신의 기본 전공 실력을 진짜 열심히 공부하셔야 면접관 앞에서 대답이 수월하실 겁니다. PT면접은 자신이 지원한 직무와 관련된 문제 3개를 받은 후 이 중 1개를 풀면 됩니다. 문제 난이도가 높은 편이지만 자신이 문제를 풀어나가는 과정을 면접관님께 또박또박 설명해 주신다면 좋은 결과를 들으실 수 있을 겁니다.


 저는 인터넷에서 SK하이닉스 PT면접으로 반도체와 관련된 내용이 나온다 해서 반도체 제작 8대 공정을 달달 외워서 들어갔습니다만 다행히도(?) 제가 외운 내용은 한줄도 안나오더군요... 정말 해당 직무와 관련된 내용만 공부하셔서 들어가면 됩니다!! 다시 한 번 말씀드리지만 자신의 전공지식, 그리고 관련 직무와 관련된 부분만 정확히 공부하셔서 들어가시면 면접관님께 한 마디라도 설명이 가능하실거라 믿습니다!!(진짜 많이 어려웠습니다 ^^;)




 2017년 6월 15일 합격했습니다! 이제 본격적으로 학문을 공부하는 학자가 되고자 하니 마음이 설레이는군요! 카이스트 지원을 준비하시는 여러분들도 좋은 결과 있으셨으면 합니다!


  • 이넨 2017.07.10 21:16 ADDR 수정/삭제 답글

    안녕하세요 컴퓨팅에 대한 후기가 너무 찾기 힘들었는데 이글을 발견하고 너무 기쁘네요 ㅠㅠ
    감사합니다

    혹시나 실례가 되지 않는다면 몇가지 질문에 답을 부탁드려도 될까요?

    저는 이번에 2018년 봄학기 카이스트에 원서를 작성하고 있는 전전 학생이고

    부전공으로 컴퓨터 공학을 전공했는데 시스템 프로그래밍은 이라는 과목을 따로 수강하지 않아서 여쭤보고싶은데 저 문제에서 어떤부분이 시스템 프로그래밍에 해당되나요?

    stack 과 process관련된 부분인가요?

    감사합니다 댓글 부탁드리겠습니다 ㅠㅠ

    • Justin T. 2017.07.10 21:37 신고 수정/삭제

      시스템프로그래밍은 컴퓨터공학에서 주로 개설되는 과목이고요 운영체제의 원리를 배우는 수업입니다.
      전자공학에서는 운영체제 과목을 통해 배우실 수 있고요 카이스트 면접을 대비하시는 거라면 교수님이 수업시간에 내주신 프로그래밍 과제를 수행하실 수 있는 실력이시면 될 것이라 말씀드리겠습니다

    • 이넨 2017.07.11 11:51 수정/삭제

      아 컴퓨터 구조론과 운영체제를 수강하였었는데,
      괜찮겠네요 저희학교에는 하위 과목으로 시스템 프로그래밍이라는 과목이 따로 있어서요..ㅎㅎ

      그럼 프로그래밍 영역에서는 일반적인 C언어 쪽이랑 시스템 프로그래밍 정도 알면 된다는것이죠?

    • Justin T. 2017.07.11 13:32 신고 수정/삭제

      운영체제의 가장 핵심적인 기초(인터럽트, mutex등)을 이해하시고 이를 프로그래밍 하실 수 있으시다면 시험에 대비하실 수 있으시리라 생각합니다

    • 이넨 2017.08.19 18:43 수정/삭제

      안녕하세요 전에 질문 드렸었는데 면접 날이 다가와서 다시 읽어보다가 3문제중 2문제를 골랐다고 하셨었는데

      그중에 다른 1문제는 어떤 유형이었는지 혹은 기억이 나지 않으신다면 어떤 과목의 문제였는지 궁금해서 여쭤봅니다.

      답변 주시면 감사드리겠습니다.

    • Justin T. 2017.08.20 21:49 신고 수정/삭제

      나머지 한 문제는 알고리즘 설계였습니다.
      앞에서 말씀드렸듯이 학부생때 교수님께서 내주신 과제를 해결할 수 있는 능력을 갖고 계시다면 충분히 문제를 해결하실 수 있으실겁니다.

  • 린넨 2017.07.17 09:28 ADDR 수정/삭제 답글

    안녕하세요
    전기전자 컴퓨터 선택과목 후기는 아무리 뒤져봐도 이 글밖에 없네요ㅠㅠ
    가뭄에 단비같은 후기입니다. 감사합니다.
    혹시 몇 가지 질문에 답변해주실 수 있으신가요?

    저는 전전 학생이고 기초적인 컴퓨터 프로그래밍(C++, Java), 자료구조, 알고리즘, 운영체제 과목을 수강했는데(컴파일러나 데이터베이스, 오토마타 등등 컴공 전공자들이 배우는 깊은 내용은 잘 모릅니다), 제가 배운 내용으로 시험범위가 커버되는지 궁금합니다. 위에 써주신 문제들 보면 될 것 같긴 한데...;;
    그리고 손코딩 문제라는게 pseudo-code 로 간단히 적는 건지, 아니면 실제 컴파일이 되도록 C나 다른 언어로 완전히 코드를 짜야 하는 건지 궁금합니다.

    이상입니다. 답변 부탁드립니다ㅠㅠ

    • Justin T. 2017.07.18 22:51 신고 수정/삭제

      당연히 전자공학 전공이므로 문제 난이도는 전자공학 내에서 전산 관련 과목을 수강하셨으면 충분히 해결할 수 있는 수준입니다.
      코딩의 경우 굳이 pseudo code 쓰는바엔 c언어 생기초만 잘 알고 들어가시면 충분합니다.
      다만 전자공학 커리큘럼에 시스템프로그래밍이 없는 경우도 있으나 운영체제를 수강하셨다면 충분히 해결가능할 것이라 생각합니다

  • 전전 2017.08.20 11:20 ADDR 수정/삭제 답글

    전자전기 면접 후기 감사드려요~ㅎㅎ
    오후면접 최종 마치고 집에 돌아갈수 있는 시간이 언제였는지 궁금합니다ㅜㅜ

    • Justin T. 2017.08.20 11:23 신고 수정/삭제

      봄학기 가을학기 선발 인원이 다르기때문에 정확히 몇시에 끝나는지는 확답을 드릴 수 없으나 저의 경우 오후 6시 이전에 모든 전형이 끝났었습니다

  • 샤비 2017.08.20 21:42 ADDR 수정/삭제 답글

    안녕하세요

    정성스레 쓰신 면접후기 정말 감사합니다ㅠㅠ
    며칠 뒤에 면접이라 한가지 질문 부탁려도 될까요?

    면접시험 시에 펜을 제공해주는지 아니면 다들 따로 준비해오는지 궁금하네요...ㅎㅎ 별건 아닌거지만 궁금해서요ㅜㅜ

    • Justin T. 2017.08.20 21:47 신고 수정/삭제

      필기도구를 챙기셔야 합니다.
      시험볼 때 뿐 아니라 대기하는 동안 수험표 등을 작성하여야 하는데 자신의 필기도구를 사용하는 것이 가장 편할 것입니다

  • 컴퓨터 2018.06.23 05:34 ADDR 수정/삭제 답글

    안녕하세요. 제에게 굉장히 많은 도움이 되는글이었습니다. 저도 카이스트 대학원 전기전자공학부로 들어갈려고준비중인데 혹시카이스트에는 sdn nfv이나 클라우드오픈소스쪽으로 유명한 연구실이 있나요?

  • 김수용 2019.06.15 01:52 ADDR 수정/삭제 답글

    석사아닌 석박통합과정지원하려는 타과 학생인데 이럴경우에는 전공면접은 몇가지 분야로 시험보나요?

    • Justin T. 2019.06.15 01:53 신고 수정/삭제

      자세한건 전자과 사무실에 직접 문의해보셔야할듯 합니다.