미리보기
- 직업
- 프론트엔드 개발자
- 이름
- 주경진
- 간단소개
- 4개의 외주 개발을 통해 드론 모니터링 사이트 제작 및 씨네투어 풀스택 개발 등 다양한 프로젝트를 경험했습니다. 누구나 자연스럽게 참여할 수 있는 개발환경을 선호하고, 이유와 매커니즘을 설명할 수 있는 코드 작성에 집중합니다.
기술 스택
- 기술 스택
- next.js13
- React
- Vue.js
- TypeScript
- Webpack
- scss
- react-query
- Socket.io
프로젝트
- 프로젝트명
- 가자지구 난민 응원메세지 전달 프로젝트 / FE
- 소속/기관명
- 사이드프로젝트
- 프로젝트 기간
- 2023.11. - 진행 중
- (1년 2개월)
- 프로젝트 설명
- NCP, Git Action으로 배포 자동화
- SQLite를 활용해 테스트 API서버 구현.
- 웹 애니메이션 구현: parallax 스크롤링, Opacity fade-in적용 후 모듈로 제작 후 npm배포
- 디자이너와 소통 간소화 : 3단계 계층으로 아토믹 패턴 적용 후 스토리북 배포.
- Modal창 구현시 prop-drilling발생 : Recoil을 통한 Modal상태관리 방식으로 변경
응원 메시지가 담긴 책자를 가자지구에 전달 하는 프로젝트. 웹 사이트로 전 세계의 응원 메시지와 후원금을 모으는 것이 목표
Develop(FE)
Trouble Shooting
기술스택 : Next13
, SCSS
, StoryBook
, TypeScript
, SQLite
, NCP
Github, Link
- 프로젝트명
- 드론 모니터링 사이트 / FE
- 소속/기관명
- 무한정보기술(외주)
- 프로젝트 기간
- 2023.10. - 2023.11.
- (2개월)
- 프로젝트 설명
- OpenVidu(WebRTC비디오 플랫폼)을 활용해 드론 카메라 송출 화면 비디오 컴포넌트에 스트림 연결
- Socket-IO를 통해 드론 소켓 데이터 수신 시 UI 동작 구현
- 드론 시뮬레이션 소켓 서버 구현
- Socket-IO를 활용해 연결된 드론 이름으로 Room구성 후 웹 클라이언트와 정보 교환.
- 드론의 카메라 화면 확인 시, 사용하지 않는 브라우저의 음성, 카메라 접근 허용 현상 발생.
- 불필요한 Publish 과정 진행 없이 카메라 스트림 받을 수 있도록 코드 개선 후 기록
- 초기 환경 Next로 구성해. 빌드시 필요 없는 용량 발생. => 사용하지 않은 기능들이 빌드 됨.
- 리팩토링 시 Next대신 필요한 기능만 직접 WebPack으로 환경 구성. 빌드 결과물 용량 30% 감소.
- 프로젝트 종료 후 리팩토링 진행: 코드 분할, 폴더 구조 개선, TypeScript 적용.
운용 중인 드론의 상태와 해당 지역의 날씨 등 관리자가 모니터링 해주는 도구
Develop(FE)
Trouble Shooting
기술 스택: Next
, Socket-io
, OpenVidu(WebRTC)
, Typescript
, Webpack
, React
포트폴리오, Github, Link
- 프로젝트명
- 씨네 투어 / (BE,FE)
- 소속/기관명
- 씨팩토리(외주)
- 프로젝트 기간
- 2023.05. - 2023.09.
- (5개월)
- 프로젝트 설명
- 여행상품 목록, 예약 관리 페이지 등 목록 페이지에서 Grid, Flex를 활용해 반응형 디자인 구현.
- Google Map API를 활용하여 일정에 대한 장소 정보 연동(사진URL,전화번호, 위치)
- React-Query를 통해 서버데이터 상태관리.
- 정의된 ERD를 활용해 패키지 여행 예약 부분 API명세 - 노션으로 작업 공유
- Sequelize(MYSQL), Express를 활용해 Router-Controller-Model 구조로 구현.
- S3, Multer모듈 사용해 이미지 업로드를 위한 미들웨어 구현.
- Google 사진 URL이 3일 뒤 만료되어 이미지가 표시되지 않는 문제.
- 서버에서 이미지를 다운로드한 후 S3에 저장하여 해결.
- 프로젝트 종료 후 리팩토링하며 코드 분할, 폴더 구조 개선 사항 적용.
- 폴더구조 : APP-Routing 폴더 구조 개선, 라우팅 그룹, private folder를 활용해 구조 변경.
- 코드분할: 중복 컴포넌트는 Common폴더로 분리
여행 투어를 예약, 탐색할 수 있도록 돕고, 스케줄러 기능을 통해 여행을 보다 즐겁고 편안하게 만드는 여행 스케줄러.
Develop(FE)
Develop(BE)
Trouble Shooting
기술 스택: Next13
, React-Query
, sass-module
, MUI
Express
, Sequelize
, MYSQL
, AWS S3
, Multer
- 프로젝트명
- 보안 모니터링 웹 서비스 / FE,BE,AGENT배포
- 소속/기관명
- 인더포레스트(산학협력 졸업작품)
- 프로젝트 기간
- 2021.01. - 2021.06.
- (6개월)
- 프로젝트 설명
- vue와 vue-chart를 사용해 15개의 데이터 테이블과 2종류의 Pie,Line 그래프를 활용해 대시보드 구현
- FlaskAPI로 ElasticSearch서버와 Front서버의 중개 서버 구현 : QueryDSL을 통해 약 20개의 api작성
- 사전에 설계한 시나리오에서 필요한 윈도우 이벤트들을 필터링.
- 기술 공부 후 wazhu+ElasticSearch 의 동작을 아키텍처로 제작해 팀원들과 공유.
근무자 PC의 실시간 모니터링 시스템. “근무자의 PC현황” 을 관리자가 확인 할 수 있습니다.
Develop(BE/FE)
Develop(AGENT)
기술 스택: Wazhu
, Vue
,Sysmon
, ElasticSearch
, MetricBeat
, FlaskAPI
,
포트폴리오, Github
경력
- 회사명
- 핌즈(주) / 쇼핑몰통합솔루션
- 직책 • 부서
- 인턴 • 웹개발팀(PHP)
- 근무 기간 (근무 형태)
- 2021.08. - 2022.01.
- (6개월 | 인턴)
- 담당 업무
- PHP, Javascript 레거시 코드 개선
- 사용자 경험 개선(SQL 개선, Javascript 동작 오류 수정)
웹 서비스 유지보수
교육
- 소속/기관
- 광운대학교
- 종류 | 전공명/전공계열
- 대학교(학사) | 컴퓨터공학과
- 재학 기간 (재학 상태)
- 2015.03. - 2022.02. (졸업)
자격증
- 자격증명
- OPIC
- 점수/급 | 발급 기관
- IM3 | ACTFL
- 취득월
- 2023.03
포트폴리오
자기소개
- 자기소개
다양한 기술스택을 시간내에 구현해야되는 4건의 외주 개발 경험을 통해 전체적인 구조를 보는 눈이 빠릅니다. 먼저 프로젝트 구조와 최종결과를 먼저 이해하고 필요한 기술 요소들을 우선순위에 따라 접근했습니다. 학습 키워드를 알게된다면 공식 문서를 먼저 참고하고, 강의 및 커뮤니티 등 다양한 리소스를 활용합니다. 그 이후 실제 요구사항을 충족시키는 코드를 작성합니다.
신중히 고민하고 용기 있게 도전하는 것을 좋아합니다. 도전 과정에서 맞닥뜨린 실패는 저를 성장시키는 양분이라고 생각합니다. 프로젝트 여러개 하면서 프로젝트가 부러진 경험도 했지만 중간 과정에서 얻을 수 있는 것들을 정리해서 반드시 저의 것으로 만듭니다.
기본이 중요하다고 생각해 CS지식, 제가 사용하는 기술들에 대해서 깊게 공부하고 정리합니다. 남들에게 설명할 수 없다면 제것이 아니라고 생각하기에 설명하는 연습으로 기록이라는 방법을 택합니다. 따라서 블로그에 기록하고 꾸준히 읽어보며 저의 설명방식을 점검합니다.