개발자의 희망퇴직 #9 - 2014년 7월 16~31일
4년전 이맘 때, 희망퇴직 구직활동에 열심이던 시기였습니다. 2014년 7월에는 면접 오라는 회사들이 있어 희망을 가지던 때이기도 했었습니다. 기대했던 한 회사가 있었는데, 거길 들어가면 전화위복이 될 거라는 기대를 하기도 했었습니다. 그 때를 회상하며 적었던 회고록을 일부 수정하고 스팀잇에 맞게 재구성합니다.
이직하시는 분들의 건승을 바랍니다.
지난 이야기
- #1 - 2014년 4월[ Steemit ] [ busy ]
- #2 - 2014년 5월 1~26일 [ Steemit ] [ busy ]
- #3 - 2014년 5월 27~31일 [ Steemit ] [ busy ]
- #4 - 2014년 5월 [ Steemit ] [ busy ]
- #5 - 2014년 6월 1~15일 [ Steemit ] [ busy ]
- #6 - 2014년 6월 16~30일 [ Steemit ] [ busy ]
- #7 - 2014년 6월 [ Steemit ] [ busy ]
- #8 - 2014년 7월 1~15일 [ Steemit ] [ busy ]
2014년 7월 16일 - 헤드헌터를 통한 모의면접
지난 달에 N사 헤드헌터를 통해 판교 S사에 지원했고, 이번 달 3일에 서류를 통과했다는 연락을 받았다. 근래 들어 경험한 합격 중에 가장 대박이 아닌가 싶었다. 친구들이 좋다고들 말하던 그 회사. 그 곳에 들어간다면, 나는 오히려 더 좋은 곳으로 이직한다는 뜻이다. 그런 일이 내게 일어난다면... 생각만 해도 기분이... ㅎㅎ
헤드헌터가 모의 면접을 보자고 해서 강남으로 왔다. 나와 담당 헤드헌터는 근처 카페로 이동했다. 잠시 후 다른 헤드헌터 두 분이 더 오셨고, 모의 면접이 시작되었다.
헤드헌터들은 왜 이직을 하려는지, 경력에 대해 궁금한 점들을 물어봤다. 모의 면접인데도 내가 긴장을 많이 했다. 헤드헌터들이 그 점을 지적했다. 긴장 풀고 조금 더 편안하게 대답할 수 있는 게 좋다고...
앞으로 면접이 어떻게 진행할지, 현재 내 대답에서 부족한 것은 무엇인지, 면접에 대해 무엇을 준비하는 것이 좋은지를 이번 자리에서 배울 수 있었다. 이 분들이 이렇게 나를 위해 시간을 할애한 것은... 내가 가능성이 있다고 보기 때문일 것이다. 면접에 합격해서 헤드헌터들과 다시 웃으며 만날 수 있으면 좋겠다.
1차 면접은 내일(7. 17)이다. 준비 마무리 잘 해서 좋은 결과 만들 수 있도록...
2014년 7월 17일 - 판교 S사 코딩 면접
판교 S사에서 코딩 면접을 보게 되었다. 시험 범위를 몰라서 막막했다. 자바 언어, 자료 구조, 알고리즘에 대한 지식이 있으면, 무난하게 시험을 볼 수 있을 것이라는 추측이 가능했을 뿐... 안드로이드 관련 문제가 나올지가 변수라는 생각은 했다. 아는 게 없으니 일단 부딪혀 보는 수 밖에...
두 분의 면접관들이 나를 맞이 했고, 시험 문제들이 인쇄된 종이들과 노트북을 받았다. 나는 앉은 자리에서 필수 문제 하나와 선택 문제 하나를 노트북으로 풀고 설명하면 되었다. 노트북은 빔 프로젝트와 연결되어 있었고, 면접관들은 내가 코딩하는 내용들을 실시간으로 볼 수 있었다. 주어진 시간은 1문제에 30분씩. 시간이 충분하지 않으므로 빠른 판단과 타이핑이 필요했다.
훑어보니 예상된 범위 내에서 풀 수 있는 문제들이었다. 내가 고른 1번째 문제는... 두 개의 문자열들을 갖는 객체들을 원소로 갖는 배열들을 오름차 순으로 정렬하는 것이다. 1번째 원소들을 기준으로 오름차 순으로 정렬하되 그것들이 같은 경우에는 2번째 원소들을 기준으로 오름차 순으로 정렬해야 했다.
내가 고른 2번째 문제는... 나열된 대문자 알파벳 문자들과 숫자들을 정렬하는 것이었다. 전자들은 왼쪽에 오름차 순으로, 후자들은 오른쪽에 오름차 순으로 배치한다. 그리고 각 숫자들은 더해서 화면에 출력해야 한다.
1번째 문제를 보는 순간 처음에 당황스러웠다. 배열의 원소들을 정렬해야 하는데, 정렬 알고리즘을 구현해야 하는 것이 아닌가가 걱정되었다. 차분하게 다시 읽어보니 이 문제는 Comparator 인터페이스를 구현할 수 있는지를 확인하는 것이 주요 의도로 보였다. 정렬은 자바가 제공하는 API(Arrays 클래스의 sort 메소드)를 이용하면 되는 것이었다. 다행히도 나는 문제를 무난하게 풀고, 설명할 수 있었다.
2번째 문제는... 정렬이 필요했는데 그것을 하지 못했다. 자바가 제공하는 API를 이용하면 되는 거였지만, 클래스 이름이 생각나지 않았던 것이다. (면접 후 관련 내용을 찾아보았다. Collections 클래스의 sort 메소드를 이용하면 되는 것이었다. 그것이 생각나지 않았던 것이다. ㅠㅠ) 나머지는 무난하게 처리했다.
면접관들은 내가 1번째 문제를 풀었을 때보다 더 많은 질문들을 했다.
"혹시 정렬 알고리즘을 구현하여 문제를 풀 수 있을까요?"
"보다 더 최적화할 수는 없을까요?"
"StringBuilder 클래스는 왜 사용하셨나요?"
"StringBuilder 클래스와 StringBufer 클래스의 차이점은 무엇인가요?"
자바에 대한 전반적인 지식들을 가능한 많이 알고 있어야 대답할 수 있는 질문들이었다. 자바에 대한 기초를 다시 한 번 공부하는 것이 좋을 것.
이후 나에 대해 궁금한 점들을 면접관들이 내게 물었다.
"안드로이드 경력은 몇년이신가요?"
"사용할 줄 아는 언어는 무엇인가요?"
"카메라 개발 해보셨다고 했는데, 카메라 플랫폼인가요? 어플리케이션인가요?"
"실무 말고 학교 다녔을 때 자바를 해보신 적은 있으신가요?"
"혹시 개선점을 찾고 실행해본 적은 있으신가요?"
면접을 마친 후, 면접관들은 이번 시험에 통과하면 팀장 면접을 보게 될 것이라고 말했다. 언제쯤 연락이 올지에 대해서는 따로 이야기가 없었다.
이번 면접은 전체적으로 나쁘지 않았다. 그렇지만 2번째 문제를 완벽하게 풀지 못한 것이 마음에 걸린다. 다음 면접을 볼 수 있을지는... 하늘에 맡기기로 했다. 최선을 다했으니 후회는 없다.
2014년 7월 18일 - 판교 S사 코딩 면접 합격
전날 판교 S사에서 코딩 면접을 보았고, 오늘 2차 면접을 보러 오라는 연락을 받았다. 일정은 24일 오후 2시. 최상의 결과를 얻기 위해 무엇을 준비해야 할까? 지금부터 주어진 시간은 6일. 주말에는 애를 봐야 하니 실질적으로는 4일 남았다. 남은 시간을 어떻게 활용하느냐에 모든 것이 달려 있다.
2014년 7월 26일 - 판교 S사 직무 면접
오후 2시에 판교 S사를 방문하여 직무 면접을 보았다. 2층에 회의실들이 있었고, 나는 202호에서 대기하고 있었다. 정시에서 5분 정도 지나자 면접관 두 분이 회의실로 들어오셨다. 한 분은 팀장님이었고, 다른 한 분은 실무자였다.
이전에 봤던 코딩 면접의 문제 내용이 무엇인지를 팀장님이 묻는 것으로 면접이 시작되었다. 나는 문제의 내용과 어떻게 풀었는지를 답했다.
이후부터는 안드로이드 관련 내 이력에 대한 질문들이 이어졌다. 생각했던 것보다 구체적인 내용들을 궁금해 하고 있었다. MDM 관련해서 내가 코드를 어떻게 작성했는지, 구현했던 메소드들이 다른 곳에서 어떻게 사용되는지를 물어봤던 것으로 기억한다.
OOP에 대한 질문도 있었다.
"추상 클래스와 인터페이스의 장단점을 설명해보라."
추상 클래스에는 메소드를 구현할 수 있고, 이는 하위 클래스들이 공통으로 활용할 수 있다고 말했다. 인터페이스는 구현된 메소드를 가질 수 없으므로 인터페이스를 구현하는 클래스들은 내용이 중복된 메소드들을 가질 수 있다고 답했다. 중복을 막기 위해 별도의 클래스와 메소드를 정의해야 하는지 고민해 본 적이 있었다고 추가로 말했다.
"단말기 제조사에서는 제품을 만들 때 한 가지 해상도만 생각하면 된다. 그러나 우리 회사에서는 안드로이드 앱이 진저브레드부터 호환되어야 하고, 다양한 해상도에서도 문제 없이 잘 보여주는 UI를 만들어야 한다. 이에 대해 어떻게 해야 할지 생각해 본 적은 있는가?"
아쉽게도 그것까지 생각해 보지는 못 했다고 답했다.
"경력 상에는 서비스를 만들어 본 적은 없어 보인다. 개인적으로 앱을 만들어 본 적은 있는가?"
앱을 만들어 보지는 못 했다. 앱을 만들기 위해서는 연속적으로 시간을 투자해야 하는데, 전 직장에서는 야, 특근이 있어 그렇게 하기는 어려웠다. 그 대신 기초를 튼튼히 하고자 안드로이드 관련 지식을 블로그에 조금씩 정리해 왔다. 그 점을 어필했다.
"이전 직장에서 스크립트 언어를 사용한 경험이 있는가?"
아쉽게도 실무에서는 기회가 없었고, 개인적으로 파이썬을 책으로 공부해 본 적은 있었다. 뒤늦게 생각해보니 SE 파트에서 Perl로 구현된 소스를 분석한 적이 있었다. 그것을 설명하면 좋았을텐데... 그 때는 생각이 나지 않았다. 이런 실수는 하면 안 되는 것이었다.
몇 가지 질문들이 더 있었는데, 모든 걸 다 기억할 수는 없는 모양이다. 예상 질문들을 정하고, 이에 답변하기 위한 준비는 나름 열심히 했다. 그러나 예상 못한 질문들은 늘 있기 마련이다. 그런 질문들에 답을 잘 해야 하는데, 개인적으로는 내 대답이 만족스럽지 못 했다. 초반에 긴장을 너무 많이 했다. 마음만 앞서 일부 대답은 매끄럽지 못 했던 것 같았다.
마지막에 알게 된 것은 실무 면접관으로 들어오신 분이 전 직장의 협력사 출신이라는 것이다. 자바 플랫폼을 담당했다고 한다. 내가 신입사원 시절에 참여했던 프로젝트에도 같이 일했었다고 한다.
면접이 끝난 후, 나는 왜 그 분이 면접관으로 왔는지 이해가 되었다. (소속은 달랐지만) 같은 회사에서 일했기 때문에 내가 했던 일들에 대해 더 잘 이해하고 평가할 수 있다는 점. 어쩌면 내가 합격할 수 있을지는 그 분의 생각과 의견에 따라 결정될 수도 있겠다는 생각이 들었다.
내가 회의실을 나간 후, 면접관 두 분이 거기 남아서 논의를 하시는 것으로 보인다. 어쩌면 그 자리에서 나의 합격 여부를 바로 결정하는 것인지도 모른다. 아마도 다음 주에 결과가 나오지 않을까 생각한다. 일반적으로 가장 어려운 단계라는 실무 면접을 나는 통과할 수 있을까? 나 뿐만 아니라 내 주변 사람들도 모두 나의 합격을 바라고 있다. 그래서 그 어느 때보다 간절한 마음이다.
2014년 7월 27일 - 첫 단추를 잘못 끼운 내 커리어
2005년 3월부터 2014년 5월까지 제조업종에서 소프트웨어 개발자로 근무. 사실 2009년부터 단말기보다는 포탈, SNS, 쇼핑 등의 서비스 개발을 더 원하고 있었다. 그 곳에서 일하는 지인들이 부러웠다. 단말기는 진작에 그만 두고 싶었다.
처음부터 서비스 업종에서 근무하는 게 맞지 않았나 생각한다. 제조업으로 첫 직장을 다녔던 것이 경력의 첫 단추를 잘못 끼운 꼴이 되고 말았다. 왜 그랬을까...
첫 직장 2년차에 연애했고, 3년차에 결혼했고 아이도 낳았고, 몇년 동안 회사 일 하랴, 애 키우랴... 정신 없이 살다 보니 시간이 훌쩍 지나버렸다. 바쁘더라도 정신 차리고 다른 길을 모색했어야 했다. 원하는 방향으로 빨리 갈아타지 못 한 것. 후회하고 있다.
아직 늦지 않았다고 생각한다. 어렵더라도 서비스 업종으로 진입하기로 결정했다. 필요한 공부를 하고 있고, 차분히 준비하여 가고자 하는 방향으로 진출할 것이다.

