새소식

xub2의 개발 새발 🐾
⽣ Life/취준

첫 시험/면접 후기 : JPA 중심적 개발의 문제점

2026. 7. 3. 14:38

  • -


데브코스를 수료하고 본격적으로 이력서를 넣기 시작한지 두달 쯤 되었을까, 처음으로 서류 합격 연락을 받고 시험과 면접을 보고 왔다.

회사명이나 세부 도메인은 대외비라 밝히지 않고, 겪은 일과 거기서 느낀 점 위주로 정리해본다.

정장 입으니 덥더라..


SQL 만 시험본다고요 ?

지금까지 준비하면서 당연히 알고리즘 코딩 테스트를 볼 거라 생각했는데, 이 회사는 조금 특이하게 SQL만 시험을 본다고 했다.

처음엔 "SQL이 그냥 코테 보다 낫겠다"라고 가볍게 생각했는데, 막상 준비하면서 그게 착각이었다는 걸 깨달았다.

최초에 DB공부할 때 제외하고 프로젝트 할 때는 JPA와 Spring Data JPA 위주로 개발을 해왔다 보니, 순수 SQL을 직접 작성할 일이 거의 없었다. 그래서 시험 통보를 받고 3일 동안 프로그래머스 SQL 코테 문제를 빡세게 풀었다.

(추가로 오라클 DB로 시험 본다고 미리 공지해주셔서 문법이랑 함수 좀 공부해갔다.)


시험 당일

시험장에는 나를 포함해 10명이 한 테이블에 앉아 동시에 시험을 봤다. 테이블 구조가 정리된 명세서를 받았고, DBeaver로 실제 DB에 접속해서 문제를 푸는 방식이었다(프로그래머스 포맷이랑 달라서 이게 오히려 어렵더라).

한 시간 동안 SQL 문제 3개가 나왔다.

  1. 테이블 4개 조인 + 필터링: 연습할 때는 계속 키 하나로만 조인하는 걸 연습했는데, 실제 시험에서는 키를 3~4개씩 써서 조인해야 하는 문제가 나왔다. 이 부분에서 꽤 애를 먹었다.
  2. 나이 계산: VARCHAR 타입으로 저장된 생년월일(YYMMDD 형식)을 가공해서 2026년 기준 나이를 출력하는 문제였다.
  3. 연도별 입사자 수 집계: 연도별로 입사한 사람 수를 출력하는 문제였는데, 이 문제는 손도 제대로 못 대서 첫 번째와 두 번째 문제까지만 풀고 마무리했다.

키를 여러 개 써서 조인하는 문제에서 유독 헤맸는데, JPA로 개발할 때는 연관관계 매핑만 잘 해두면 조인 자체를 신경 쓸 일이 거의 없다 보니, 정작 SQL을 직접 짜야 하는 상황에서 감각이 많이 무뎌져 있다는 걸 체감했다.


시험을 보고 깨달은 것들

SQL 잘 쓸줄 알아야 한다..

데이터베이스 동작 원리를 이해하는 것도 중요하지만, 결국 SQL을 잘 작성할 줄 아는 게 더 근본적인 능력이라는 생각이 들었다.

면접에서 면접관님이 본인들 시스템에는 1000줄짜리 SQL 쿼리도 있다고 말씀하셨다.

 

왜 JPA를 안 쓰는가

이 회사는 JPA를 사용하지 않는다고 했다. 이유를 여쭤보니, 예전부터 운영해온 시스템은 중소기업 특성상 인적 자원이 한정적이라 마이그레이션이 쉽지 않고, 그래서 SQL 역량을 직접 시험으로 확인한다고 하셨다.

이 말을 듣고 다시 생각해보니, JPA도 결국 근본은 SQL이고, SQL을 직접 신경 쓰지 않고 개발할 수 있도록 만든 추상화 기술일 뿐이다. 추상화 위에서만 개발하다 보면 그 아래 있는 근본을 놓치기 쉽다는 걸 이번에 확실히 느꼈다.

 

여전히 많이 쓰이는 오래된 기술

JSP 같은 기술도 여전히 현업에서 많이 사용되고 있다는 걸 새삼 느꼈다.

  • MSA 같은 기술도 좋지만, 그걸 운영하려면 그만큼 회사 규모와 인프라가 뒷받침돼야 한다.
  • JSP, 구버전 Spring 등은 중소기업 코드베이스에 여전히 많이 남아있다.

강의나 데브코스에서 최신 기술 스택 위주로 배우다 보니 상대적으로 이런 기술들을 가볍게 여겼던 것 같은데, 실제 현업에서는 아직 이런 기술이 널리 쓰인다는 걸 인지하고 무시하지 말아야겠다는 생각이 들었다.

오히려 어렵게(로우레벨로) 쓰는 법을 알아야, JPA 같은 고수준 추상화 기술을 쓸 때도 내부 동작을 이해하고 제대로 활용할 수 있을 것 같다.


면접

면접 내용은 대외비라 구체적으로 밝히기는 어렵다. 다만 분위기 자체는 나쁘지 않았다는 정도만 남긴다.

다만 시험 결과가 합불에 꽤 큰 영향을 미치는 것 같다는 인상을 받았는데, 원래 오늘 중(면접 기준 다음날)으로 연락을 준다고 했지만 아직 연락이 없는 걸 보면 아무래도 좋은 결과는 아닌 듯하다 ㅎㅎ.


마무리

결과와 별개로, 이력서를 손보고 나서 처음으로 서류 합격을 해봤다는 것 자체는 고무적으로 생각하려 한다. 그리고 첫술에 배부르면 좋겠지만 그러기도 어려운걸 너무 잘 알고 있다.

이번 시험으로 SQL 역량의 빈틈을 확실히 확인했으니, 앞으로는

  • 순수 SQL 작성 연습 (특히 다중 키 조인)을 꾸준히 하고
  • JPA가 내부적으로 어떤 SQL을 생성하는지 더 관심 있게 들여다보고
  • 오래된 기술 스택에 대한 이해도도 놓치지 않으려 한다.

다음 시험/면접에서는 이번에 못 풀었던 유형의 문제를 확실히 풀 수 있도록 준비해야겠다.

그럼 20000!

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.