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

개발23

사용자 스토리 맵 만들기 책 후기 - 스타트업에서 애자일 도입하기 이번에 리뷰 개편을 개발하면서 백엔드 개발자 분이 기획서에서 중요한 부분을 놓친 사건이 있었다. 백엔드 개발자 분의 100% 과오였지만(?) 기획, 개발 프로세스를 손 본 지 꽤 오랜 시간이 되어 이번 기회에 애자일 프로세스를 도입하려고 준비 중이다. 다 같이 "사용자 스토리 맵 만들기"라는 책을 읽자고 하여 읽어보았다. 이 책의 내용을 소개해보겠다. (가장 아래에 5줄 요약도 해드렸으니 부담없이 읽으세요) 워터폴 프로세스란?애자일 프로세스를 이야기 하기 전에 기존의 전통적인 개발 방식인 워터폴(waterfall) 방식을 간단히 설명하겠다.예를 들어, 어떤 SI 기업에서 A 업체에게 납품할 프로젝트를 개발한다고 생각해 보자.프로젝트를 개발하기 위한 요구 사항들을 문서로 정리한다.기획 문서를 토대로 디자인.. 2023. 6. 7.
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.
스타트업 개발팀의 React Next.js 마이그레이션 도전기 나는 술담화라는 스타트업 회사에 다니고 있다. 2021년 초에는 php 기반의 웹 페이지에서 React를 도입했고, 이번 2022년 5월부터 NextJs를 도입했다. React에 NextJs를 Migration 하는 과정은 쉽지 않았다. 기존에 진행하던 회사 매출에 중요한 프로젝트도 동시에 진행해야 했고, 폴더 구조와 라우터가 완전히 바뀌기 때문에 버그가 없도록 유의해야 했다. 소규모 개발 인원으로 어떻게 성공적으로 Migration 했는지 이야기해 보겠다. 일단 먼저 시작하기에 앞서 NextJs가 무엇인지 간략하게 설명하겠다. (이 글은 술담화 프론트엔드팀 개발자 이병수, 정윤기 님과 함께 작성하였습니다.) NextJs란 무엇인가? 전통적인 웹 사이트는 글 위주의 페이지였다. 사진이나 영상은 거의 없었.. 2022. 12. 28.
스타트업 이직을 고민하는 당신에게 (전통주 스타트업 술담화 프론트엔드 개발 2년 근무 후기) 술담화라는 전통주 스타트업 회사에서 프런트엔드 개발자로 일한 지 벌써 1년 9개월이 지났다. 처음 입사해서 어색한 인사를 나눴던 게 엊그제 같은데 벌써 2년이 다되어가다니 세월이 참 빠르다. 술담화로 이직하기 이전에는 프린터 대기업 회사에서 임베디드 개발자로 일했다. 술 회사에서 일해보고 싶어서 술담화로 이직했다. 700명 규모의 회사에서 40명 규모의 회사로 이직했다 보니 다른 점이 많았다. 회사에 이직한 지 2년이 다되어가는 지금 이전 회사 대비 어떤 게 다른지, 나는 어떻게 달라졌는지 정리해보려고 한다. (회사에서 시킨 거 아니고 스스로 쓰는 글입니다! ㅎㅎ) 1. 회사에 출근하는 것이 즐겁다. 일반적인 회사원은 일요일 저녁이 되면 출근할 생각에 괴롭다. 하지만 술담화에 이직한 이후 출근이 즐거워졌.. 2022. 12. 22.
작은 PR 규칙으로 코드 리뷰 효율 높이기 작은 PR 규칙 도입 배경 처음 술담화 개발팀에는 PR(Pull Request)에 대한 규칙이 없었다. 그래서 큰 프로젝트의 경우 하나의 PR로 올리는 경우도 있었다. 이 경우 방대한 코드 개발 양으로 코드 리뷰를 하기가 힘들었다. 코드 리뷰가 어려워지면 코드 퀄리티가 떨어지고, 버그가 발생할 가능성이 높아지는 등 단점이 많다. 이를 해결하기 위해 "작은 PR 규칙" 을 적용해보자는 목소리가 팀 내에 있었고, 실제로 도입해봤더니 많은 장점이 있었다. 작은 PR 규칙을 사용하는 방법 (git flow 기반으로 설명하겠다.) 1. develop에서 feature 브랜치를 만든다. 2. feature 브랜치에서 1번째 브랜치를 만들어 개발 완료 후 feature 브랜치에 첫번째 PR을 날린다. 3. 코드 리뷰.. 2022. 12. 1.
술담화 쇼핑몰 Form 에러 처리 변경하여 결제페이지 체류 시간 감소, 이탈률 감소 시키기 술담화 쇼핑몰(https://sooldamhwa.com/)에서 8월 말 선물하기 기능을 추가하면서 결제 페이지의 대대적인 디자인 변경이 있었다. 결제 페이지 쪽 개발을 하면서 기존 결제 기능에 개선하고 싶은 부분을 발견했다. 술담화에는 장바구니에 상품을 담아서 결제하거나, 제품을 바로 구매하는 경우 결제 페이지로 이동한다. 결제 페이지에서 배송지 확인 및 수정, 주문하는 상품 확인, 결제 방법 선택, 쿠폰 선택, 포인트 입력, 정보제공 동의를 한 뒤에 결제 버튼을 누르면 결제가 진행된다. 기존에는 결제 버튼은 항상 비활성화되어 있고, 결제에 필수인 항목인 결제 방법과 개인정보 제공 동의를 하면 결제 버튼이 활성화되어 결제를 할 수 있는 방식이었다. 이 방식은 유저가 어떤 항목이 필수로 입력해야 하는지 알.. 2022. 10. 10.
[코드숨 리액트 강의] 7주차 회고 이번 강의는 지난 번 강의에 이어 로그인 기능을 만들었다. 지난번 다짐이었던 월요일부터 강의 듣기 시작은 실패했지만 화요일부터 듣기 시작하면서 그래도 순조롭게 들었던 것 같다. 과제 자체는 짧았지만 강의가 2시간 30분으로 매우 길어서 강의 들으면서 타이핑 하고, 에러 잡고 하느라 꽤 오래 걸렸다. 1. https://www.npmjs.com/package/eslint-plugin-import eslint-plugin-import Import with sanity.. Latest version: 2.26.0, last published: 2 months ago. Start using eslint-plugin-import in your project by running `npm i eslint-plugin.. 2022. 6. 19.
[코드숨 리액트 강의] 5주차 회고 - 비동기 코드에서 Thunk를 쓰는 이유 드디어 강의의 절반을 넘게 들었다! 8주차까지면 끝인데 벌써 5주차가 끝나다니 시간 참 빠르다. 이번주는 수요일 휴일이 있어서 여유가 있었다. redux와 비동기 fetch를 TDD로 개발하는 것을 배웠다. 지난번 첫 TDD를 개발해서 그런가 이번 과제는 처음 TDD를 접했을 때 보단 수월했다. 과제를 월요일부터 시작해서 제출하면 더 좋을 것 같다. 코드 리뷰를 좀 더 받는게 나에게 큰 도움이 될 것 같다. -> 내일부터 과제 해보자! Fetch 테스트 jest로 테스트하는 것은 런타임 때 테스트하는 것이 아니기 때문에 실제로 fetch 이후 response를 받아서 테스트가 진행되지는 않는다. useSelector.mockImplementation((selector) => selector({ categ.. 2022. 6. 6.
[코드숨 리액트 강의] 3주차 회고 이번 강의를 통해 처음으로 TDD를 해봤다. 사용한 프레임워크는 Jest와 testing-library/react 였다. TDD(Test-Driven Development)는 Red Green Refactoring 을 이용해서 개발한다. 먼저 테스트에 실패할 테스트 코드를 작성한다. 적당한 코드를 작성해(특이한 케이스) 테스트를 통과시킨다. 이후 코드를 보완해 보편적인 케이스들도 통과할 수 있도록 한다. 개인적으로 테스트 코드를 먼저 작성하고 코드를 나중에 개발하는 방법은 처음이었는데 굉장히 신기했다. 처음에 이런 방법을 고안한 사람은 천재가 아니었을까. 아래는 TDD를 이용한 코드이다. import { render, screen, fireEvent } from '@testing-library/react.. 2022. 5. 23.