본문 바로가기
반응형

전체글582

테스트 메소드 (함수) 이름은 비즈니스 내용을 사용하기 테스트 메소드 (함수) 이름은 비즈니스 내용을 담아야한다. 이는 테스트의 의도를 명시적으로 표현하기 때문에 중요한데, 테스트 코드를 작성하는 것에 집중한 나머지 이름에 대해서는 크게 신경쓰지 않고 넘어가는 경우가 많다. 예를 들어 다음과 같은 기존의 테스트 코드가 있다고 가정해보자. // bad describe('ArticleService', () => { it('create article pending status', async () => { const limitOverUserId = await createLimitOverUser(); const article = await sut.create(limitOverUserId, '테스트글'); expect(article.status).toBe(Article.. 2023. 8. 5.
PostgreSQL 11 에서의 add column not null & default 성능 개선 Aurora MySQL 5.7까지만 써본 경험에서 Online DDL 은 여전히 부담스럽다. 그럼에도 대량의 데이터가 쌓인 테이블에 DDL을 수행하는 것은 서비스를 운영하다보면 피할 수 없다. 100GB 이상의 테이블에 Online DDL로 컬럼을 추가해도 1시간이 넘도록 수행되던 경험을 해보면 가능한 기존 테이블에 컬럼을 추가하는 등의 DDL 작업은 피하고 싶어진다. 다만, MySQL과 다르게 PostgreSQL에서는 오래 전부터 일부 ALTER 작업에 대해서는 잠금 없는 변경이 가능하다. 이는 MySQL에서는 테이블 구조를 변경할때 전체 테이블의 데이터를 새로운 구조로 복사하는 방식을 취해서 테이블의 크기가 큰 경우 오래 걸리는 것과 다르게 PostgreSQL에서는 테이블 구조 변경 작업시 meta .. 2023. 8. 1.
원하는 프로젝트에 참여 하고 싶을때 팀에서 일을 하다보면 어떤 프로젝트가 진행될때 나도 함께 하고 싶을때가 종종 있다. 누가 봐도 커리어에, 성장에 도움이 될 것 같은 그런 프로젝트들이 진행되고 나 역시도 그런 프로젝트에 참여 하고 싶은 그런 경우 말이다. 리더가 그 프로젝트에 나를 포함시켜준다면 가장 좋겠지만, 보통은 그렇지 않고 다른 멤버가 프로젝트에 포함된다. 내가 그 프로젝트에 너무 참여하고 싶다면 어떻게 해야할까? 가장 먼저 용기를 내는 것 부터 시작이다. 리더에게 이야기를 해야한다. 그 기회를 갖고 싶다고. 하지만, 동호회가 아닌 회사라는 조직에서는 그것만으로는 기회를 얻진 못한다. 항상 일은 가장 적합한 사람에게 맡긴다. 모든 팀원이 하고 싶은 일을 하는 곳이 아니다. "잘해낼 수 있을까 걱정이 되지만 그래도 참여하고 싶다" .. 2023. 7. 16.
JetBrains IDE AI Assistant EAP 후기 (2023.07.12) 2023년 6월 26일, JetBrains에서 AI Assistant 기능이 추가 되었다. JetBrains IDE의 AI Assistant 현재 (2023.07.12) 까지 정식 기능은 아니며 EAP 버전에서만 사용 가능하다. GPT 채팅이 있어서 IDE에서는 어떤 차별점이 있을까 궁금해서 EAP 버전을 설치해서 사용해보기 시작했다. 아래 모든 단축키는 Mac을 기준으로 한다. 1. 설치 IntelliJ나 WebStorm 등 IDEA 에서는 다 지원하기 때문에 어떤 IDE라도 EAP 버전을 설치하면 바로 사용할 수 있다. EAP 버전을 설치하는 방법은 JetBrains Toolbox 를 설치하고, 이를 실행해보면 다음과 같이 설치된 IDE들의 목록이 나온다. 여기서 EAP 버전을 설치하고 싶은 IDE의.. 2023. 7. 12.
AWS Lambda를 활용한 동적 Redirect Server 구축하기 (Dynamic HTML Serving) 기존 프로젝트에서 신규로 페이지를 만들었지만, 해당 페이지의 공유 링크는 기존 프로젝트의 meta tag가 아니라 신규 페이지 전용 meta tag 가 필요할 때가 종종 있다. 카톡방 공유 링크의 미리보기나 여러 크롤러들의 수집등에 유리함을 얻기 위해서는 Server Side에서 meta tag를 만들어서 HTML을 내려주는 것이 좋다. 하지만 아래와 같은 환경이라면 이렇게 Server Side를 동적으로 그려내기가 어려울 수 있다. 기존 프로젝트의 레거시로 인해서 동적으로 Server Side에서 meta tag를 수정하기가 어렵거나 SPA로 구축되어 단일 HTML로만 관리되고 있어 Server Side에서 meta tag 를 수정하기 어렵거나 그래서 원하는 meta tag를 가진 공유 링크만 담당하는.. 2023. 7. 8.
지표 일회일비 어제 저녁 우리 회사의 2번째 서비스인 랠릿의 팀원분들과 이야기를 나누었다. 신규 서비스가 런칭하고, 약 1년간 운영을 해왔다. 그리고 계속해서 신규 기능을 넣고 있지만 지표가 내맘같이 오르지 않고 있다. 이럴때 보통 해당 제품의 개발자들은 매일 매일 서비스 지표를 확인하고 일회일비 한다. 그래서 그 부분에 대해 내 생각을 팀원분들께 전달해서 슬랙으로 전달드렸다. 아래 내용은 그 슬랙의 내용 중 민감한 부분을 제외한 전문이다. 최근에 주식 차트 보듯이 매일 매일 서비스 지표를 확인하고 왜 안오르냐고 답답해 하는 모습이 눈에 띄어서 이야기를 드렸어요. 아마 랠릿의 담당자분들은 이런 것에 목말라하실것 같아서 제 이야기를 좀 하고 싶었습니다. 랠릿 이라는 서비스는 런칭한지 이제야 1년 반, 제대로 목적 조직이.. 2023. 7. 8.

728x90
반응형