
알아서! 잘! 딱! 깔끔하고! 센스있게!
작은 오류까지 놓치지 않는 세심함으로 협업에 기여하는 주니어 프론트엔드 개발자 이윤경입니다.
React Next.js TypeScript GraphQL TailwindCSS Storybook
Contact.
📞 010-8692-2540 📧 [email protected]
👩🏻💻 GitHub 📔 Velog
About Me.
- 문제의 본질을 빠르게 파악하고, 정확한 해결책을 제시하는 센스
- 프로젝트 개발 중 발생하는 이슈를 빠르게 분석하고 최적의 해결책 도출
- 주어진 기술 스택뿐만 아니라, 새로운 기술도 필요하면 빠르게 습득하여 적용
- 작은 오류도 놓치지 않는 세심함과 꼼꼼함
- 타입 에러까지 신경 쓰며 안정적인 코드 작성
- 코드의 유지보수성과 가독성을 고려한 리팩토링 진행
- 빠르고 정확한 업무 수행으로 팀 퍼포먼스 극대화
- 손이 빠르고 효율적인 업무 처리로 프로젝트 일정 준수 및 생산성 향상
- 맡은 일을 신속하게 마무리한 후, 팀원들의 업무를 적극 지원하여 원활한 협업 유도
- 책임감 있는 일정 관리와 원활한 협업
- Jira, Notion을 활용한 일정 관리로 맡은 업무를 기한 내 완수
- 백엔드, 디자이너와의 협업 경험을 통한 효과적인 커뮤니케이션
Career.
엑스크루(2025.03.05 ~ 재직중) | 프론트엔드 개발자
<엑스크루: 글로벌 스포츠 커뮤니티 플랫폼>
React/Next.js TypeScript RestAPI Docker
- 목표
- 담당업무
- 공통 컴포넌트 개발 및 유지보수
- 검색엔진 최적화(SEO) 중점 개발
- 성과
- 공통 컴포넌트 개발로 코드 재사용성 및 유지보수성 증가
- sitemap.xml, robots.txt 등 SEO 필수 파일을 구성하여 검색 엔진의 사이트 이해도와 색인 효율성 강화
- 데이터 캐싱 개선
- 기존 문제:
<Suspense>로 감싼 동적 컴포넌트에서 fetch의 캐시 옵션을 적용해도, 데이터 캐싱이 정상적으로 동작하지 않는 이슈(Next.js 15)
<Suspense>로 감싸진 컴포넌트 내부에서 fetch가 실행될 때, 그 컴포넌트가 동적으로 간주되면 해당 fetch를 항상 런타임에 새로 실행하도록 처리가 되고 있음
- 이 경우, 아무리
fetch에 revalidate나 force-cache 옵션을 넣어줘도 기본적으로 캐싱이 비활성화
- 해결 방안:
"use cache" 활용하여 데이터 캐싱 개선
“use server” 환경에서 데이터를 패칭하는 함수 내부에 “use cache”를 선언
- 결과
- 서버 컴포넌트 내부의
fetch 요청이 정상적으로 캐싱되어 중복 실행이 제거되고, 페이지 로딩 속도와 서버 부하가 크게 개선됨
솔로트립(2024.07.28 ~ 2025.02.28) | 프론트엔드 개발자
<솔로트립: 혼자 떠나는 여행자들을 위한 여행 서비스 플랫폼 개발>
React/Next.js TypeScript GraphQL ApolloClient React Hook Form zod Storybook
- 목표
- 솔로트립 숙박 서비스 플랫폼 백오피스 개발
- 게스트하우스 사장님을 위한 숙소/객실/파티 및 기타 프로그램 관리 기능 구축
- 담당 업무
- 공통 컴포넌트 개발 및 유지보수
- React Hook Form을 활용한 입력 폼 구현 및 검증 로직 개발
- GraphQL을 활용한 API 연동 및 데이터 관리
- 성과
- 공통 컴포넌트 개발로 코드 재사용성 및 유지보수성 증가
- Git Flow에서
rebase 전략을 도입해 병합 커밋 최소화 및 코드 리뷰 효율성 향상
rebase 전략을 적용하여 불필요한 병합 커밋을 제거하고 커밋 히스토리의 일관성을 유지
- 이를 통해 코드 충돌 해결 및 병합 시간 단축, 팀의 코드 리뷰 속도 향상
- 팀원들에게
rebase 전략 교육을 통해 기술적 이해도 향상 및 협업 능력 강화
- 여러 개의 폼 데이터를 효과적으로 관리하기 위한 상태 관리 개선
- 기존 문제: 폼 데이터를 recoil로 관리했지만, 폼의 수가 증가할수록 상태 관리의 복잡도가 증가하는 문제가 발생
- 해결 방안: URL의
searchParams를 활용하여 폼 데이터를 유지하도록 개선
- 결과
- 새로고침 및 페이지 이동 시에도 작성된 값이 유지
- 불필요한 상태 관리를 줄여 애플리케이션 성능 최적화
- 전역 상태 관리 부담을 줄여 유지보수성 향상