코딩문제는 보편적 문제네요. 면접은 쉽지 않는 내용이였네요.
넵.. 이제 코딩 테스트는 보편적인 검증 과정으로 자리 잡고 있네요. 이직하려면 준비할게 점점 많아지고 있어요.
면접내용만 봐도 후덜덜하네요...
지원자가 많은 곳이면, 평가기준이 더 까다로우니 어려울 수 밖에요.
그래도 너무 멋있으세요!
전 첫 직장 이후로 면접 본 적은 없는거 같네요
지인 소개 이후 인터뷰 형식으로 질답 후 통과 ...
거의 비슷한 영역(금융) 에서만 일해서 그런지 개발보단 업무지식(도메인) 부분을 그냥 인터뷰 형식으로 이야기 한 것 같았네요
얼마전 쿠팡에서 일하는 후배가 추천해 준다고 한번 지원서 넣어 보라 하는데... 일단 영어 허들부터 ㅜㅜ 그리고 원하는 기술 스텍은 뭐 이리 많은지 쩝 ;;
대기업 면접까지 통과하셨다 하니 넘 멋져 보이네요 ^^
도메인을 잘 아는 분들이 이직에 유리하죠. 적어도 해당 분야에서는 선호하는 인재라고 할까요. 아쉽게도 그 회사 면접은 떨어졌어요. 다음 회에 이야기하겠지만요.. ㅠㅠ