미리보기
기본 정보
사용자에게 더 나은 경험을 안겨주고 싶은 프론트엔드 개발자가 되는 것을 목표로 하고 있습니다. 기존 프로젝트에서 어떻게 하면 유저에게 더 편안한 기능을 개발할 수 있을지, UI/UX 적인 측면에서 탐구하는 개발자입니다.
기술 스택
React, TypeScript, JavaScript, HTML/CSS, Python
포트폴리오
교육
한국교통대학교
대학교(학사) | 컴퓨터공학과
2018.03. ~ 2024.02. | 졸업
대외활동
클라우딩 어플리케이션 엔지니어링
프로그래머스
자바스크립트를 기반으로 한 리액트 & 리액트 네이티브
JavaScript
CSS
HTML
프로젝트를 통한 React 및 Bootstrap 학습
AWS, Firebase 학습을 통해 구현 방식 이해
RestAPI
Figma 툴
React Native
프로젝트
1. 비디오 에디터 제작 프로젝트
리액트를 사용해 비디오 에디터와 비디오 플레이어 기능, 이미지 편집 기능을 사용자에게 제공하는 웹 서비스
2. 운동 SNS 프로젝트
리액트 네이티브를 사용해 피드를 가져와 운동에 관련된 SNS 기능을 제공하는 서비스
3. 캠핑만 GO 프로젝트
캠핑장 API를 통해 사용자에게 캠핑장 정보를 출력하고 해당 캠핑장의 유무에 따라 예약이나 전화 기능을 제공하는 서비스
4. 장소 추천 프로젝트
사용자들에게 API를 사용해 데이트 장소나 놀 거리 등을 추천 받거나 추천해줄 수 있는 서비스
자격증
정보처리기사
한국산업인력공단
2023.09.
프로젝트
멀티미디어 편집 서비스
개인
2024.03. ~ 2024.03.
사용자에게 비디오 업로드 및 편집 기능과 이미지 편집 기능을 제공하는 웹 서비스
동영상 시간 길이 편집 및 저장
사용자의 로컬 스토리지에 존재하는 동영상
업로드 및 재생 기능을 구현
다운로드를 통해 하단 슬라이더바에서 선택한
구간만큼만 비디오를 저장하는 편집 기능 제공
여러 형식의 파일 변환 제공
다운로드 시 사용자에게 진행 상황을 모달창을 통해 제공
업로드된 영상을 Gif로 변환, 잘라낸 영상 추출 및 음성 추출 기능 제공
이미지 업로드 및 편집
사용자의 로컬스토리지에 있는 이미지 파일을 업로드하고 png 형식으로 다운로드 가능
슬라이더바 조절을 통해 선택한 너비만큼의 이미지를 저장하는 편집 기능 제공
참고링크
GitHub : https://github.com/wlals262/Project1-React.js-Bootstrap
Notion : https://www.notion.so/prgrms/065cf11874ff4f55ae46738970ac4950
Vercel : https://project1-react-js-bootstrap-1jxw4pkw2-zeros-projects-8bf20212.vercel.app/
Velog : https://velog.io/@jgm262/%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%94%A9-%EC%96%B4%ED%94%8C%EB%A6%AC%EC%BC%80%EC%9D%B4%EC%85%98-%EC%97%94%EC%A7%80%EB%8B%88%EC%96%B4%EB%A7%81-TIL-Day-45
감정 일기장
개인
2024.02. ~ 2024.02.
사용자에게 오늘의 감정이나 이전의 기분 등을 작성할 수 있는 일기장 기능을 제공하는 웹 서비스
일기장 생성
일기 생성 시 날짜와 감정 / 내용을 기입
이렇게 작성한 일기는 Firebase를 통해
DB에 저장 및 조회에 사용
일기장 조회 및 분류
DB를 조회하여 해당 달에 해당하는 감정과 내용을 출력
분류를 통해 최신순 , 오래된 순 /
좋거나 나쁜 감정만 출력하는 기능 제공
일기장 상세 내용 수정 및 삭제
일기장의 상세 페이지 출력
일기의 수정 기능 및 삭제 기능
DB 연동을 통해 수정된 일기 서버에 저장
참고링크
GitHub : https://github.com/wlals262/emotion_diary
Vercel : https://zero-programmers-project.web.app/
Velog : https://velog.io/@jgm262/%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%94%A9-%EC%96%B4%ED%94%8C%EB%A6%
AC%EC%BC%80%EC%9D%B4%EC%85%98-%EC%97%94%EC%A7%80%EB%8B%88%EC%96%B4%EB%A7%81-TIL-Day-35
나가노라
프로그래머스
2024.04. ~ 2024.05.
코스를 짜기 귀찮은 이들을 위한 나만의 가치 있는 문화 생활을
공유하고 정보를 제공 해주는 맞춤 코스 제공 서비스
담당역할
메인페이지 퍼블리싱 및 기능 구현
영화, 콘서트, 관광 API 활용 검색 페이지
퍼블리싱 및 기능 구현 / 온보딩 페이지 구현
장르별 검색
영화 및 콘서트, 관광 API를 사용하여
사용자에게 장소 추천 기능 제공
일식이나 중식, 한식 / 문화시설과 자연관광 등
세부적인 장르 선택이 가능
API에서 제공하는 번호를 통해 실제 가게 번호로
예약 기능을 제공
지역별 검색
공공 API를 사용해 현재 위치 표시 및 현위치
중심의 장소와 음식점 추천
지역 선택으로 해당 지역의 장소 검색 기능 제공
커뮤니티
커뮤니티 기능 제공을 통해 타 사용자간 장소 추천이 가능
좋아요 / 댓글을 통해 타 사용자의
의견 확인 및 인기순 정렬 기능 제공
일정 관리 페이지
코스나 일정을 캘린더에 쉽게 저장 가능
AsyncStorage를 사용해 기기에 작성된
일정 저장 기능 구현
마이페이지
더치페이 계산기로 인당
비용 계산과 남은 금액 계산 가능
가계부 기능을 통해 한달간
사용 금액 및 항목별 금액 확인 가능
참고링크
GitHub : https://github.com/prgrms-app-devcourse/-1-Project4-Final-team4/tree/dev
Notion : https://prgrms.notion.site/4-NagaNora-9ec4123b68ed4b6da409174510841392
Youtube : https://www.youtube.com/watch?v=8cJNYUVmFZI
TeamPage : https://www.notion.so/prgrms/Team-4-F4-67820a9cbf41407c891456161cd477ae
PPT : https://docs.google.com/presentation/d/1SwMufTpObG-H2H6DoxB2C0W-I_eaL7Rn/
edit?usp=drive_link&ouid=101457701580484303332&rtpof=true&sd=true
자기소개
끊임없이 롱런 했습니다.
어렸을 적 교회 봉사 활동에서 컴퓨터를 조작하며 컴퓨터에 대한 흥미가 생겼고, 미래에 컴퓨터에 관한 진로를 잡아야겠다고 생각했습니다. 이후 IT 특성화고 상담을 받는 등 분야의 다양성을 넓혀갔고, 방과후에 소프트웨어 동아리 활동을 통해 파이썬과 C언어를 학습하였습니다.
이를 통해 ‘넥슨 주니어 프로그래밍 챌린지’ 라는 대회에 참여해보거나 IT관련 서적을 읽었고, 대학 입학 후 사전 지식을 바탕으로 좋은 성적을 받을 수 있었고, 현재는 부트 캠프를 통해 공부를 이어나가고 있습니다.
제가 이렇게 할 수 있었던 이유는 포기하지 않는 마음과 주변 사람들의 응원이 있었기 때문이라고 생각합니다.
지금까지 포기하지 않고 열심히 해온 것처럼, 앞으로도 끈기와 열정을 잃지 않고 계속해서 최선을 다하겠습니다.
중재자가 되겠습니다.
저는 갈등을 싫어하는 성격이라 갈등이 생기면 각기 다른 입장을 이해하려고 노력하고, 대화와 타협을 통해 문제를 해결했습니다.
팀 프로젝트를 진행 할 때 코드 리뷰와 Pull Request에 대한 브랜치 룰을 짜서 실시했지만 사소한 커밋에도 Pull Request가 남용되는 문제가 일어났습니다.
이에 팀 회의에서 주도하여 페이지 개발이 종료되었을 경우에만 Pull Request를 진행하고, 코드 리뷰를 더욱 철저하게 진행하자는 규칙을 만들었습니다. 프로젝트를 종료할 때까지 이 규칙을 잘 지켜 팀원들 간 별다른 갈등 없이 성공적으로 프로젝트를 끝마칠 수 있었다고 생각합니다.
이러한 경험은 직무를 수행함에 있어서 타인과의 관계를 중요시하고, 협력과 이해를 바탕으로 문제를 해결을 하는 데에 강점으로 작용할 것이라고 생각합니다.
당연하게 여기지 않겠습니다.
저는 창의력과 도전정신을 가지고, 항상 새로운 아이디어를 생각하고 해결책을 찾기위해 노력했습니다.
일상생활 중에도 번뜩이는 아이디어나 새로운 아이디어가 떠오르면 메모장이나 핸드폰을 사용해 적어놓곤 했습니다.
학부에서 배웠던 하이퍼링크에서 아이디어를 얻어 포트폴리오에서 프로젝트 목차에 하이퍼링크를 추가해 프로젝트 항목을 누르면 해당하는 프로젝트 페이지로 이동되도록 활용하였습니다.
이처럼 소소할 수 있지만 디테일을 챙기는 것은 사용자 경험을 향상시킬 수 있는 강점이 될 것 입니다.
문제가 발생하면 새로운 관점과 창의적인 방법을 모색하고, 프로젝트나 과제를 더욱 효과적으로 완수할 수 있을 것이고, 어려운 과제가 주어지더라도 실패를 두려워하지 않고, 적극적으로 새로운 기술이나 개념을 배우며 스스로를 발전시키고자 노력하겠습니다.
공부를 멈추지 않겠습니다.
대학교에 들어가 "웹프로그래밍기초" 라는 과목을 통해 HTML과 CSS, 그리고 자바스크립트의 기본 문법과 구조에 대해 학습을 하였고, "웹 프로그래밍 응용" 과목을 통해 Node js의 Express 프레임워크를 사용한 웹 서버 제작 실습을 통해 미들웨어와 RESTful API를 학습하였습니다.
이를 활용해 실시간 채팅 프로그램 제작을 통해 서버와 클라이언트 간 통신과, 웹페이지에 요청과 응답에 대한 학습을 수행하였고, 교육 간 MySQL과의 연동을 통해 CRUD에 대한 이해와 실습을 진행 하였습니다.
군 입대 후 자투리 시간을 이용해 정보처리기사 자격증 취득을 위해 공부했고, 전역 후 해당 자격증을 취득했지만
학사 졸업 후 공부에 부족함을 느꼈고, 심화된 학습을 위해 바로 프로그래머스에서 주관하는
“클라우딩 어플리케이션 엔지니어링 부트캠프”를 수료하였습니다.
부트캠프에선 Figma 툴을 사용해 프로젝트 디자인 및 초안을 제작하는 것부터 시작해 학부시절엔 알지 못했던
Css의 FlexBox와 같은 레이아웃, 디바이스 크기에 따라 달라지는 반응형 웹 제작, React에 대한 전반적인 구조와 Props에 대한 사용법, useEffect와 useMemo 등 리액트 훅을 통해 렌더링에 대한 관리와 최적화,
그리고 코드 리팩토링을 통해 프로그램을 모듈화와 중복 제거와 같이 최적화 하는 방안을 학습하였습니다.
또 학부 시절에는 잘 사용하지 않았던 git에 대한 구조와 사용 방법을 알았고,
이를 팀 프로젝트를 통해 잘 활용하며 학습했습니다.
팀 프로젝트를 통해 Git Branch 전략을 수립해보고, 코드 리뷰와 프로젝트에 대한 피드백과 회의를 하며 팀원들의 부족한 부분은 이끌어주고, 저의 부족한 부분은 당겨주며 팀원들과 함께 성장할 수 있었고, 협업에 대한 역량을 키울 수 있었습니다.
이를 통해 프로젝트를 통한 JavaScript를 기반으로 한 React 학습에 더불어, AWS, Firebase 학습을 통해 구현 방식 이해하는 법을 배웠습니다.
이러한 부트 캠프 경험을 통해 웹 기술에 대한 이해와 응용력을 키우고 백엔드 개발자와의 협업을 진행할 때도 백엔드의 구조와 개념을 이해하고 있기 때문에 수월하게 개발할 수 있을 것 입니다.
여기서 끝나지 않고 타입스크립트에 대해서 새로운 공부를 지속함을 통해 최신 기술과 안정성을 생각하며 꾸준히 공부 하는 습관을 기르게 되었습니다.
앞으로도 계속해서 새로운 트렌드와 기술에 대한 학습을 통해 더욱 향상된 개발을 하기 위해 노력하는 개발자가 되겠습니다.