
Contact
Email. hansuhwa2005@gmail.com
Phone. 010-6257-7507
Channel
Github. github.com/live-small
Portfolio. suhwa/portfolio
Introduce
개발로 바꿀 수 있는 일에 관심이 많은 한수화입니다.
서비스를 통해 일상의 불편을 개선하는 것을 좋아합니다. 문제를 정의하고 직접 해결하는 과정에서 성취감을 느끼며, 쓸 때마다 뿌듯했던 경험이 있습니다. 현재는 사이드 프로젝트로 끼니에 대한 고민을 해결하는 서비스를 운영하고 있습니다.
스터디, 프로젝트, IT행사 등 성장할 수 있는 환경에 노출시켜, 꾸준히 성장하기위해 노력합니다. 공식문서, 오픈소스를 활용해 기술을 학습하고 실제 프로젝트에 적용하는 과정을 통해 성장해 나가고 있습니다. 현재는 리뉴얼된 리액트 공식문서 읽는 스터디에 참여해 리액트를 잘 활용하기 위해 학습하고 있습니다.
개발은 제 생각과 아이디어를 현실로 구현할 수 있는 힘이며, 그 과정에서 성장과 성취를 느끼는 것이 저에게 큰 행복입니다. 저는 꾸준히 개발을 통해 사용자에게 가치를 전달하는 동시에, 제 자신도 성장할 수 있는 서비스를 만들고자 합니다.
Experience
오픈소스 프로젝트 기여를 통해 issue, pull request, code review, rebase merge 경험
- React SimpleMDE Editor, (🔗 PR) README.md 잘못된 내부 링크, 오타 수정
- Yorkie JavaScript SDK, (🔗 PR) IDE 기본값 설정을 위해 EditorConfig 설정파일 추가
주 1회, CS/FE 개념을 공부하고, 발표하는 스터디
- 4개월 간, 스터디 운영 및 참여
- 함께 성장하기 위한 환경을 위해 피드백 설문조사, 운영 회의 진행
- 컴퓨터 기초지식과 자바스크립트 코어 학습
- 발표 및 질의응답 활동을 통해 좋은 의사소통에 대한 고민
Project
무엇을 먹을지, 누구랑 먹을지 고민하는 분들을 위한, 위치 기반 음식점 랜덤 뽑기 및 밥모임 모집 서비스
- 핵심기능: Kakao Map API를 이용해 주변 음식점 중 한 곳을 뽑아줌. 해당 음식점에 열린 밥모임에 참여할 수 있고, 밥모임을 만들어 함께 갈 사람을 모집할 수 있음.
- 사용기술: TypeScript, Next.js, Axios, TanStack Query, Recoil, Kakao Maps API, Chakra UI
- 수행 작업 : 지도에 밥모임 표시, 밥모임 신청서 페이지, 로그인
- refresh token 쿠키를 백엔드와 주고받을 때 생긴 CORS 에러 해결해, 새로고침 시에도 로그인 유지되도록 구현 (🔗 겪었던 문제와 시도한 것들)
- Kakao Map API 이용해 지도에 밥모임 보여주는 기능 개발
- 보이는 지도에 있는 밥모임 데이터만 받아오는 게 성능 상 좋겠다고 판단해, 중심좌표, 지도 반경을 전달하기로 백엔드와 협의
- zoom level에 따라 달라지는, 렌더링된 지도 반경 구하는 비즈니스 로직 개발
- 각 페이지에서 사용하던 Status Badge를 공통 컴포넌트로 분리해 재사용성과 유지보수성 높임
- 운영 (진행 중)
- 매끄러운 사용자 경험을 위해 로그인이 필요한 서비스에 대해 로그인 버튼 대신 로그인 후 참여하기 버튼으로 바꿔, 로그인 성공 후 가려던 페이지로 이동 (🔗 PR, 구현영상)
- 다른 팀원 구현한 채팅 코드를 읽고, 불필요한 채팅 Response 제거하도록 대응 (🔗 PR) 퇴장한 사용자 메시지 처리
- 모바일 환경에서 헤더 UI 깨지는 문제 해결을 위해 헤더에 있는 닉네임, 로고 반응형 대응 (🔗 PR)
10개 이상 커뮤니티에 베타테스트 피드백 요청. 수집한 사용자 의견을 바탕으로 우선순위를 나누어 작업하면서 사용성 개선 및 리팩터링
원하는 기기의 리뷰를 확인하고, 본인 전자기기의 사용후기를 작성할 수 있는, 전자기기 리뷰 서비스
- 핵심기능: 전자기기 리뷰를 작성하고 볼 수 있고, 댓글을 통해 리뷰, 전자기기에 대해 소통 할 수 있음
- 사용기술: TypeScript, React, React Hook Form, Recoil, Tailwind CSS
- 수행 작업: 게시물 작성 페이지, 알림 페이지, 카테고리 컴포넌트
- React Hook Form 활용해 유효성 검사 포함된 공통 Input 컴포넌트 구현
- 유효성 검사 결과 후 보여줘야할 에러메시지도 함께 관리해 모듈화
- 회원가입, 로그인에도 재사용할 수 있도록 제네릭 적용해 구현 (🔗 구현 중 겪었던 문제들)
- 사용자에게 빠른 응답을 제공하기위해 새로운 알림 전체읽음 클릭 시, 낙관적 업데이트 개념을 활용해 구현
- API 작업 생산성을 높이기 위해 Postman 팀 워크페이스 도입 제안, 세팅, 사용법 공유
자판기 상품, 동전관리와 상품 구매할 수 있는 자판기 프로그램
- 핵심기능: 자판기에 상품 추가, 삭제, 잔돈 충전, 동전 투입, 상품 구매, 잔돈 반환 할 수 있음
- 사용기술: Vanilla JavaScript, Webpack
Education
프로그래머스에서 진행한 프론트엔드 개발 교육 프로그램
- 과제 기반 교육 및 코드리뷰 진행
- Vanilla JavaScript 과제를 통해 state 중심 UI 추상화하는 연습 경험
- HTML, CSS, SCSS를 활용한 마크업 학습, 과제 수행
- 2번의 팀 프로젝트 진행하며 git, github 이용해 협업 경험
- 우선순위 설정과 시간 관리를 통해 주어진 기간 내 구현하는 역량 기름
우아한형제들에서 진행한 소프트웨어 교육 프로그램, 참여자 선발과정인 프리코스에 참여
- 3주 간 3개의 Vanilla JavaScript 과제 수행
- 주어진 코드 컨벤션, 프로그래밍 요구사항 충족해 구현
- 과제 요구사항 분석해 구현할 기능과 예외 케이스를 정리한 뒤, 기능 단위로 커밋하는 연습 경험
말고기에서 시작된 개발
말고기 소비 활성화 프로젝트를 1년 정도 진행했습니다. 그 과정에서 말고기 생산자, 말산업 박람회, NH농협지주 등 다양한 전문가들과 인터뷰를 진행하면서 인식의 중요성을 배웠습니다.
그래서 인식을 디자인하는 마케팅 경험을 쌓았습니다. 총 10개월 간, 한 달에 한 개씩 프로젝트를 기획하는 활동에 참여하면서 제가 기획한 프로젝트를 직접 구현하고 싶다는 니즈가 생겨 개발을 시작하게 되었습니다.
개발하는 과정에서 문제를 정의하고, 풀어나가는 일에 성취 느끼고 성장하는 모습에 행복을 느껴서 이 일을 업으로 삼아야겠다는 생각을 했습니다.