개발자 포트폴리오, 개발자 이력서는 어떻게 작성해야 할까?, 면접은 어떻게 잘 볼 수 있을까?
Session
- 개발자의 이력서 작성하는 법
- 개발자의 포트폴리오 만드는 법
- 면접을 잘 보는 법
들어가기 전
상대방이 뭐에 대해 관심이 있을지 생각해봐야 한다.
- 원래는 질문이 좋아야 좋은 답이 나오기 때문에 회사에서 좋은 질문을 해야하는 것이 맞다.
- 하지만, 이력서의 질문들은 좋지 않은 질문들이 많다.
- 따라서! 질문이 어떻든 극복해야한다. 우문현답을 내야한다. 자신이 효과적으로 전달 해야 한다.
개발자의 이력서 작성하는 법
1. 사용 언어 작성 시
보는 사람 입장에서 기준이 명확해야 좋다.
- skill 부분에 에디터나 IDE를 쓰지 않는다.
- Word, Excel, PhotoShop… 쓰지 않는다.
- EX) c++을 주력 언어로 사용하는 사람의 경우
- 프로젝트를 몇 개 진행해봤다.
- STL를 이용해서 뭘 했다.
- Socket (IOCP)
- multi thread 프로그래밍 (1000대 정도)
2. 인성 작성 부분
기본적으로 보는 것은 ‘인간이 됐나’와 ‘열정과 성의’를 본다.
- 이력서를 한 명이 보고 결정하는 경우는 적다.
- 대부분 회사의 경우 인사팀에서 먼저 이력서를 확인하고 거른다.
- 기술적인 것을 검토하기 어렵기 때문에 기술보다 인성을 먼저 본다.
- 열정과 성의.
- 천재보다는 성실한 사람을 뽑겠다는 회사가 많다.
- 즉, 이력서에 성의가 없으면 탈락. 아래와 같은 이력서들은 빠르게 제낀다.
- 포트폴리오가 없는 경우
- 대부분을 한 줄로만 대답한 경우
3. 형식 조언
정리, 요약하라.
- 이력서 형식은 Editor에 따라 다르다.
- 요약 해서 작성한다.
- EX) 1.2.3.
- 주저리주저리만 적어 놓으면 읽기가 싫어진다.
중요 포인트에 굵기 표시를 한다.
- 중요 포인트를 보고 흥미로워야 한다.
- 그렇다면 어떤 것이 흥미로울까? => 기술적인 부분!
4. 내용 조언
너무 솔직할 필요는 없다.
- 함정 질문에 빠지지 마라.
- Q) 장단점?
- EX) 저는 게으르고, 성격적으로 장애가 있다.
- 왜 써..
- 걸러내기 위해서 함정을 판다. 걸러지면 안된다!
- Q) 장단점?
지루해지면 안된다.
- 문장 자체 뿐만 아니라 본인이 인상 깊었던 이야기가 노잼이면 짜증난다.
- Q) 당신에게 있어서 가장 인상깊었던 것은?
- 굉장히 개인적인 자신의 인생경험 이야기들은 남들에게는 진짜 재미가 없다.
- Q) 존경하는 개발자?
- EX) 빌게이츠 X (유명한 사람들 쓰지 마라.)
- EX) 스티브잡스 X (개발자를 써야 되는 건 당연하다. 개발자가 아닌 사람은 쓰지 마라.)
- EX) 우리학교 선배 X (너무 모를 만한 사람 쓰지 마라.)
- 별로 존경하지 않지만 그래도 호불호가 갈리지 않을 사람을 찾아서 써라.
- 근거가 있고 진지하게, 관심이 있어 보이게 써라.
- 언어적으로나 프레임워크를 개발한 사람.
- A) 데니스 리치(C 언어), 켄트 벡(익스트림 프로그래밍 창시자)
정치적, 종교적인 거를 절대 드러내지 마라.
5. 기술 작성 부분
기술적으로 유혹하자.
- 기술적인 포인트를 써라.
- 너무 진지하게만 작성하려고 하지 말고, 자신이 읽어보고 그 포인트들이 흥미로운지 재미가 있는지 판단하라.
- 자신이 했던 것 위주의 프로젝트 내용을 요약해서 작성하라.
- EX1) Java, Spring은 별도로 둔다.
- 언어: Java 8 (버전도)
- Java 8을 이용한 asynchronous network programming
- 프레임워크: Spring
- 프로젝트:
- Spring을 이용하여 ~~ 상용 프로그램을 만들었다.
- 언어: Java 8 (버전도)
- EX2) Python, Django은 별도로 둔다.
- 언어: Python3 (버전도)
- 프레임워크: Django
- 프로젝트: “협업 웹 메신저”
- Django를 이용하여 인증서버, 채팅서버를 구현했다.
- 이 프로젝트에서 기술적으로 어려웠던 부분, 해결한 부분
- EX1) Java, Spring은 별도로 둔다.
- 프로젝트 부분이 있으면 굉장히 좋다.
- 학교 공부한 것이 아니라 프로젝트로 한 것이 중요하다.
- 어떤 프레임워크나 어떤 언어를 이용하여 프로젝트를 몇 개 해봤다.
- 만약, 프레임워크를 썼다 뿐만 아니라 뜯어 봤다고 하면 진짜 플러스 플러스
공부했던 중요 책들을 소개해서 적는 것도 매우 좋다.
- 이거까지 봤어? 이런 느낌이 든다.
개발분야는 기술적인 것만 관심이 있다.
- 유혹될 수 있을 만한 굉장히 개발적인 이야기를 적어라.
- EX) 동아리 회장으로서 뭘 이끌었고…
- 관심 없다…
TIP
사실, 인턴이나 취업을 해서 최대한 빨리 업계에서 배우는 것이 성장률이 빠르고 이력에 작성하기 좋다.
개발자의 포트폴리오 만드는 법
1. 내용 조언
자신이 한 부분을 어필하자!
- 설명이 없으면 안된다.
- 자랑만 하는 것은 의미가 없다.
- 팀 프로젝트를 조심하라.
- 이런 프로젝트를 했다. 끝.
- 자기가 얼마나 했는지가 안나와 있다.
- 자신이 한 부분을 어필해야한다.
- 해당 프로젝트의!! github 주소를 적어야 한다.
맨 처음에 세 줄 요약이 필요하다!
- 강조하는 두 페이지
- 1page:
- 자신의 기술 스펙 요약
- 이력서 공간에 쓰지 못했던 자세한 기술 요약
- c++ 언어는 학교에서 얼마나 공부했고
- 개인적인 프로젝트는 얼마나 했고
- 팀 프로젝트는 얼마나 했고
- STL과 network programming은 어느 정도 했고
- Boost 라이브러리는 얼마나 보고 있고
- 개발 관련 알바/외주는 어떤 것을 해봤다.
- 등등을 굵기 조절해서 요약하자!
- 이력서 공간에 쓰지 못했던 자세한 기술 요약
- 자신의 기술 스펙 요약
- 2page:
- 프로젝트 요약
- 어떤 프로젝트인지 한 줄 요약
- 해당 프로젝트에서의 자신의 역할
- 자신이 기술적으로 무엇을 얼만큼 어디까지 했는지
- 자신이 썼던 프레임워크
- 프로젝트 요약
2. 형식 조언
디자인을 잘하자!
- 디자인을 잘해야 한다.
- 감각이 없어도 괜찮은 템플릿을 골라라.
- 디자인이 나쁘면 보기가 싫다.
- 깔끔한 느낌이 제일 좋다.
- 최대한 pdf로 보내라.
- ppt라면 깔려 있을 것이라고 예상되는 폰트를 사용한다.
- ‘한글과컴퓨터 한글’은 사용하지 않는 것이 좋다.
- MAC에서 보내는 것도 주의하자!
- 개발적이지 않은 필요 없는 자료는 넣지마라.
- 누가봐도 문제 없도록 표준적인 내용을 써라.
- 개그가 통할 수도 있고 통하지 않을 수도 있다.
- 오바스럽지 않게 작성한다.
면접을 잘 보는 법
1. 보는 사람마다 다 다르다.
보는 사람마다 다 다르기 때문에 확실한 답이 없다. 그렇지만..!
- 창의력과 천재력??
- EX) 마이크로소프트 스타일
- 후지산을 옮기려면 어떻게 해야하나?
- 서울에 맨홀뚜껑이 몇 개가 있을까?
- 운전하면서 옆자리에 앉을 수 있는 아저씨, 할머니, 이상형 여자 누구를 태울 것인가?
- EX) 마이크로소프트 스타일
- 보는 사람마다 다 다르기 때문에 확실한 답이 없다.
- 경력자가 아닌 이상은 실력이 거의 비슷하다.
- 하지만 대부분은 개발을 진짜 사랑하는지를 본다. (발전 가능성이 있다고 생각하기 때문)
2. 반드시 개발 부분에 대한 질문을 한다.
그럼에도 불구하고 면접에서 중요한 것은 개발적인 것을 물어본다.
- 기본기
- 거의 대부분이 물어본다. 하지만 기대치가 낮다. 적당한 수준에서 대답을 하면 된다.
- EX) 동기 프로그램 / 메모리 / 스레드 / queue의 구조 / IOCP / ICP
- EX) 운영체제 / 자료구조 / DB / 네트워크 프로그래밍 (Low한 쪽으로) / Struct -> OOP
- IT에서의 바뀌지 않는 기초들은 스스로 공부를 하면서 닦아 나가야 한다.
- 대신 면접 대비 문제를 통해 스피드있게 공부하여 면접을 대비할 수 있다.
- 개발자로 오래가고 성공하려면 굉장히 중요한 부분
- 거의 대부분이 물어본다. 하지만 기대치가 낮다. 적당한 수준에서 대답을 하면 된다.
- 응용 범위
- 중요하다.
- 이력서에서 적은 내용을 바탕으로 질문을 한다.
- 질문할 수 있는 소재가 굉장히 다양하다.
- EX) 프레임워크
- 면접관을 유도하자!
- 면접관만 유도를 하는 것이 아니다. 면접을 당하는 사람도 유도를 해야한다.
- 기본기에 대한 얘기를 하면서 응용 범위로 자연스럽게 넘어갈 수 있도록 유도를 하자!
- 해당 기본기 질문에 대한 답을 조금만 하면서 그것을 적용했던 프로젝트로 유도를 한다면 면접관도 자연스럽게 넘어온다.
- EX) 이런 프로젝트를 했을 때 이런 식으로 사용했었다. ~
- 유도심문에 넘어가지 마라!
- Q) 지금 IT 업계에서 지원자가 별로 없고 많이들 떠나는 추세여서 굉장히 힘든 상태인데 혹시 언제까지 개발할 생각인가? 혹시 다른 것도 관심이 있는 것이 있나?
- A1) ‘5 ~ 10년 정도 개발하고 제가 진짜로 할 거를 찾을 것입니다.’라고 한다면… 뽑는 사람쪽에선 ‘아 얘는 금방 나갈 친구구나!’라고 생각한다.
- A2) ‘저는 무덤갈 때까지 키보드를 잡고 있을 겁니다.’라고 한다면… ‘개발에 열정은 있는 친구구나!’라고 생각한다.
- 즉, 오버는 하지 말고 개발에 열정있는 모습을 보여주는 것이 좋다.
- 적당히 타협하려는 모습은 안좋다.
- 너무 거만한 모습을 보이지 마라!
- 개발자 중에는 거만한 사람이 많다.
- 그런데, 그런 사람들이 거만한 친구들을 진짜 싫어한다.
- 그러므로 면접에서의 거만한 모습은 주의해야한다.
- 발랄해 보이자!
- 되게 어두워 보이는 사람을 좋아하지 않는다. 발랄해 보여야 한다.
- 긴장하지 말고!!!
- tension을 높여라. - 면접 전에 롤 한 판 지고 면접 봐라.
- 프로젝트 경험을 통해 자신만의 응용범위가 생겼다면 여러 명이 함께들어가는 단체 면접이 훨씬 유리하다.
- why? 우리는 기본기 질문보다는 응용 범위 질문이 많이 나오면 좋을 것이니까
- 자신의 응용 범위를 통해 다른 사람들과 차별화되는 자신만의 장점을 활용한다.
- EX) Jenkins / nGrinder / Websocket
감사 인사
‘스마일게이트 서버개발캠프’의 ‘계동원’캠프장님의 조언에 진심으로 감사드립니다.!