티스토리 뷰

올해 초부터 본격적으로 개발자 취업 시장에 뛰어들어서 다양한 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시간 정도, 생각보다 시간 진짜 빨리 지나간다.

 

* 면접 복장이 진짜 처음에 고민이 많이 되는데 남자의 경우 정장 입고 가는게 진심으로 속 편하다..

- 아마 대부분 기업들이 단정한 복장, 편안한 복장으로 명시를 해놓을 것..

- 회사 바이 회사겠지만 면접 대기실에 딱 들어갔는데 나 빼고 다 정장 입고있는거 보면 괜히 그때가서 후회하게 된다...

- 복장이 크게 당락에 영향을 주는 것 같지는 않지만 심리적으로 편안..

 

* "아는대로 전부" 설명해봐라는 질문을 생각보다 많이 한다...

 

* 코드 리팩토링을 하고 성능을 개선시켜보았다고 말하려면 꼭 성능 테스트를 해보고 "수치적으로" 얼마만큼 개선되었다고 말할 수 있도록 하자!!!

 

** 잘 모르는거 괜히 이야기 꺼내면 큰코다친다... 질문폭격...

 

** 포폴/이력서에 면접관이 질문 던질만한 요소를 적절히 배치하는 것이 중요!!

- 프로젝트 중 겪었던 문제상황과 이를 해결한 방법을 정리해서 포폴에 담으면 굉장히 좋아함

 

** 사실 신입 수준에서 기술적으로 차별화를 준다는게 쉽지 않습니다.. 면접 보러가면 부트캠프 출신에 프로젝트 경험 갖춰온 지원자 굉장히 많습니다. 실무에서 일하는 면접관 시점에서는 그냥 고만고만한 프로젝트, 고만고만한 기술스택..

 

합격 후 나중에 면접관이었던 팀장님과 얘기해봤을때 목표가 뚜렷한 사람을 굉장히 인상깊게 봤다고 얘기합니다.

 

나는 구체적인 목표가 있고

-> 그 목표를 위해 이러한 준비를 해왔고

-> 이 회사에서 이러한 것을 통해 내 목표를 이루고싶다는 것

보여주면 정말 좋은 인상을 남길 수 있을거라고 생각합니다. 

 

★ 자신의 목표가 무엇인지를 꼭꼭 생각해보고 가시길 바랍니다.. 꼭!!

단순히 "음 그냥 자바 스프링 백엔드 개발 아무거나 하고싶은데요?"  말고,,

 

그리고 마지막으로..

어려운 취업 시장속 백엔드 개발자를 목표로 하는 모두에게 건승을 빕니다.

할 수 있다!!

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함