티스토리 뷰
올해 초부터 본격적으로 개발자 취업 시장에 뛰어들어서 다양한 IT 기업에 이력서를 넣기 시작했고, 감사하게도 면접도 꽤 많이 볼 수 있었다.
"면접은 많이 봐야 는다"고 이야기 많이 들었는데 이거 진짜 100000% 맞는 말이다.
면접 볼 수 있는 기회가 생긴다면 꼭 가보는 것을 추천하고, 몇번 가보다 보면 생각보다 면접 질문들이 거기서 거기구나 하는 느낌을 꽤 받는다.
그리고 만약 다대다 면접이라면 다른 지원자는 어떻게 준비했구나 직접 들어볼 수 있는 절호의 기회이기 때문에 면접이 잡힌다면 꼭 가보는 것이 좋다..
면접비나 면접 선물? 키트를 주는 곳들도 꽤 있는데 그런걸 비교해 보는 것도 나름의 소소한 재미가 있다.
운이 좋게도 한 기업에 최종 합격하게 되었고, 그동안 취준하면서 받았던 질문 목록들에 대해 블로그에 남겨보려고 한다.
항상 물어보는 필수 질문에 대해서는 굵게 강조
[인성 질문]
진짜 흔하게 물어보는 기본적인 인성 질문.
- 간단한 자기소개
- 정말 짧게 해달라, 개발자가 되기 위해 어떤 공부를 해왔는지 위주로 해달라, 지원동기와 함께 말해달라 등.. 여러 방식으로 변형해서 요청한다
- 자신이 생각하는 성격의 장단점과 단점을 개선하기 위해 노력하는 방법 (사례와 함께 소개해달라)
- 개발자로서의 목표가 있는지, 5년 후/10년 후 목표
- 회사에 지원하게 된 동기, 우리 회사를 선택한 이유는?
- 우리 회사는 어떻게 알게 되었는지, 무엇을 하는 회사인지 조사해본 내용을 알려달라
- 회사를 선택하는 기준이 있다면 무엇인지 두가지 정도 소개해달라
- 협업하면서 갈등이 생긴 경험이 있는지, 이를 어떻게 해결했는지
- 성공 경험이 있다면? 인생에서 무엇인가를 이뤄본 경험이 있으면 소개해달라
- 스트레스를 해소하는 방법은 무엇인지?
- 취미가 뭔지, 주말에 뭐하는지?
- 도전 경험이 있다면? 인생에서 가장 큰 고비를 겪어본 경험이 있다면?
- 존경하는 사람이 있는지?
- 개발자, 백엔드 개발에 관심을 갖게된 이유가 있는지?
- 개발이 적성에 잘 맞는다고 생각하는지? 그 이유는 무엇인지
- 해당 학과로 진학한 이유는 무엇인지?
- 자신의 어떤 역량이 우리 회사와/직무와 가장 잘 맞는다고 생각하는지?
- 다른 지원자와 비교했을 때 내가 더 뛰어나다고 생각하는 부분이 있다면
- 회사에 대해 궁금한 점?
[인성 질문++]
- 업무를 진행하면서 어려움이 생긴다면 어떻게 대응할 것인가?
- 우리 회사 말고도 다른 회사에도 면접을 꽤 봤을 것 같은데, 여러 곳에 합격하면 어디를 갈 것인가?
- 주니어 개발자와 시니어 개발자의 차이가 뭐라고 생각하나?
- 자신이 생각하는 개발자에게 가장 중요한 덕목이 뭐라고 생각하나?
- 회사 생활에 있어 동료와의 화합, 내 기술적인 성장, 회사의 성장 중 무엇이 가장 중요하다고 생각하나?
- 코더와 개발자의 차이가 뭐라고 생각하나?
- 사수가 소극적인 경우 어떻게 대응할 것인지?
- 선배가 잘못된 지시를 할 경우(잘못된 정보를 전달하는 경우) 어떻게 할 것인지?
- 긍정적 피드백과 부정적 피드백의 장점과 단점을 각각 설명해봐라
- 자신은 리더형이라고 생각하는지 팔로워형이라고 생각하는지?
- 야근에 대해 어떻게 생각하는지? / 워라밸에 대해 어떻게 생각하는지? << 이거 은근 자주 물어봄
- 사업 할 생각 있는지?
- 생각해둔 연봉 수준이 있다면 솔직하게 말해달라
(부트캠프 들은 사람에 한해)
- 전공자인데 부트캠프를 추가로 들은 이유가 있는지?
- 회사와 부트캠프의 차이가 뭐라고 생각하는지?
+ 이외에도 비전공자라면 개발 직무를 선택한 이유 이런 질문은 꼭 한다고 생각하면 됩니다.
[기술 질문]
기술 질문은 신입이기 때문에 진심으로 듣도보도 못한 기술에 대한 질문을 던지지 않는다.
진짜 개발 공부 하면서 한번 이상 듣고 사용해봤던 정도 / 포폴에 적힌 내용에 대해서만 물어본다.
<자료구조&알고리즘>
- 정렬 알고리즘 아는 게 있다면 하나 설명해봐라
- 탐색 알고리즘에는 어떤게 있고, 특징은 무엇인지? (BFS, DFS...)
- 컬렉션 프레임워크의 종류에 대해 각각 설명해달라 (List, Set, Map)
- 프로젝트를 진행하면서 특정 자료구조/알고리즘을 사용해 문제를 효율적으로 해결한 경험이 있다면 소개해달라
<Java & 스프링>
- 객체지향 프로그래밍의 특징 (상속/추상화/다형성/캡슐화)에 대해 설명해달라
- Java 11을 사용했다고 하는데, Java 11의 특징은 무엇인지?
- 람다식과 스트림을 답변, 람다식과 스트림은 무엇인지 다시 질문
- 함수형 프로그래밍 어쩌고 답변, 그럼 함수형 프로그래밍이 무엇인지 다시 질문
- 스트림 사용해 봤는지? 반복문을 사용했을 때랑 성능 차이를 직접 비교해봤나? << 말문 막힘..
- 스트림과 반복문의 차이가 무엇인지?
- Call by Value와 Call by Reference에 대해 설명해달라
- 추상 클래스와 인터페이스의 차이
- 인터페이스는 왜 사용하는가?
- 스프링 프레임워크는 요청을 어떻게 처리하는지 전반적인 흐름을 설명해봐라
- 스프링 프레임워크는 왜 쓰나? 스프링의 특징에 대해 아는대로 이야기 해봐라
- DI(의존성 주입)에 대해 답변 > 의존성 주입이 무엇인지? 왜 쓰는지 설명해달라
- 코드 내에서 new 키워드 안써도 된다 > 코드 내에서 new 키워드 쓰면 안좋은 이유가 뭔지? (내가 답변을 잘못했다..)
- JPA를 사용했던데 Mybatis 사용해본 경험이 있는지? JPA와 Mybatis는 무엇이 다른지?
- JPA의 특징이 무엇인지?
- 동기, 비동기의 차이를 아는지?
<웹>
- Rest API란 무엇인지?
- HTTP 메서드에 대해 아는대로 설명해봐라
- TCP/UDP의 차이에 대해 아는대로 설명해봐라
<DB>
- 프로젝트에서 사용된 테이블 개수는 몇 개 정도 되나?
- Join의 종류에 대해 아는대로 모두 설명해봐라
- 관계형 데이터베이스와 NoSQL의 차이가 무엇인지?
- Redis를 사용해봤다고 하는데, 왜 사용했는지 이유를 말해달라
- 인덱스가 뭔지, 직접 사용해 본 적이 있는지?
- 동적 쿼리 사용해본 경험이 있는지?
- 테이블 키 설정은 어떻게 구성했는지?
- (참고) 실무에서는 외래키를 사용하지 않는 경우가 많다
<서버>
- 리눅스를 다룰 줄 안다고 했는데, 리눅스 명령어를 아는대로 모두 이야기 해봐라
- screen 명령어 언급 > 스크린은 왜 사용하는지?
- 프로세스 목록 확인하는 명령어가 뭔가?
- 리눅스 서버가 갑자기 느려졌을 때, 어떻게 대응할 것인지 이야기 해봐라
- AWS EC2를 직접 구축했다고 했는데 초기 설정을 어떻게 했는지 모두 이야기 해봐라
- Docker 사용해 봤는지?
- AWS에 배포 해보셨다고 하는데 로드 밸런싱 해봤는지?
<프로젝트 관련 및 기타>
- 프로젝트를 간단히 소개하고, 자신은 어떤 역할을 수행했는지 설명해달라
- 프로젝트 중 @@는 어떤 방식으로 구현했는지, 왜 이런 방식을 사용했는지 설명해달라
- 기술 면접의 핵심 중에 핵심 질문.. 무수한 꼬리질문을 만날 수 있다
- 이건 왜 이렇게 구현하셨나요? 그냥 이렇게 하면 되는거 아니에요? 하면 당황하게 될 확률이 높으니 준비를 잘...
- 프로젝트 중에서 가장 도전적인, 어려웠던 부분은 어떤 부분이었는지. 그리고 이를 어떻게 해결했는지
- 프로젝트를 하면서 가장 큰 실수를 한 것이 있다면 무엇인지?
- 프로젝트를 하면서 어떤 부분이 가장 힘들었는지?
- 원활한 프로젝트 진행을 위해 희생하거나 양보했던 경험이 있는지?
- 회사에서 사용해보고 싶은 기술이 있는지?
- 현재 관심을 갖고 있는 기술이 있다면?
- 가장 최근에 공부한 내용은 무엇인가? 가장 최근에 읽은 개발 서적은 무엇인지 내용을 간단하게 설명해봐라
- 가장 최근에 봤던 IT 이슈 또는 신기술은 무엇인지?
- 기타 대외활동에 관한 질문
- 학교에서 들었던 과목 중 가장 기억에 남는 강의가 있다면 무엇인지
- (코테 전형이 있었다면) 코딩 테스트는 난이도가 어땠는지? 할만 했는지?
* 생각보다 인성 질문을 많이 한다. 개발자라고 기술 면접만 준비하면 광탈의 지름길이다..
* 면접은 대부분 일대다 면접이었고 간혹 다대다 면접을 보는 경우도 있었다. 화상 면접을 볼 수도 있다!
* 소요시간은 30분~1시간 정도, 생각보다 시간 진짜 빨리 지나간다.
* 면접 복장이 진짜 처음에 고민이 많이 되는데 남자의 경우 정장 입고 가는게 진심으로 속 편하다..
- 아마 대부분 기업들이 단정한 복장, 편안한 복장으로 명시를 해놓을 것..
- 회사 바이 회사겠지만 면접 대기실에 딱 들어갔는데 나 빼고 다 정장 입고있는거 보면 괜히 그때가서 후회하게 된다...
- 복장이 크게 당락에 영향을 주는 것 같지는 않지만 심리적으로 편안..
* "아는대로 전부" 설명해봐라는 질문을 생각보다 많이 한다...
* 코드 리팩토링을 하고 성능을 개선시켜보았다고 말하려면 꼭 성능 테스트를 해보고 "수치적으로" 얼마만큼 개선되었다고 말할 수 있도록 하자!!!
** 잘 모르는거 괜히 이야기 꺼내면 큰코다친다... 질문폭격...
** 포폴/이력서에 면접관이 질문 던질만한 요소를 적절히 배치하는 것이 중요!!
- 프로젝트 중 겪었던 문제상황과 이를 해결한 방법을 정리해서 포폴에 담으면 굉장히 좋아함
** 사실 신입 수준에서 기술적으로 차별화를 준다는게 쉽지 않습니다.. 면접 보러가면 부트캠프 출신에 프로젝트 경험 갖춰온 지원자 굉장히 많습니다. 실무에서 일하는 면접관 시점에서는 그냥 고만고만한 프로젝트, 고만고만한 기술스택..
합격 후 나중에 면접관이었던 팀장님과 얘기해봤을때 목표가 뚜렷한 사람을 굉장히 인상깊게 봤다고 얘기합니다.
나는 구체적인 목표가 있고
-> 그 목표를 위해 이러한 준비를 해왔고
-> 이 회사에서 이러한 것을 통해 내 목표를 이루고싶다는 것
보여주면 정말 좋은 인상을 남길 수 있을거라고 생각합니다.
★ 자신의 목표가 무엇인지를 꼭꼭 생각해보고 가시길 바랍니다.. 꼭!!
단순히 "음 그냥 자바 스프링 백엔드 개발 아무거나 하고싶은데요?" 말고,,
그리고 마지막으로..
어려운 취업 시장속 백엔드 개발자를 목표로 하는 모두에게 건승을 빕니다.
'나머지' 카테고리의 다른 글
2022 윈터 코딩 스타트업 인턴 프로그램 코딩테스트 후기 (1) | 2022.11.05 |
---|---|
인생 첫 코딩테스트를 보고나서.. 후기 (2) | 2022.11.03 |
## 기술 면접 대비 질답 ## (0) | 2022.10.03 |
아차차 아차산! (0) | 2022.08.27 |
배민커넥트 도보, 과연 얼마 벌까? 한 달 후기 및 팁 (1) | 2022.08.08 |