메뉴 건너뛰기

통합검색 입력 폼
잡코리아 주요 서비스
끝이 다른 시작 JOBKOREA 알바의 상식 albamon 공모전·박람회 CAMPUS MON 나만을 위한 맞춤 학습 잡코리아 러닝


취업토크 상세

게임 플레이 프로그래머 실무 면접 보고 왔습니다.

작성자
노오오력해야지
작성일
2019-08-27
조회수
2267
좋아요 수
0
회사에서 "Unreal"엔진 공고에 대해 "기본적인 전산학"과 "그래픽스"에 대한 이해를 가지고 있어야 한다고 내셔서

나름대로 면접 전 "프로그래머 면접 준비" 서적으로 공부도 하고.

서류 심사 때 제출한 포트폴리오에 대해서 확실하게 말할 수 있게끔 준비하고.

코딩 테스트 제출한 코드에 대해 "왜 이렇게 작성했냐?"라는 질문에 대해 답도 준비해 놓고

학원과 학교에서 배운 "전산학" 지식도 재 체크 하고서 갔을텐데.. 자신이 보기에도 너무 실망스러운 결과를 보여드렸네요..

면접 좀 보신 분들은 아시겠지만

"아직 모르는 일입니다, 너무 실망하지 마세요."
"좀 더 공부 하셔야 겠네요"
"좋은 시간이었습니다."

대표적인 "면접 탈락 예정" 대답들입니다.. 그래서 이번엔 떨어졌다고 생각합니다.
근데 이번 면접에서 걸리던 말이 제목에도 적혀있는 "기본기"에 대한 것이었습니다.

그래도 "기본기는 자신있다"고 생각하고 면접에 임했는데 정반대의 결과 였습니다.

무엇보다 "학원에서 배운 기본기" 엄청 지적받았습니다.

잘못 얘기했다기 보단 "잘못 배웠습니다"(물론 면접 보는 곳에서는 "학원에서 배웠습니다"라고 안 했습니다 ㅠㅜ)

예를 들어 malloc과 new의 차이점에 대한 질문을 받았는데 학원에서는 "malloc은 C구문이고 C++은 클래스 기반의 new가 있기 때문에 사용할 필요가 없다."라고 배워서 해당 질문의 지식이 없었고
(정답은 malloc은 동적 할당만 지원해주는 일종의 지원 함수이고 new는 말 그대로 C++구문으로서 생성자가 자동으로 불립니다.)

반복문 구문에서 왜 "break"구문을 사용하지 않았냐? 라는 질문에서

학원에서 배웠기로는 "'break' 구문은 루프 명령 중 강제로 명령을 절단하는 행위이기 때문에 후에 불확실성 오류가 발생 할 수 있다."라고 배워서 이를 말씀드리니

"네, 그럴리 없습니다. 오히려 안 사용하면 성능 나빠집니다."라는 답변을 받았네요..

그래서 그런지 면접관님들도 "왜 이건 아는데 이건 모르지?"같은 반응이 많으셨던 것 같네요.

의외였던점은 기술 면접인데 "그래픽스 관련 질문"이나 "사용 엔진"에 대한 질문이 나오지 않은 것 정도였네요.

아무튼! 과연 면접관님들이 말씀해주셨던 "기본기".. 과연 무엇일까요?

일단 "전산학"에 관련 된 지식은 꼭 들어간다고 생각합니다.

근데 일반적으로 배우는 "전산학 커리큘럼"에 해당하는 지식이 아니라 좀 더.. "전문적인"지식 같습니다.

아, 그리고 "학원에서 알려준 지식".. 이게 오히려 독이 됐네요.(솔직히, 독학했던 지식은 전부 통과했는데 왜 얘만..)

그리고 답변을 제대로 못한 3가지 정도 되는 질문의 경우 "해당 기능을 사용하지 않았으면 모르는 지식"이거나 "해당 지식을 얻는 경로를 알아야 얻을 수 있는 지식"이었네요..

그리고 아마 두 경우 중 후자는 "코딩 인터뷰"와 "Effective C++"에 등장한 것들이라고 생각합니다.
(최근 안 보는 책들이었는데 질문 중 하나였던 virtual 구문의 사용 이유에 대한 것이 Effective C++에 개재되어 있었네요..)

이외에 또 무엇이 필요할까요?
일단 이번 경험을 살려서 다음 달 정도에 다른 기업에 한 번 더 도전해 볼 생각입니다.
이번엔 "코딩인터뷰"와 "Effective"책으로 열심히 공부해야겠네요.

[게임 프로그래밍 면접 준비 요약.]

1. 게임 프로그래밍 학원 지식 믿지 말자.(매우 중요!)
2. "코딩 인터뷰", "이펙티브 시리즈" 꼭 읽고 실습해보자.


배너



퀵메뉴