본문 바로가기
  • 하고 싶은 일을 하자

프론트엔드10

덕업일치하며 즐겁게 일했던 회사에서의 퇴사 회고 2024년 8월을 마지막으로 다니던 회사에서 퇴사했다. 그래서 이를 돌아보는 회고록을 써보고자 한다. 덕업일치의 힘크래프트 맥주로 술의 세계에 입문하여 이제는 모든 종류의 술을 좋아했다. 매달 전통주를 보내주는 서비스를 구독하고 있었는데 그 회사에서 채용 공고가 떴다. 이력서와 포트폴리오, 회사에 가서 하고 싶은 업무를 30여 장의 문서로 정리했다. 자기 전에도 아이디어가 떠올라 자다가 일어나 핸드폰에 메모를 하곤 했다. 서류 마감이었던 크리스마스 이브 날 밤까지 열심히 작성해 보냈다. 그런데 웬걸, 이미 사람을 채용했다는 소식을 들었다. 다행히 회사에서 좋게 봐서 없던 TO가 생겨 입사하여 일할 수 있었다. 전통주 구독 서비스와 쇼핑몰 플랫폼, 어드민의 프론트엔드를 개발했다. 이 회사에서 일했던 건 단.. 2024. 11. 22.
Zod를 도입한 이유 (런타임 타입 검증) 우리 개발팀은 typescript로 타입을 검증하고 있었다. ts는 컴파일 타임에 타입 오류를 잡아주어 많은 도움이 되지만, 외부 API 응답을 런타임에 체크하는 것은 불가능하다. 물론 백엔드 개발자와 소통한 형식의 타입이 넘어오는 것을 믿고, QA를 거치기 때문에 큰 문제가 되지는 않았다. 하지만 간혹 예기치 못한 이슈로 type이 다른 데이터가 넘어와 런타임 때 문제가 발생하는 경우가 있었다. 이는 유저에게 좋지 못한 경험을 주었고, 데이터 구조가 복잡할수록 디버깅하기가 어려웠다. 이러한 문제를 해결하기 위해 런타임에 데이터의 타입을 검증할 수 있는 zod라는 라이브러리를 신규 API에 대해 점진적으로 도입해 보기로 했다. 기존 코드// redux toolkit[getCoupons.fulfilled].. 2024. 8. 7.
Tanstack Query 는 필름 시뮬레이션이다 (회사 프로젝트에 TQ 도입기) 요즘 카메라에 미쳐버린 나, 맨날 카메라 관련 유튜브 영상과 쇼츠를 보고 있다.후지 필름에 x100v라는 카메라에는 재밌는 이야기가 있다.  x100 시리즈는 2010년 출시를 시작한 카메라로 후지 필름의 색감으로 사진을 찍을 수 있다. 올해 2024년에는 x100vi로 여섯 번째 시리즈가 나왔다.한국 다나와 기준으로 x100v는 정가가 169만 원인데 현재 274만 원에 판매되고 있다. 해외에서는 327만 원에 팔리기도 한다. 이렇게 비싸게 팔린 이유는 "필름 시뮬레이션"이라는 기능 때문이다. 틱톡에서 디지털카메라인데 필름 느낌이 나는 사진을 찍을 수 있는 카메라로 입소문을 탔다. 후지 필름의 실제 필름과 비슷한 색감으로 사진을 찍을 수 있는데 굉장히 감성적이다. 원래라면 사진을 찍고, 컴퓨터로 옮기고.. 2024. 8. 2.
개발자 신입 취직을 위한 상담 컨설팅 무료로 해드립니다 안녕하세요 요즘 개발 신입 지원하시는 분들이 굉장히 취직이 어려워졌다고 들었습니다. 대기업의 공채도 별로 없고, 작은 기업들도 사정이 좋지 않아 채용을 많이 줄였다고 하더군요. 저도 대학을 졸업하고 취직 준비할 때 어렵구나 느꼈습니다. 인적성은 너무 어렵고 면접에서는 발리기도 하고 20~30 군데는 지원해서 합격했어요. 그런데 지금은 더 어려워졌다고 하니 상상이 안되네요. 그래서 혹시 신입으로 지원하려는 개발자 분들이 계신다면 도움을 드리고 싶어서 이 글을 쓰게 되었습니다. 혹시 상담이나 질문이 있으신 분이라면 junha04@naver.com 으로 메일 주시면 시간될 때 답변 해드리겠습니다. 저에 대해 소개드리자면 중학생 때 부산시 교육청 정보영재 교육을 받았습니다. 한양대학교 컴퓨터공학과를 졸업했습니다.. 2024. 1. 13.
2023년 하반기 회고 - 이커머스 프론트엔드 개발, 애자일, 스토리북, 테스트 코드, 사이드 프로젝트 2023년이 벌써 이렇게 지나갔구나. 올 하반기에도 많은 일들이 있었다. 이번 글은 회사 개발 일 뿐만 아니라 다른 일들도 회고를 해볼까 한다. 개발개발이라는 직업은 나에게 애증의 존재 같다. 좋기도 하고, 싫기도 한데, 다시 태어나면 또 개발자를 할 것 같다. 물론 다른 직업을 경험해보지 못해서 익숙한 것을 하고 싶은 마음도 있을 것이다. 그렇지만 하나의 주제를 탐구하고, 공부하고, 논리를 쌓는 행위가 나에게 잘 맞는 것 같다. 올 하반기 개발했던 것을 정리 해보겠다.  기디개 프로덕트팀 창설하반기부터 기획팀, 디자인팀, 개발팀이 모인 프로덕트팀이 만들어졌다. 가장 큰 변화는 일주일에 한 번씩 기디개가 모여 정기 미팅을 가지고, 스프린트가 끝날 때 회고 미팅도 다같이 하게 된 점이다. 원래는 개발팀 내.. 2023. 12. 28.
useEffect로 Race Condtions 해결하는 방법 React 개발을 하는데 있어 useEffect 는 필수이다.정말 많이 쓴다.그런데 공식 문서를 읽다보니 몰랐던 것을 알게되어 정리 해보겠다. 먼저 useEffect 에 대한 정의부터 예상과 달랐다.나는 컴포넌트가 마운트/언마운트 되었을 때 실행할 로직을 정의하는 Hook 이다 라고 생각하고 있었는데공식 문서의 정의에는"외부 시스템을 사용하는 컴포넌트를 동기화하는 Hook 이다." 라고 설명하고 있다. 외부 시스템은 무엇이고, 동기화는 무엇일까? External Systemexternal system 이란 React 로 control 하지 않는 코드를 의미한다.이에 대한 예시로 setInterval(), clearInterval(), window.addEventListener(), window.remov.. 2023. 11. 22.
useCallback 심도있게 살펴보기 useCallback 은 함수를 cache 로 저장 해서 re-render 할 때 사용할 수 있도록 하는 React Hook 이다.아 슈밤 글 다썼는데 코드로 테스트하다가 다 날라갔다... ㅠㅠloop 3중첩으로 1000*1000*1000 으로 돌리니까 브라우저 바로 뻑나네............. ProductPage가 리렌더링 되면 handleSubmit 함수는 새롭게 생성될까?아니면 동일한 로직의 함수이니 알아서 이전 렌더링 때 만든 handleSubmit 함수를 그대로 사용할까? 정답은 함수를 새롭게 생성한다. 자바스크립트에서 function () {} 혹은 () => {} 인 경우에는 함수를 새로 생성하기 때문이다. 이런식으로 함수를 useCallback 으로 감싸고 dependency array.. 2023. 11. 9.
AWS 한국 사용자 모임 - 프론트엔드 Next.js 이미지 최적화 소모임 후기 AWS 한국 사용자 모임에서 프론트엔드 소모임이 열린다고 하여 다녀왔다. AWS 한국 사용자 모임 링크 : https://www.meetup.com/awskrug/ AWSKRUG - AWS한국사용자모임 (서울, 한국(대한민국)) 본 그룹은 AWS한국사용자모임(AWSKRUG)의 정기 모임 및 소모임 운영 사이트로서 최신 활동 소식 및 행사를 올려드릴 예정입니다. 더 자세한 것은 https://facebook.com/groups/awskrug 를 참고하세요. www.meetup.com AWS이지만 인프라나 백엔드뿐만 아니라 프론트엔드, 스타트업 등 다양한 주제의 세미나가 열린다. https://www.meetup.com/awskrug/events/292866390 Login to Meetup | Meetup.. 2023. 5. 14.
스타트업 이직을 고민하는 당신에게 (전통주 스타트업 술담화 프론트엔드 개발 2년 근무 후기) 술담화라는 전통주 스타트업 회사에서 프런트엔드 개발자로 일한 지 벌써 1년 9개월이 지났다. 처음 입사해서 어색한 인사를 나눴던 게 엊그제 같은데 벌써 2년이 다되어가다니 세월이 참 빠르다. 술담화로 이직하기 이전에는 프린터 대기업 회사에서 임베디드 개발자로 일했다. 술 회사에서 일해보고 싶어서 술담화로 이직했다. 700명 규모의 회사에서 40명 규모의 회사로 이직했다 보니 다른 점이 많았다. 회사에 이직한 지 2년이 다되어가는 지금 이전 회사 대비 어떤 게 다른지, 나는 어떻게 달라졌는지 정리해보려고 한다. (회사에서 시킨 거 아니고 스스로 쓰는 글입니다! ㅎㅎ) 1. 회사에 출근하는 것이 즐겁다. 일반적인 회사원은 일요일 저녁이 되면 출근할 생각에 괴롭다. 하지만 술담화에 이직한 이후 출근이 즐거워졌.. 2022. 12. 22.