미리보기
기본 정보

코드와 세상을 연결하는 개발자, 손승현입니다. 저는 이러한 가치를 추구합니다. 1. 지속적 성장: 빠르게 발전하는 기술 속에서 지속적인 학습을 통해 성장하려고 노력합니다. 2. 도전적 사고: 학습한 내용을 프로젝트에 적용하여 더 나은 결과물을 만들기 위해 고민합니다. 3. 협업과 소통: 효과적인 커뮤니케이션을 바탕으로 팀워크를 강화하는 것을 중요하게 생각합니다. 4. 팀원과 함께: 상호 피드백을 통해 팀원과 알거나 모르는 내용을 공유하는 것을 좋아합니다. 5. 사용자 경험: 개발한 결과물을 사용자가 편리하게 이용할 수 있도록 고민합니다.
자기소개
저는 호기심을 바탕으로 생산성을 개선할 수 있는 새로운 기술에 도전하는 것을 좋아하며, 공동 목표를 달성하기 위해 팀원과 적극적으로 의사소통하고 협업의 가치를 소중하게 여깁니다. 저는 이 가치를 지키기 위해 팀원이 뒤처지지 않도록 적극적으로 도와주었으며, 함께 프로젝트를 진행한 팀원들로부터 주로 '든든하다'는 평가를 받았습니다.
또한, 저는 iOS, Android, Web, PM, 디자이너 등 다양한 파트의 팀원들과 사이드 프로젝트를 3회 진행한 경험이 있어, 팀원의 역할을 이해하고 원활한 커뮤니케이션을 바탕으로 팀워크의 발전에 기여할 수 있습니다.
저는 '코드와 세상을 연결하는 개발자'가 되기 위해 지속적인 성장과 도전을 추구하며, 최근 회고와 정리의 필요성을 느껴 개발자 글쓰기 모임에 가입해 기술 블로그 운영을 시작했습니다. 이를 통해 배우거나 막혔던 부분을 돌아보고, 더 나아가 다른 개발자들과 지식과 경험을 공유하며 성장하고 있습니다.
기술 스택
Java, Spring Boot, JPA, MySQL, Redis, AWS, JIRA
프로젝트
부꾸러미
테오의 스프린트 18기 사이드 프로젝트
2024.12. ~ 2025.01.
개요
부꾸러미는 '부끄럽다'의 '부끄'와 '꾸러미'의 '러미'가 합쳐진 단어로, 사용자들이 평소에 부끄러워서 직접 하기 어려운 질문과 답변을 남길 수 있는 서비스입니다. 이 서비스는 '여러분은 주위 사람들에게 내가 어떤 사람이었는지 궁금하지 않으신가요?'라는 질문을 기획 의도로 삼아 만들어졌습니다.
사용자는 평소에 하지 못했던 질문(보따리)을 간단하게 만들어 주변 사람들에게 전달하고, 답변(구슬)을 받을 수 있습니다. 답변을 남긴 사람은 구슬의 색깔을 설정할 수 있으며, 그 색깔에 맞춰 메인 화면에 눈송이가 내려옵니다.
사용 기술
Spring Boot, jOOQ, AWS, MySQL, GitHub Actions, Swagger, Jira
개발 내용
SQL 문을 Java 코드로 직접 작성할 수 있고, 복잡한 JOIN의 처리와 성능 최적화에 유리한 jOOQ를 사용하여 질문별 답변 리스트 조회, 랜덤 답변 추출, 답변 생성 및 삭제 기능을 구현했습니다.
Spring에서 제공하는 Validation을 활용하여 입력 값에 대한 유효성 검증을 처리했습니다.
별도의 API를 추가하지 않고, DTO의 필드를 활용하여 회원과 비회원 구분을 구현했습니다. 이를 통해 공유 링크를 통해 접속한 비회원도 답변을 남길 수 있도록 하여, 회원 여부와 상관없이 답변 기능을 제공했습니다.
Preflight 요청으로 인한 메인 페이지 로딩 지연 문제와 CORS 오류를 해결하기 위해, CORS 설정을 관리하는 Bean을 생성하여 해당 문제들을 해결했습니다.
Spring Boot 3에서 변경된 Swagger-UI 관련 설정을 반영하여, Swagger가 제대로 배포되지 않는 문제를 해결했습니다.
RDS에 데이터가 저장될 때 Asia/Seoul 시간대가 반영되지 않는 것을 확인하여, 수정한 엔드포인트를 Jasypt로 암호화한 후 배포함으로써 문제를 해결했습니다.
GitHub Actions를 사용했음에도 계속 서버가 한 단계씩 밀려 반영되는 문제를 발견하여, Docker 명령어들의 순서를 바꾸고, Checkout Workflow의 ref 설정을 수정하여 문제를 해결했습니다.
성과
2025년 1월 배포 시작 후, 하루 만에 100명의 이용자를 확보하고, 일주일 후 이용자가 136명으로 증가했습니다. 또한, 서비스를 통해 이용자들 간에 총 101개의 질문과 282개의 답변이 활발하게 이루어졌습니다.
GitHub
Family Moments
UMC 4기 사이드 프로젝트
2024.04. ~ 2024.09.
개요
최근 현대 사회에서는 가족 구성원들이 서로의 일상을 나누는 시간이 줄어든 경우가 많습니다. 특히, 멀리 떨어져 사는 가족들은 소통하기도 더욱 어렵습니다.
이 앱은 이 문제를 해결하기 위해 가족 구성원들 사이 소통을 활성화하기 위한 목적으로 만들어졌으며, 사용자는 가족 구성원을 같은 공간에 초대하여 게시물과 사진을 업로드하고, 공유 앨범 및 캘린더 기능을 통하여 업로드한 사진을 가족들과 함께 공유할 수 있습니다.
사용 기술
Spring Boot, Spring Data JPA, AWS, MySQL, MongoDB, Redis
개발 내용
동기간 진행한 다른 프로젝트에서 데이터가 추가됨에 따라 일부 조회 API의 응답 시간이 느려지는 것을 확인했습니다. 따라서, 동일한 상황이 발생할 것을 우려해 MongoDB를 적용하고 스키마를 수정하여 게시물 및 앨범 조회 API의 응답 시간을 평균 2초에서 1초로 감소시켰습니다.
서비스 출시 전 QA 과정에서 일부 API 반환 값을 통해 개인 정보 유출 위험이 발생할 수 있다고 판단했습니다. 이를 해결하기 위해 Redis를 활용해 3분의 인증 유효 시간을 설정한 본인 인증 이메일 기능을 도입하여, 기존 문제도 해결하고 회원 가입 UX를 개선했습니다.
Staging Server를 구축해 개발 환경과 배포 환경을 분리하여 팀원들이 좀 더 안정적인 환경에서 테스트 할 수 있도록 도왔습니다.
AWS 환경 설정을 하면서 S3 버킷에 저장된 사진 객체가 제대로 삭제되지 않는 것을 발견하여, 관련 로직을 수정해 문제를 해결했습니다.
JPA를 활용해 게시글 좋아요 기능을 구현하고, 게시물 조회 API에 Paging 기능을 추가했습니다.
GitHub를 이용한 코드 리뷰 시스템을 도입하여, 총 65개의 PR에 남긴 댓글을 통해 팀원들 간에 서로 놓친 부분이나 더 나은 코드를 작성할 수 있는 방법을 알려주어 개발 생산성을 개선했습니다.
성과
2024년 9월에 Google Play Store에 앱을 정식 출시한 후, 2025년 1월까지 약 4개월 간 운영을 진행했습니다.
GitHub
Common Plant
UMC 3기 사이드 프로젝트
2023.07. ~ 2024.09.
개요
반려 식물은 사무실이나 카페 같은 여러 사람들이 이용하는 공간부터 집과 같은 개인적인 공간까지, 우리의 일상 곳곳에 존재합니다. 이 서비스는 여러 공간에 있는 반려 식물들을 한 곳에 모아 조금 더 효과적으로 관리할 수 있도록 돕는 '모두를 위한 식물 관리 앱'입니다.
사용 기술
Spring Boot, Spring Data JPA, AWS, MySQL, Swagger
개발 내용
회원별로 식물 관리 이력을 확인할 수 있는 캘린더 기능을 구현한 후, 데이터가 누적됨에 따라 API 응답 시간이 길어지는 문제를 발견했습니다. 이를 해결하기 위해 Hibernate의 Spring Data Envers를 도입하여 응답 시간을 기존의 30% 수준으로 단축했습니다.
식물 조회 화면에서 식물을 키울 수 있는 팁을 제공하고, 식물 생성 시 물 주기 설정 기능을 추가했습니다.
또한, 사용자가 물 주기를 관리할 수 있도록 식물별로 남은 날짜를 계산한 후, JPA를 활용해 오름차순으로 정렬된 식물 리스트를 메인 화면에서 조회할 수 있도록 했습니다.
팀원이 식물을 관리하는 장소에서 탈퇴했음에도 그 팀원 관련 정보가 제대로 삭제되지 않는 것을 발견하여 CASCADE를 이용해 문제를 해결했습니다. 또, 더 나은 UX를 고려하여 탈퇴한 팀원은 '알 수 없음'으로 표시하도록 로직을 개선했습니다.
성과
Swagger를 도입하여 iOS 팀원들이 더 편하게 개발할 수 있도록 했고, 개발 속도를 개선시켰습니다.
GitHub
포트폴리오
교육
광운대학교
대학교(학사) | 컴퓨터정보공학부
2018.03. ~ 2024.08. | 졸업
대외활동
Open Contribution Jam 2024
클라우드 유랑단
Open Contribution Jam 2024에 참여하여, 6시간 동안 나인크로니클의 오픈소스 프로젝트인 Mimir 중 스킬 합성 기능에 대한 단위 테스트를 작성하고, 이를 PR를 통해 반영하는 기여를 했습니다. (관련 링크)
UMC 광운대학교 3기, 4기
대학생 개발 연합 동아리 UMC
1년 동안 UMC 광운대학교의 부원으로 활동하며 학기 중에는 교내 부원들과 Spring 스터디를, 두 번의 방학 기간에는 다른 학교의 부원들과 함께 두 개의 사이드 프로젝트를 진행했습니다. 두 개의 사이드 프로젝트 모두 최초 개발 기간인 2개월 후에도 추가 개발을 진행했으며, 그 중 1개는 Google Play Store에 정식 출시되어 4개월 동안 운영되었습니다.
자격증
OPIC
IM3 | ACTFL
2024.08.
SQL 개발자(SQLD)
한국데이터산업진흥원
2024.06.
데이터분석 준전문가(ADsP)
한국데이터산업진흥원
2021.12.
정보처리기사
한국산업인력공단
2021.11.