미리보기
기본 정보
어제의 나를 양분으로 오늘의 나를 성장시키는 프론트엔드 3년차 조여진입니다. 지난날 제가 해결해 온 문제들을 참고/응용하여 개발합니다. 보다 나은 UX 위해 기획자,디자이너와 의논하고 보다 재사용성이 좋은 코드를 만들기 위해 노력합니다.
기술 스택
Vue.js, Vuex, pinia, scss, vitejs, JavaScript, HTML/CSS, GitHub, jQuery, React, zustand
경력
주식회사케이스랩
대리 | 개발팀
2022.03. ~ 2024.11. (2년 9개월)
고객의 비즈니스에 맞춰 설계된 기획과 디자인에 따라 프론트/퍼블리싱 담당, 고객서비스 운영 및 리뉴얼 참여
주 업무 퍼블리싱, vue 서브 개발자로 참여
2023.12 이후 1인 프론트엔드로 환경세팅부터 QA 마무리까지 전체적인 프론트엔드 업무 수행 및 프로젝트 진행
프로젝트 아키텍처 구성하여 새로운 프로젝트 시작시 시간 비용 감소
SCSS 로 매 프로젝트 사용될 common.scss , mixin 생성
header,footer,navi의 class 와 뼈대를 만들어 여러 프로젝트에 재사용 하도록 구성
서비스에 따른 정규식, 유효성, 위치좌표 및 주소등 공통 함수 개발
jwt 토큰 사용하고 refresh token 발급, 예외처리를 위한 interceptor 개발
웹뷰를 통해 웹 서비스 노출 및 공유하기 , 다운로드, 카메라 등 앱소스 연동
이니시스 , 토스 페이먼츠, 페이팔 결제연동
sns (네이버,구글,애플) 로그인 연동
점유인증 , 본인 인증 연동
프로젝트
(기여도 30%) 아이큐비타민
케이스랩
2024.10. ~ 진행 중
어린이 동화책 심리검사
스택 : React, zustand , styled-components
[주요 내용]
React, zustand , styled-components 이용
styled-components를 이용하여 header , badge , tab 공통 컴포넌트 생성
zustand를 이용해 유저 정보 저장 및 공통 컴포넌트 tab에 맞춰 api 로 받아온 데이터 name,value 로 변환 사용
네이버, 구글 , 애플 회원 가입 및 로그인 연동 및 hook을 이용하여 공통 함수 처리
hook 을 사용하여 게시판 리스트 및 무한 스크롤 구현
axios interceptor 를 통해 토큰 갱신 , 토큰 만료 , 로그인 처리
sns 회원가입 및 게시판 리스트(1:1 문의 , FAQ , 공지사항, 결제 내역 , 검사 리스트) , 작성 팝업 (1:1 문의) 구현
(기여도 50%) 시네몰
시네몰
2024.07. ~ 진행 중
촬영장비 판매 쇼핑몰(데이페이 자매사이트) - 현재 중단, 데이페이 추가 개발 완료된 이후 진행 예정
스택 : vue3, pinia, scss
[주요 내용]
데이페이와 동일한 구조로 UI 변경만 진행한 상태
(기여도100%) 데이페이
케이스랩
2024.05. ~ 2024.10.
촬영장비 대여/판매 쇼핑몰(시네몰 자매사이트) - 1차 개발 완료/ 2차 추가 개발 진행 예정 , 2차 개발 이후 서비스 예정
스택 : vue3, pinia, scss
[주요 내용]
토큰 만료 7일 전 접속시 refresh token 발급을 axios interceptor에서 개발
대여 , 대여 연장시에 날짜 유효성 체크 개발
이니시스 결제창을 백에서 열고 프론트에서 form 과 iframe 을 통해 사용자단에 노출
푸시 , 파일 다운로드 앱 소스 연동
(기여도100%)다이빙버디
케이스랩
2024.02. ~ 2024.04.
다이버 채팅 모임 커뮤니티 앱
스택 : vue3, pinia, scss
[주요 내용]
프로젝트 아키텍처 설계 및 구현
modal, layout, input, select와 같은 컴포넌트 개발
센드버드를 통해 채팅 구현 및 다이빙버디 회원 정보 연동
jwt 토큰을 사용하였으며 토큰 만료시 갱신 없이 로그인 페이지로 이동되도록 구현
웹뷰를 통해 보여지는 서비스로 vue 내에 앱 소스 연동
(기여도 100%)본어스
케이스랩
2024.02. ~ 2024.02.
퍼스트몰 기반 온라인 쇼핑몰
스택 : html / css
[주요 내용]
개발 없이 디자인만 수정하는 메인, 상품상세 , 게시판 일부 퍼블리싱 작업 수행
(기여도 50%)심플
케이스랩
2023.12. ~ 2024.02.
위치기반 커뮤니티 앱 서비스
스택 : vue3, pinia, scss
[주요 내용]
기존 60% 개발 되어있던 프로젝트를 담당하여 수정과 개발 진행
채팅은 센드버드를 이용, 회원 가입시 샌드버드 가입과 메타데이터를 추가 하여 서비스 회원 정보 연동
웹뷰를 통해 보여지는 서비스로 vue 내에 앱 소스 연동
프로젝트 완료 후 추가 개발
구글 autocomplete API 이용하여 지도 검색 이후 좌표값으로 구글 지도에 마커 , 반경 노출 및 좌표 저장
게시물 제목으로 gpt AI를 이용하여 결과값 노출
(기여도 100%)정민 회계 FO,BO
케이스랩
2023.10. ~ 2023.11.
정민회계법인 사무소의 비즈니스 플랫폼 / 반응형 부트스트랩 사용하여 퍼블리싱
스택 : bootstrap5 , html/css
[주요 내용]
부트스트랩 css 를 최대한 활용하는 쪽으로 하여 디자이너와 지속적인 소통을 통하여 개선 작업
직원별 급여 관리는 테이블을 이용하였으며 일반적인 세로 테이블이 아닌 가로 테이블로 좌우 스크롤 가능하게 작업
스크롤시 좌측 필드는 고정 요청사항으로 position sticky 를 이용 또한 pc 에서도 drag and drop 으로 좌우 이동 가능 하도록 작업
(기여도 100%)아트데이터
케이스랩
2023.09. ~ 2023.10.
반응형 미술 입시 전문 인강 / 쇼핑 / 커뮤니티 사이트
스택 : html / css
[주요 내용]
퍼스트몰 기반 쇼핑몰을 고객사 요구사항에 맞게 개발 디자인 퍼블리싱 전면 수정
(기여도 80%)코오롱3종
케이스랩
2023.05. ~ 2023.06.
반응형 코오롱 재단 사이트 퍼블리싱
스택 : html/css
[주요 내용]
오운 컨텐츠 업로드 작업 및 css 수정
어린이 문화재단 전체 퍼블리싱 (2023.5.8~ 2023.5.23)
-오운 재단 과 다른 새로운 html,css 구조 작업하여 어린이 문화재단과 가족사회봉사단에 적용
가족사회 봉사단 전체 퍼블리싱 (2023.6.5 ~ 2023.6.19)
(기여도40%)뉴땡큐마켓
케이스랩
2023.03. ~ 2023.08.
온라인 새상품/중고/리퍼 쇼핑몰 퍼블리싱 및 개발 참여
스택 : vue3, vuex, scss
[주요 내용]
vue 70% 퍼블리싱 (2023.03 ~ 2023.6)
장바구니 옵션 및 수량 , 선택상품에 따른 calculator API 통신
아이디, 비밀번호 찾기 정규식과 점유인증을 통해 3분 타이머 인증 개발
개발 QA 담당
(기여도 40%)뱅크엑스 SO,FO
케이스랩
2022.08. ~ 2023.07.
사용자 위치기반 카드 혜택, 매장 할인 , 결제 앱 서비스
스택 : vue3, vuex, scss
[주요 내용]
사용자 페이지 FO, 판매자 페이지 SO 퍼블리싱 및 개발 QA 대응 참여
FO/SO 전체 퍼블리싱 html/css (2022.08 ~ 2022.10 중단)
SO vue 전체 퍼블리싱 (2022.12 ~ 2022.02)
FO/SO 개발QA 참여
(기여도 80%)비비드
케이스랩
2022.05. ~ 2022.06.
전자입찰 서비스 퍼블리싱 담당
스택 : html/css
[주요 내용]
메인 제외 서브 페이지 참여
크롤링 되어 가지고 온 한글 문서 디자인에 맞게 css 수정
(기여도 50%)실드
케이스랩
2022.05. ~ 2022.05.
반응형 온라인 쇼핑몰 전체 퍼블리싱 및 FO 퍼블리싱 및 vue3 개발 QA 대응
스택 : vue3, css
[주요 내용]
퍼블리싱 (2022.05 ~ 2022.05 완료)
QA 대응(2023.01 ~ 2023.02)
(기여도20%)고고고타이골프
케이스랩
2022.03. ~ 2022.04.
글로벌 골프 전문 맞춤 예약 플랫폼 퍼블리싱
스택 : html/css
[주요 내용]
예약, 장바구니 수정사항 반영
디자인 QA 대응 참여
(기여도 100%)버스콜 소개 페이지
케이스랩
2022.03. ~ 2022.03.
전세버스대절 최저가 입찰 비교 예약시스템 서비스의 랜딩페이지 퍼블리싱
스택 : html/css
운영 및 리뉴얼
케이스랩
2022.03. ~ 진행 중
운영
퍼블리싱 : 딜라, 클린디, 듀오백,psi
vue : 하루세탁
리뉴얼
퍼블리싱 : 코스모스 , 더케이 웹진
자사 홈페이지 작업
퍼블리싱 : 자사 홈페이지 포트폴리오 작업 (서로조은배달,땡큐 마켓)
퍼블리싱 : 자사 홈페이지 유지보수
퍼블리싱 프로젝트 : html/css
vue 프로젝트 : html scss vue3 pinia vuex
포트폴리오
교육
연세IT미래교육원
사설 교육 | 웹디자인&웹퍼블리셔 과정
2021.10. ~ 2022.02. | 졸업
공주대학교
대학교(학사) | 특수동물학과
2015.03. ~ 2021.08. | 졸업
자기소개
저는 첫 직장에서 퍼블리셔로 입사해 좋은 기회를 얻어 vue를 시작했습니다. 퍼블리싱 작업과 vue 서브 개발자로 일하던 중, 갑작스럽게 프론트엔드 메인 개발자가 퇴사하면서 제가 메인 개발자의 역할을 맡아 프로젝트를 진행하게 되었습니다. 이후 혼자 프론트엔드를 책임지며 재사용성 높은 코드와 최적화된 코드, 협업에서 중요한 요소들이 무엇인지 늘 고민했습니다.
다이빙 버디는 일부 메뉴 담당 , QA 처리 담당 역할이던 제가 메인 개발자가 되어 프로젝트 전체를 전담 , 관리하게 되는 첫 프로젝트였습니다. 이전 프로젝트들에서 보이던 아키텍처, 공통화 문제를 개선해야 했으며 vite를 이용하여 초기 세팅부터 시작한 프로젝트입니다. 이 프로젝트는 추후 진행될 프로젝트들의 기반이므로 사소한 아이콘의 네이밍부터 프로젝트 세팅, 아키텍처 설계, 공통 함수 생성에 심혈을 기울였습니다.
- 파일 네이밍
Icon-컬러-이름 , 기능-이름 (예: navi-cart) 와 같이 구성하여 scss 변수 값과 공통화시켰습니다.
- 아키텍처 설계
폴더 구조는 대 메뉴(예: product, board, mypage )를 기준으로 views,store,api 하위 폴더에 위치하고 파일명은 대 메뉴의 단어가 포함하도록 모듈화했습니다.
- 공통함수
정규식 검증 , 유효성 체크 통해 공통 메시지 알럿 노출 , 위치 좌표 및 주소 ,인터셉터에서 토큰 및 예외 처리 등 공통 함수 개발하여 생산성을 항상 시켰습니다.
vite 번들러를 dev, production 과 나누어 처리 ,SCSS 로 매 프로젝트 사용될 common.scss , mixin 생성 등 장기적인 프로젝트의 기반이 될 수 있도록 설계했습니다. 실제로 다이빙 버디 이후 vue 프로젝트에 계속 사용되었으며 고도화되었습니다. 위 내용으로 효율적인 협업과 유지보수를 가능하게 했으며 장기적 프로젝트의 기반이 되도록 하였습니다.
퇴사 직전 약 두 달간 후임이 진행하던 리액트 프로젝트에 참여하였습니다. 작업하면서 반복적으로 사용되는 함수들이 많았고 , 코드 중복이 발생하는 부분이 있었습니다. 유지보수성과 재사용성을 위해 공통 함수 처리를 시작했습니다.
react를 처음 사용해보았지만 vue에서 사용하는 hook과 유사한 부분이 존재했고, vue에서 적용해 왔던 방식을 react에 적용하려 했습니다. axios interceptor에서 api , 로그인 토큰 처리를 작업하여 base url 변경 혹은 token 처리 code가 변경되어도 한 곳만 수정하면 되도록 했습니다. 결제 완료 , sns 회원가입 custom hook으로 구성하여 로직을 공통화하였고 재사용 가능하도록 했습니다.
공통화 함수를 생성하며 제가 만든 함수가 어떻게 흘러가는지 , 왜 이렇게 해야 했었는지 후임에게 전달하고 논의했습니다. 코드의 재사용성과 효율적인 협업 방법을 공유하였습니다.
'어제의 나는 오늘 나의 양분이다'라는 소개처럼, 사소한 아이콘의 네이밍부터 프로젝트 세팅, 아키텍처 설계, 공통 함수 생성까지 하나하나 기반을 다져왔습니다. 어제의 고민이 오늘의 저를 성장하게 했고, 그 과정들이 지금의 저를 만들어 준 중요한 밑거름이 되었다고 믿습니다. 앞으로 성장할 수 있는 성장 가능한 조여진이 되도록하겠습니다.