About Me
Introduce
- 안녕하세요! 밥은 덜어 먹어도 피드백은 곱빼기로 부탁하는 개발자, 조희진입니다.
- 세 차례의 팀 프로젝트 중 두 번의 ‘베스트 멤버’로 선정될 수 있었던 것은, 열린 자세로 소통하고 팀워크를 중시한 결과였습니다.
- 함께할수록 더 좋은 결과를 만드는 사람, 신뢰받는 개발자로 성장해가고 있습니다.
Skills
Java & Spring Boot 🟩🟩🟩🟩⬛
- VO와 정적 팩토리 메서드를 활용하여 객체 생성을 명확히 하고, DTO 수집용 Collector를 일급 컬렉션 패턴으로 설계해 setter 없이도 불변성을 유지
- @Scheduled 기반 polling 구조를 Kafka 이벤트 기반 구조로 전환하여, 실시간 정합성 확보 및 리소스 낭비 최소화
- @Transactional을 활용해 다중 INSERT 시 원자성을 보장하고, 데이터 무결성을 유지
MySQL 🟩🟩🟩🟩⬛
- 설문조사 기능 구현을 위해 7개 테이블(템플릿, 항목, 문항, 응답 등)로 세분화하여 정규화 하여, 설문 유형 변화에도 유연하게 대응 가능한 구조로 설계하여 유지보수성과 확장성 확보
- 여행 경로 테이블과 게시글을 분리 설계하고, 중간 실패 시 데이터가 남지 않도록 트랜잭션 처리로 무결성 확보
Kafka & Redis 🟩🟩🟩🟩⬛
- 설문 데이터 전송을 Kafka pub/sub 구조로 구현하여 앱과 대시보드 간의 데이터 유실 없이 비동기 통신
- Redis ZSet의 rangeByScore()를 활용해 유사 점수 사용자 추출 로직 구현, 평균 응답 시간 474ms → 11ms (97.41% 향상)
- 또한 Redis Keyspace Notifications로 만료 알림을 받아 deleteUsers() 호출 조건 최적화, CPU 사용률 9.09% 절감
Docker & CI/CD 🟩🟩🟩⬛⬛
- Docker Compose를 사용해 WebRTC 서버, Spring Boot 백엔드, Redis, MySQL 등 멀티 컨테이너 환경 구성
- Jenkins를 통해 develop 브랜치 push 시 자동 빌드/배포되도록 파이프라인 구축
- Nginx로 HTTPS 인증 및 리버스 프록시 설정 완료
Projects
데이터 기반 은둔·고립 청년 통합 관리 솔루션 다시빛, 디어리