
빅픽쳐랩의 개발팀의 인턴으로 "하이얼리" 웹 서비스 개발 & 유지보수
'하이얼리 인재 검증 솔루션' 서비스에서 평판 조회 기능을 중점으로 개발하였습니다.
recoil을 이용한 전역 상태를 제거하는 과정 동안 '전역 상태가 꼭 필요할까'라는 생각을 가지게 되었습니다.props drilling을 위해서라면 Context API를 사용하고, 가능한 전역 상태를 사용하지 않게 되었습니다.
충남대학교 하계 백마인턴십를 통해 코덱스 브릿지에서 프론트엔드 개발자로 방학동안 인턴 활동을 하였습니다.
기존에 Laravel으로 작성되어있던 코드들을 React로 마이그레이션 하면서, 추가 기능들을 개발하였습니다.
Laravel로 이미 개발된 서비스를 React로 마이그레이션 하면서, 새로운 언어를 접하고 공부해 볼 수 있었습니다.Laravel코드를 분석하며 무슨 언어든 기반은 비슷하다는 것을 느꼈습니다.Laravel환경에서 사용하던 sendbird 라이브러리를 활용하여 채팅 서비스를 구현해야 했습니다.JavaScript로 구현되어 있던 코드를 React 환경으로 변경하는 작업을 하며 JavaScript의 이벤트 방식과 React의 렌더링 방식을 더 이해할 수 있었습니다.동료의 익명 피드백으로 자신의 성향과 장단점 등을 파악해요. 나의 강점은 살리고, 약점은 보완하기 위한 익명의 피드백 수집 및 통계 서비스.
기여도 : 15% / 10명 (FE 4, BE 3, DESIGN 3)
나만의 질문 폼 생성 플로우 개발Drag and Drop 기능을 활용하여 질문 생성 & 정렬 기능 구현Drag and Drop 기능을 위해 나온 라이브러리가 아닌 애니메이션 라이브러리여서 제한적인 기능과 예기치 못한 버그가 발생했습니다.오직 나만을 위한 맛집 검색 내 입맛대로 Preat 남들의 후기가 아닌 내 입맛을 고려해서 식당을 추천하는 맛집 검색 서비스
기여도 : 20% / 5명 (FE 1, ANDROID 1, BE 1, DESIGN 1, PM 1)
react-naver-maps 라이브러리를 이용해 해결하였습니다.ref list를 이용하였습니다. 라이브러리에서 제공해주지 않아, naver 공식 문서를 통해 구현하였습니다.Jotai를 이용해 사용자 인증 데이터만을 전역으로 관리하고 있었습니다. 그런데 전역으로 관리해야 하는 값들이 많아지고, 전역 상태 간의 연관성이 많아지며 atom으로 관리하기 쉽지 않아졌습니다.zustand로 변경하였습니다. zustand 사용 방법 ➜개발자에게 중요한 역량 중에 하나는 타자 속도입니다. '나의 타자속도를 객관적으로 측정해보고, 백준과 같이 나의 수준을 다른 사람들과 공유하는 서비스가 있으면 재밌겠다'라는 생각에서 출발하였습니다.
기여도 : 20% / 6명 (FE 3, BE 2, DESIGN 1)
setInterval이 아닌 Date객체를 이용하였고, 1ms의 정밀도를 가진 타이머를 구현하였습니다. 관련 블로그 링크 ➜'왜 이렇게 코드를 작성했을까?'를 고민하고, 서로의 생각을 이야기하며 새로운 지식을 많이 얻을 수 있었습니다. code review pr ➜신년메시지 주고받는 사이트를 SPA로 만들어보기 numble 챌린지
컴포넌트 기반 구조를 이용하여, 공통으로 사용하는 코드들을 class 문법으로 추상화 시키고, 필요한 부분에서는 상속받아 변경할 수 있도록 구현React의 구조를 참고하였습니다.React를 참고한 컴포넌트 기반 구조로 작성하 다보니, function 키워드를 사용하면 setState와 같은 로직이 중복되는 문제가 발생하였습니다.