미리보기
기본 정보

안녕하세요. 프론트엔드 개발자 박수아입니다.
자기소개
저는 재사용 가능한 공통 컴포넌트를 설계하고 최적화하는 데 깊은 관심을 가지고 있으며, 이를 통해 개발 팀의 생산성과 코드 품질을 높이는 것을 목표로 하고 있습니다. 최근에는 Compound Components Pattern을 적극적으로 활용하여 Input 컴포넌트를 설계한 경험이 있습니다.
프로젝트에서는 다양한 Input 컴포넌트를 통합하기 위해 CCP를 적용하여 하나의 유연한 Input 컴포넌트로 구조화했습니다. 이를 통해 사용자는 단일 인터페이스로 여러 형태의 입력 방식을 관리할 수 있도록 했으며, 이를 팀원들과의 코드 리뷰 과정을 통해 더욱 개선했습니다. 이러한 접근은 일관성 있는 UI 설계를 가능하게 했을 뿐 아니라, 컴포넌트 사용성을 크게 향상시켜 팀 전반의 생산성을 높이는 데 기여했습니다.
팀 내 협업에서는 코드 리뷰와 피드백 과정을 중요하게 생각하며, 이를 통해 컴포넌트의 유지 보수성과 확장 가능성을 지속적으로 발전시켜 왔습니다. 저는 새로운 기술과 패턴을 학습하고, 프로젝트에 이를 실험적으로 적용하며, 팀과 공유하는 것을 즐깁니다. 최근에도 Feature-Sliced Design(FSD) 아키텍처를 학습하고 있으며, 이를 프로젝트에 적용하는 방법에 대해 깊이 탐구하고 있습니다.
기술 스택
JavaScript, TypeScript, React, Next.js, zustand, react-query, TailwindCSS, Firebase, aws-ec2, Docker, Notion, JIRA, Confluence, GitHub, Figma
교육
울산대학교
대학교(학사) | 디지털콘텐츠디자인학과
2016.03. ~ 2020.02. | 졸업
한국조형예술고등학교
고등학교 | 컴퓨터 그래픽과
2013.03. ~ 2016.02. | 졸업
경력
니토디자인
팀원 | 시각디자인팀
2021.12. ~ 2022.05. (6개월)
시각 디자인(명함, ppt 템플릿, 패키지, 캐릭터, 이모티콘 등 작업 진행)
㈜에스에이치컴퍼니
팀원 | 디자인팀
2021.05. ~ 2021.09. (5개월)
사내 프랜차이즈 브랜딩 디자인 및 사인물, SNS 홍보 컨텐츠 제작
FI 컴퍼니
팀원 | 디자인팀
2020.07. ~ 2021.08. (1년 2개월)
브랜드 디자인 및 웹디자인, 캐릭터 디자인(캐릭터 저작권 등록), 굿즈 디자인(폰 액세서리 및 스티커, 키링, 반지 등), SNS 홍보물 제작, 판매 상세페이지 관리, 상품 포장 및 출고, 재고 관리 등
울산항만공사
팀원 | 대외홍보팀
2019.07. ~ 2019.12. (6개월)
울산항만공사 SNS 계정관리 및 프로젝트 기획·시행
대외활동
온라인 해커톤 포텐데이
비사이드
프론트엔드 개발자
3위 수상
10일 간의 짧은 시간 동안 기획부터 배포까지 완료
우리 동네 길냥이들 올바른 돌봄 문화의 시작, 이냥저냥 서비스 출시
카카오 지도 API 연결 및 비즈니스 로직 적용 지도 컴포넌트
현재 위치 표시 애니메이션 제작 및 핀, 클러스터 커스텀 적용
거리 계산 함수
ToolTip
컴포넌트Toast
커스텀 훅 제작캐릭터 아이콘 디자인
프로젝트
옥동
개인
2023.08. ~ 2024.11.
개요
스택
Javascript
Typescript
React.js
Next.js
TailwindCSS
MUI
React-query
Zustand
Nest.js
postgreSQL
Github
AWS EC2
AWS ECR
Docker
nginx
주요 기능 및 구현 내용
✅ 프론트엔드 개발
반응형 UI 적용으로 다양한 기기에서도 일관된 사용자 경험 제공
게시판에 필터 및 페이지네이션 기능 적용하여 데이터 탐색 편의성 개선
Next.js의 동적 sitemap.xml 및 robots.txt 생성 기능을 활용한 SEO 최적화
sitemap.xml: 검색 엔진 크롤링 최적화
robots.txt: 검색 허용 범위 설정
metadata 설정: 페이지별 title, description, Open Graph 데이터 추가
국내 주요 검색 포털 3곳(Naver, Google 등)에 검색 노출 신청 완료
✅ 백엔드 및 서버 인프라
Nest.js 기반 RESTful API 설계 및 구현
초기 Firebase 서버 사용 → Nest.js + PostgreSQL 마이그레이션
Firebase 사용 시 페이지네이션 구현 어려움 및 데이터 처리 속도 저하 발생(약 3s)
Nest.js + PostgreSQL 도입 후 offset pagination 적용하여 데이터 패칭 속도를 3배 이상 개선 (0.5~0.7s)
AWS와 Docker를 활용해 프론트엔드, 백엔드, 데이터베이스를 컨테이너 기반으로 배포 및 운영
초기 프론트엔드에서 이미지 리사이징 후 Firebase Bucket에 저장
→ 서버에서 이미지 리사이징 후 AWS S3에 업로드하는 방식으로 개선
✅ SEO 및 사용자 분석
Naver Search Advisor 및 Google Analytics 연동
사용자 유입 경로, 디바이스 유형, 방문 패턴 분석
데이터 기반 UX/UI 개선 진행
pet diary
기타
2023.10. ~ 2024.10.
개요
스택
Javascript
Typescript
React.js
Next.js
TailwindCSS
Recoil
Axios
React-query
Nest.js
Github
AWS
Docker
주요 기능 및 구현 내용
✅ 프로젝트 협업 및 기획
디자이너, 프론트엔드 및 백엔드 개발자 협업 프로젝트 (기획 참여)
✅ 프론트엔드 개발
Kakao API를 활용한 지도 및 위치 검색 기능 구현
카카오 지도 키워드 검색 API에서 받아오는 서버 데이터를
useInfiniteQuery
를 활용하여 무한 스크롤 기능 구현
Compound Components Pattern을 적용한 Input 컴포넌트 개발
회원가입, 반려동물 정보 및 일정 추가·수정 등 다양한 화면에서 통일된 디자인 패턴 유지
컴포넌트의 재사용성을 높이고, 유지보수성을 향상
✅ 백엔드 및 서버 인프라
Nest.js 기반 RESTful API 설계 및 구현
AWS 및 Docker를 활용한 프론트엔드 배포
도메인 간 쿠키 접근 제한 문제 해결
Next.js의 SSR 환경에서 쿠키 값을 읽을 수 없는
undefined
에러 발생Next.js의
rewrite
기능을 활용하여 프록시 서버를 설정, 도메인 간 안전한 통신 및 로그인 인증 기능 개선
이냥저냥
기타
2024.01. ~ 2024.10.
개요
스택
Javascript
Typescript
React.js
Next.js
TailwindCSS
Zustand
React-query
Github
주요 기능 및 구현 내용
✅ 프로젝트 협업 및 기획
기획자, 디자이너, 프론트엔드 및 백엔드 개발자 협업 프로젝트
✅ 프론트엔드 개발
공통 지도 컴포넌트 구현 (Kakao Map API 활용)
kakao-map-sdk
라이브러리를 사용하여 공통 지도 컴포넌트 개발
커스텀 위치 아이콘 및 클러스터 기능 추가
길고양이 위치 표시 아이콘을 선택 유무에 따라 동적으로 스타일 변경
현재 위치 아이콘에 TailwindCSS를 활용한 애니메이션 적용
두 위치 사이의 거리 계산 함수 구현
✅ 상태 관리 및 UI 개선
Zustand 도입 및 글로벌 상태 관리
React Hook과 유사한 선언 방식 및 간결한 store 생성 방식으로 채택
사용 빈도가 높은 커스텀 메소드를 store에 등록하여 관리 효율성 향상
Toast 커스텀 훅 개발 및 상태 관리 적용
정보 알림, 확인, 에러 등 다양한 메시지를 동적으로 관리
Zustand를 활용하여 Toast 메시지를 글로벌 상태에서 관리
setTimeout
을 이용하여 일정 시간 후 자동으로 메시지 사라지도록 구현UI 상태에 따라 아이콘, 색상, 메시지 스타일을 동적으로 변경
const { addToast } = useToast(); addToast.check('새로운 소식을 등록했어요!');
✅ 소셜 로그인 및 인증 처리 개선
Social Login + Middleware 적용
Pet Diary 프로젝트와 동일한 방식으로 SSR 환경에서의 토큰 전달 문제 해결
로그인 후 토큰 값을 서버에서 직접 설정하고, 미들웨어에서 페이지 리디렉션을 수행하도록 구현