소프트웨어 마에스트로 면접 2012. 07. 03. 21:08 diary#소프트웨어 마에스트로#면접 (티스토리 블로그에 작성했던 글을 옮긴 글입니다.) 이것 저것 바쁜 탓에 준비를 많이 못해갔다. PT도 너무 대충 만들어 갔고.. 예상질문으로 준비했던 것들 자기 소개 지원 동기 향후 계획 및 포부 (교내 프로그래밍 경시대회에서) 어떤 문제들이었고, 어떤식으로 해결했는가 다른 사람을 이끌어본 경험이 있다면 어떤 것이었고, 무엇이 어려웠는가 리더의 입장이 되어본적이 있다면 사람들간의 충돌이나 팔로워들이 따르지 않을 때, 어떻게 행동하였는가 성격의 장단점 자신은 어떤 사람이라고 생각하는가? PT는 간단하게 지금까지 프로젝트 했던 것 캡쳐해서 슬라이드로 구성했고, 뒤에가서는 지금 생각하는 프로그래머로써의 나를 간단하게 애니메이션으로 만들었다. 면접 시간에 조금 늦어서 급하게 들어갔는데, 안내메일에서 멘토 회의실 2-A였나? 거기로 되어있어서, 센터 2층에 들어서자마자 그냥 그리로 들어갔는데, 잘못들어간거였다.. 면접 순서는 대기하고 있다가, 코딩 문제를 받아서, 코딩실에서 문제를 푼 후, 자기 차례가 되면 면접실로 들어가서 면접을 본다, 인성 면접을 멘토 세분과 30분간 보고 이후에 면접실을 옮겨 다른 멘토 세분과 다시 기술면접을 본다. 사실 인성면접, 기술면접 나눠져 있긴 하지만 그 기준이 모호하다.. 두 면접실 모두 인성, 기술을 보는 듯..? 주어지는 문제를 자신의 노트북으로 코딩해서 면접실의 TV에 연결하여 소스를 보면서 얘기한다. 주로 여기서는 문제를 어떤식으로 해결하였는가? 그리고 코딩 스타일은 어떤가?를 보는 듯 하다. 내가 풀었던 문제는 우등 고속 버스의 좌석 배치 문제였는데, 보통 우등 버스의 경우에는 2열이 붙은 좌석과 1열만 있는 좌석이 있다. 2열이 붙은 좌석을 A, B열이라고 하고 1열만 있는 좌석을 C열이라고 할 때 한명의 승객이 좌석을 요구하는 경우 C열을 우선으로 주고, 만약 C열이 꽉 찬 경우에는 AB열의 뒤쪽부터 채워나간다. 두명의 승객이 좌석을 요구하는 경우 AB열을 우선으로 주고, 이때 A열 또는 B열만 차있는 상태라면 한 자리를 비워두고 뒤쪽의 붙어있는 좌석을 내어준다. 쓸데없이 머리굴리다가 복잡해져서 코드 엎고 다시 한다고 완성은 못했으나, 완성에 대해서는 크게 얘기하진 않았다. 다만 의아한 점은 인성 면접에서 코드를 볼 때는 면접 거의 끝에 가운데 앉으신 멘토분이 옆의 멘토분께 더 하실 말씀 있으신가요? 했을 때 코딩을 잘해서 그렇게 할 말은 없네요라고 했고… 기술 면접에서는 소스코드가 대체적으로 엉망이고 자료구조를 사용했으면 좋았을걸 이라고 말씀하셨다. 각자 멘토에 따라 자신의 스타일이 있으니 그런 모양이다. 자바를 사용해서 문제를 풀었는데 객체지향적이진 않고 거의 C스타일로 작성해서 그런 모양이다. 대부분의 대화는 문제 풀이와, 지금까지 했던 프로젝트에 대한 얘기였고, 자신을 어필하기 위한 소개, 포부, 계획, 자신감 등을 내비칠 수 있도록 준비하면 하고 싶은 말이 있냐고 물어볼 때 준비한 대로 대답하면 되고, 멘토분들도 어느정도 수준을 맞춰서 말씀해 주셔서 부담없이 면접을 볼 수 있었던 것 같다.