"3번의 프로젝트 3번의 우수상"
OO OO OO OOOO에서 3번의 프로젝트를 경험하며 웹 개발 역량을 쌓았습니다. EC2를 사용하여 클라우드 기반의 웹을 구축하는 3개의 프로젝트를 진행하였고 주로 백엔드를 맡아 서버를 구축하였습니다. 그 중 두 개를 소개해 드리겠습니다.아쉬운점 1
첫번째로 커밋먼트라는 프로젝트는 Github의 잔디 심기에서 아이디어를 얻어와 탄생한 여행 기록 웹서비스입니다. 백엔드를 맡으며 Mariadb를 이용하여 DB를 구축하고, SpringBoot를 이용한 다양한 RESTfulAPI를 제작하였습니다. 먼저, 여행을 기록하기 위해 사용자의 위치권한이 필요하였습니다. 하지만 위치 권한은 https 환경에서만 사용 가능하다는 사실을 깨달았고, 보안과 다양한 서비스를 지원하기 위해서는 https가 필요하다는 점을 새롭게 알게 되었습니다. 따라서 SSL 인증서를 발급받아 https로 배포하며 프로젝트가 원활하게 진행될 수 있도록 기여했습니다. 이외에도 firebase, S3 등의 여러 기술에 도전하면서 가장 큰 성장할 수 있었고, 발전하는 개발자의 마인드로 새로운 것을 배우고 적용 할 수 있는 역량을 갖추었습니다.
두 번째로 리쿡은 빅데이터를 사용하여 사용자의 취향을 분석하고 개인 맞춤형 레시피 추천 서비스였습니다. 맡은 역할은 python을 사용한 레시피 크롤링과 Django를 사용하여 컨텐츠 기반 필터링을 기반으로 레시피 추천 API를 구현하는 것이었습니다. 하지만 데이터의 양이 많다 보니 추천 알고리즘을 실행하는 데 10초가량 걸리는 문제가 발생하였습니다. 따라서 테이블을 분할해서 불러와 query의 성능을 최적화시켰고, 10초가 걸리던 것을 3초로 줄일 수 있었습니다. 시간은 단축되었지만, 초반 DB 설계 시 반복적인 조인을 줄이기 위해 반정규화를 진행하거나 redis를 적용한다면 시간이 좀 더 절약됐을 것 같다는 아쉬움이 남았습니다. 이처럼 좀 더 나은 프로젝트의 성능을 위해 고민하고 최적의 효율을 만들어 낼 수 있는 역량을 쌓았습니다.아쉬운점 2
아쉬운점 1 이 항목 역시, 첫 항목처럼 질문에 성실하게 답을 하는 방식으로 작성되어야 합니다. 우선 글 서두에 자신이 왜 웹 프로그래머를 희망하는지 이 일을 왜 기업 ERP, 금융 핀테크 플랫폼을 개발하는 이 회사에서 하고 싶은지를 제시해야 합니다.
아쉬운점 2 자신이 수행한 프로젝트를 막무가내로 설명하고 끝낼 것이 아니라 기업 ERP, 금융 핀테크 플랫폼을 개발하는 이 회사의 개발과 어떤 연관이 있는지도 함께 제시할 때 호감을 줄 수 있습니다.