spring 취준생인데 현실적으로 지금 제 수준으로 취업이 가능한지 궁금해요
안녕하세요! 지방 4년제 컴퓨터공학과 졸업 후 1년 가까이 취업 준비 중인 백엔드 개발자 지망생입니다.
아직 실제 회사에 지원은 안 해봤고, 현재는 포트폴리오로 사용할 개인 프로젝트를 만드는 중인데 경쟁력이 있을지 궁금해서 질문 드려요..
지금 포트폴리오 목적으로 Spring Boot 기반으로 인스타그램을 참고한 SNS 백엔드 API 서버를 혼자 설계/개발하고 있고,
단순 구현보다는 “설계 중심”, 특히 실무에서 바로 활용 가능한 구조를 목표로 잡고 있습니다.
스택: spring security, batch, queryDsl, stomp, postgres, redis, kafka, aws, docker
아래는 제가 신경써서 구현했던것들 gpt한테 질문글 올릴거라고 정리해달라고 해봤어요 ㅋㅋㅋㅋ
1. 아키텍처 및 계층 설계
헥사고날 아키텍처 기반 멀티 모듈 구성
단일 책임 원칙(SRP)에 기반한 서비스/유즈케이스 분리
각 계층 및 모듈간의 의존성은 방향이 바깥 → 안쪽으로만 흐르도록 설계해서 dip 및 계층 간 결합도를 낮추도록 최대한 solid 원칙 준수하여 설계
2. 도메인 주도 설계 마인드 적용
도메인 모델과 JPA Entity 분리
도메인 전용 메서드 활용 (ex. post.markAsDeleted())
도메인 전용 예외 + 기능 단위 에러코드 enum 체계화
실제 비즈니스 로직은 도메인 내부에서 처리
3. 인프라 / 운영 고려
Redis 활용: 단순 토큰 저장뿐 아니라 로그인/인증 상태 관리, 이메일 인증, 중복 조회수 방지 등에서 활용
Kafka 이벤트 기반 아키텍처 적용: 알림 등 부가 기능 비동기 처리
AWS 배포 자동화: GitHub Actions 기반 CI/CD + S3, EC2, RDS 구성
배치 작업: 소프트 딜리트 처리된 데이터 정리용 Spring Batch 구성
4. AWS + CI/CD + Docker Compose 기반 운영
AWS EC2 기반 배포 → EC2 + S3 구성
GitHub Actions로 CI/CD 파이프라인 구축
Docker Compose로 PostgreSQL, Redis, Kafka, Spring API 서버 등 통합 구성
환경별 .env 파일 관리
개발 환경을 로컬에서 곧바로 실행 가능하게 함으로써 실무 수준의 인프라 구성
5. 최대한 실무에 가깝게 디테일 구현
이미지 업로드 시 확장자/MIME 검증, 파일 사이즈 제한, 업로드 순서 관리 등 실제 서비스 검증 기준 검증
Soft Delete 구조에서도 관련 데이터 정합성 관리
API 요청/응답 포맷 표준화, 오류 응답 통일, 상태 코드 설계 등 전반적인 API 설계
쿼리 최적화: N+1 방지, Projection 적용, 통합 조회 구조 설계
6. 테스트 구조 및 전략
단위 테스트: 순수 Java 기반 로직 검증 (비즈니스 로직 중심)
API 통합 테스트: SpringBootTest + @Transactional + RestAssured
시나리오 기반 테스트 구성
실제 다양한 사용자 시나리오 기반 테스트
Fixture 기반 테스트 리팩토링
가독성과 재사용성을 높이기 위한 Fixture를 이용한 테스트
테스트 시나리오 목적에 따라 필요한 데이터만 선택적 로딩이 가능하도록 설계
Spring RestDocs로 문서화
특출난 기능이 있다거나 그런거는 아니고 개발 처음부터 실제 서비스를 똑같이 만들어보는게 목표여서 쓰레드나 인스타그램을 참고해서 만들어서 기본적인 기능들(게시글 관련, 채팅 등)은 구현되어 있습니다
다만 대용량 트래픽 처리 같은거는 안 해봐서 모르겠네요..
다른 사람들의 깃허브 보면 정말 비슷하게 되어있는 분들도 있고 단순 CRUD인 분들도 있는데 이정도면 경쟁력이 있는지 궁금해요..!
이렇게 만드는게 재밌어서 하나하나 기능 추가해가면서 만들고 있는 상황인데 만년 취준생 할 수도 없고, 아직 면접을 본 적도 없어서 모르겠어요
혼자 개발하는거라서 신경도 안 쓰고 있다가 중간에 jira를 사용해서 태스크 관리도 하고 브랜치랑 pr도 연결해서 문서화도 신경쓰면서 하고 있습니다!
아직 자소서도 안 써봤고 코테, 백준 같은 것들 재미없다고 안 했어요,,정말 이 프로젝트랑 정처기가 전부입니다
현실적인 조언 부탁드립니다
