미리보기
기본 정보
Java와 SpringBoot를 활용해 웹 플랫폼을 개발한 신입 백엔드 개발자입니다. 쉘 스크립트를 통한 CI/CD 파이프라인 구축, Nginx 리버스 프록시로 CORS 문제를 해결한 경험이 있으며, 해커톤 MVP 프로젝트에서 팀원으로서 자기주도적으로 의견을 제시하고, 협업을 통해 기술적 문제를 해결하여 2등을 수상한 경험이 있습니다. 또한, 기술 스터디와 블로그를 통해 지식을 체계화하고 팀원들과 공유하여 함께 성장하는 것을 지향합니다.
기술 스택
Java, MySQL, JPA, nginx, Shell Script, aws-ec2, aws-rds, Spring Boot
프로젝트
특정 사이트의 이벤트 DOM 구조를 크롤링하여 푸시 알림을 제공하는 서비스
대학교 졸업 프로젝트
2024.03. ~ 2024.06.
Java17, SpringBoot3, Jsoup, JPA, MySQL, AWS EC2, RDS, Nginx
하나의 자바 어플리케이션에서 관리하기 위해 Jsoup 라이브러리를 사용하여 이벤트 DOM 구조를 크롤링
aws ec2 서버 내에서 쉘 스크립트를 작성하여 프론트 및 백엔드 어플리케이션에 대해 ci/cd를 구축
노션 및 Miro 툴을 활용하여 아이디어 제시, 프로젝트의 기술 스택 및 시장 조사를 수행
AWS EC2 서버에서 Certbot 라이브러리를 활용하여 SSL 인증서를 발급 및 적용 후 웹 사이트 보안 강화
프론트엔드와 백엔드의 포트번호가 달라서 Nginx 리버스 프록시를 활용하여 CORS 문제 해결
Gitflow 전략을 활용하여 브랜치 관리 및 팀 컨벤션으로 적용
고용주와 프리랜서 간에 매칭 및 모니터링 해주는 웹 서비스, 해커톤 MVP 프로젝트
Aim for Impact(디스코드 글로벌 해커톤)
2024.02. ~ 2024.03.
Java, SpringBoot, mysql, JPA
PM이 제시한 요구사항 중 불분명한 부분을 명료하게 하기 위해 디스코드 상에서 토의를 진행
사용자의 신원을 확인하기 위해 지메일 smtp 서비스를 사용하여 사용자 이메일 인증 시스템 구현
스프링 데이터 JPA를 사용하여 고용주, 프리랜서의 데이터 관리
대외활동
백엔드 스터디
IT 개발동아리 - GDSC 홍익
백엔드 커뮤니티 스터디원으로서 백엔드 서버 프레임워크로 사용되는 스프링의 기초를 학습했으며, 그 과정에서 "스프링 입문을 위한 자바 객체 지향의 원리와 이해" 서적을 읽으며 객체지향적인 코드 설계를 배웠습니다.
교육
홍익대(서울)
대학교(학사) | 컴퓨터공학과
2022.03. ~ 2024.08. | 졸업
한성대
대학교(학사) | 경제학과
2016.03. ~ 2021.08. | 중퇴
한영외국어고등학교
고등학교 | 인문계
2011.03. ~ 2014.02. | 졸업
자격증
OPIc in English
IH | ACTFL
2024.06.
정보처리기사
한국산업인력공단
2024.09.
외국어
영어
비즈니스 회화 가능
자기소개
자기소개서
사람들에게 편리함을 주기 위해 노력하는 개발자입니다.
[백엔드 개발자를 선택하게 된 이유]
대학교 재학 동안 개발 동아리를 하면서 웹에 대한 지식을 넓혀갔으며, 서버를 통해 데이터가 오고 가는 것에 흥미를 느껴 백엔드 직무에 지원하고자 합니다. 저는 백엔드에 대한 이해를 깊게 하려고 개발 동아리에서 주최한 백엔드 스터디를 통해 스프링 프레임워크와 DBMS의 전반적인 구성 및 원리를 학습하였고, 병원 환자 관리 시스템을 간단하게 만들어서 데이터베이스 구축 및 설계 과정도 학습하였습니다. 또한, 학습한 지식을 잊어버리지 않기 위해 블로그에 문서화를 틈틈이 진행해오고 있습니다.
[기억에 남는 개발 프로젝트]
대학교 4학년에 진행한 캡스톤 프로젝트가 가장 기억에 남았습니다. 왜냐하면 저는 프로젝트를 진행할 때 개발이 가장 우선순위가 높은 건 줄 알았는데 그보다는 아이디어 기획 및 와이어프레임 설계에 80% 정도를 투자해야 개발 과정에서 문제가 생겼을 때 기획 단계로 다시 돌아가는 일이 적음을 몸소 깨달았기 때문입니다. 그리고 AWS 클라우드 서비스를 사용하여 웹 배포를 처음 진행하였는데 RDS 연결 및 보안 규칙 등 여러 가지 설정해야 할 것이 많아서 시간 투자를 많이 했었고, 스프링 프레임워크를 통한 RESTful API 설계 외에도 https 설정, nginx 리버스 프록시를 사용하여 포트 번호가 다른 프론트와 성공적인 API 통신, 그리고 노션을 통한 API 문서화와 같이 안정적인 웹을 설계하기 위해 부수적인 업무들이 있다는 것을 알았습니다.
[성격의 장점과 단점]
저는 맡은 역할에는 끝까지 책임지고 전력을 기울인다는 사명감이 있기 때문에 도중에 프로젝트를 포기하지 않고 최대한 투자하여 프로젝트를 끝내고자 하는 성향이 있습니다. 그래서 팀원 간에 사정이 생기면 카카오톡 외에도 슬랙, 디스코드를 통하여 프로젝트에 대한 의견 및 피드백을 적극 받아서 프로젝트에 빠르게 반영했습니다. 그러나 저는 새로운 사람들에 대해 낯을 가리는 성격이 있어서 처음에는 프로젝트에 대한 의욕이 낮아 보이고 팀원들과 만나서 직접 소통하는 방식이 적합하지 않다고 보일 수도 있습니다. 저는 그러한 점을 잘 알고 있기 때문에 현재는 여러 가지 프로젝트를 진행하면서 소통 능력 증진 및 효율적인 의견 공유를 연습하면서 단점을 개선해 나가고 있습니다.
[협업 및 팀워크 경험]
지인의 추천으로 온라인 해커톤에 참가를 하였는데, 다양한 나라 출신의 프로덕트 리드, UX 디자이너, 그리고 프론트엔드 엔지니어들과 같이 한 팀을 구성하였습니다. 저희는 제한된 한 달 기간 동안 MVP 프로덕트를 만들어야 했고 팀원들의 시간대가 달라서 디스코드를 통해서 프로덕트를 만들기 위한 아이디어 및 소프트웨어 개발 회의를 진행하였습니다. 비록 의사소통하는데 언어 장벽에 부딪혔지만, 디스코드 채팅과 같은 실시간에 따르는 방식을 통해 사용자의 요구사항이 반영된 소프트웨어 서비스와 같은 팀원들이 생각하는 공동의 목표에 도달하는 데 노력하였습니다.
[팀 활동에서 협업했던 사람 중 본인과 ‘잘 맞는 사람’과 ‘잘 맞지 않는 사람은’ 어떤 유형의 사람인가]
대학교 4학년에 진행한 캡스톤 프로젝트와 관련이 있기 때문에, 이 프로젝트에서 협업을 진행했던 팀원들에 관해 이야기를 하겠습니다. 팀원은 저 포함해서 백엔드 2명, 그리고 프론트 1명으로 구성되었는데 이 중에 저와 잘 맞았던 사람은 백엔드 팀원이었습니다. 프로젝트 전체를 포괄해서 판단하기에는 무리가 있어서, 아이디어 도출 및 기획 과정과 개발 과정 2가지로 나누어서 말씀드리겠습니다. 먼저 첫 단계인 아이디어 도출 및 기획 과정에서 처음에는 AI 데이터셋 확보에 대한 한계 때문에 주제를 바꾸게 될 수밖에 없었는데 각자 1주일 동안 새로운 프로젝트에 대한 참신한 주제 및 기능과 동작 과정을 생각하는 시간을 보냈습니다. 여기서 저와 잘 맞았던 사람은 저와 비슷하게 기존에 존재하는 어플리케이션이 있는지를 파악하기 위한 시장 조사를 꼼꼼히 하였고, 동작 과정도 순서도를 활용하여 파악하기 쉽게 구성하였으며 기능 구현에 대한 기술 스택도 다양하게 조사하였습니다. 반면에 저와 잘 맞지 않은 사람은 이 과정에서 상당히 소극적인 태도를 보였는데, 주제만 단순하게 노인이라는 키워드만 던지고 시장 조사나 기능에 대한 기술 스택도 조사하지 않아서 실망했습니다. 다음으로 개발 과정에서 저와 잘 맞았던 사람은 코드 리뷰를 성실히 하고, 깃허브로 커밋 내용 및 오류 해결 과정을 공유하였습니다. 반면에 잘 맞지 않은 사람은 기능 구현 마감기한을 지키지 않고, 오류가 발생하면 무턱대고 오류 사진만 협업 툴에 첨부하고 다른 팀원들한테 해결해달라고만 하고 본인이 직접 구글링해서 오류에 대해 찾아볼 생각을 하지 않았습니다.
[입사 후 포부]
입사 후 저는 팀의 일원으로서 항상 협력적인 태도를 유지할 것입니다. 이를 위해 첫째로, 제가 개발 지식을 학습하고 기록한 블로그를 팀원들과 공유함으로써 공동의 목표를 달성하고자 노력하겠습니다. 이를 통해 팀의 전체적인 역량을 향상하고, 협업의 시너지를 극대화할 수 있을 것입니다. 현재 IT 기술은 빠르게 변화하기 때문에 신기술 습득도 중요합니다. 이를 위해 사내 교육 프로그램이나 세미나가 열리면 적극 참여해서 IT 기술 동향을 파악하고 회사의 성과를 높이는데 이바지하겠습니다.