Posts by Tag

kotlin

코딩 컨벤션을 테스트 하자(feat. Konsist)

9 분 소요

개발자로서 팀 단위로 서비스 개발을 위한 코드를 작성할 때 유지보수성을 높이기 위해 일관된 코드 작성, 의존성 방향 제약 등을 위한 팀 내 코드 컨벤션을 작성하거나 본 경험이 있을 것이다. 보통 README.md나 사내 문서에 코딩 컨벤션을 작성해서 개발자들이 숙지하도록 하거나 L...

Querydsl에서 Kotlin JDSL 으로

28 분 소요

우리가 이렇게 유명한 라이브러리인 Querydsl을 Kotlin JDSL로 변경하게 된 계기는 무엇이며 변경하면서 우리가 겪었던 이슈나 전환 시 우리가 사용했던 여러 가지 팁들을 공유하면서 전환 이야기를 나눠보도록 하겠다.

Null을 피하기만 하는게 마냥 좋은 것일까(feat. Kotlin)

7 분 소요

블로그를 보다 보면 Null 반환에 대한 글들을 많이 볼 수 있다. 대부분 클린코드에서 말하는 Null 코드는 나쁜 것이니 지양해서 사용해야 한다고 이야기하고 있다. 하지만 과연 나쁘다고 덮어놓고 사용하지 말아야 할까? 특정 언어에서는 Null safety를 지원하지 않기 때문에 ...

Kotlin JPA Entity에 대한 고찰

40 분 소요

최근 Kotlin이 서버 언어로 각광을 받기 시작하면서 Kotlin + Spring으로 서버를 개발하는 케이스가 많아졌다. 그러면서 자연스레 Kotlin으로 JPA를 사용하는 사례 또한 많아졌다. 다만 Kotlin으로 JPA를 사용하다보면, 정확하게는 Entity를 정의하다보면 K...

우당탕탕 주문서 개발기

22 분 소요

이 글은 사내 블로그에 작성한 우당탕탕 주문서 개발기 내용을 그대로 가져오면서 나의 블로그의 언어톤에 맞게 변경한 글이다. 최근 도도 카트 팀에서는 정비기간을 마친 후 처음으로 제품 개발을 위한 프로젝트를 성황리에(?) 마쳤다. 약 7주간 진행했던 이 프로젝트는 도도 카트가 제공하...

Getting Started With Kotest

15 분 소요

최근 Kotlin을 이용하여 개발하면서 테스트 코드를 작성할때 Kotest를 주로 사용한다. 이전에 작성한 Comparing Testing Library for Kotlin을 보면 Kotest를 이용한 테스트 코드 작성의 장점에 대해서 적어 두었으니 읽어보면 좋을 것 같다. 이 글...

The review of reconciliation refactoring

4 분 소요

이 글은 내가 회사에서 대사 기능을 리펙토링하면서 배운것들을 동료들에게 공유하기 위해 정리했던 내용을 옮긴 글이다. 피쳐를 쳐내기 바쁘다는 핑계로 대대적인 리펙토링을 할 기회가 많지 않았는데 이번 리펙토링을 하면서 크게 스프링의 빈을 정의하고 어떻게 주입하는 지에 대해 좀더 배울 ...

The review of sku service development

7 분 소요

이 글은 내가 회사에서 SKU 기능을 개발하면서 고민했던 내용들을 동료들에게 공유하면서 정리했던 내용을 옮긴 글이다. 기능 개발을 맡게 되면서 평소 해보고 싶었던 것들을 도입해 보았고 그것을 해보면서 많은 것들을 배우고 느낄 수 있었다. 아직 갈길이 멀지만 개인적으로는 좋은 경험이...

Take advantage of Kotlin Fixture

4 분 소요

테스트코드를 작성하다보면 테스트 데이터를 필수적으로 수없이 생성해야 한다. 테스트 데이터를 생성하는 작업은 상당히 번거롭고 지루한 작업이다. 하지만 테스트 데이터를 어떻게 잘 작성하느냐에 따라서 테스트 코드의 가독성이 좋아지기도 나빠지기도 하며 중복되는 코드로 인해 테스트 코드의 ...

Defining JPA’s ID in Kotlin

1 분 소요

Kotlin으로 Spring Data JPA를 사용할 때 많은 고민을 하였다. Entity Class를 정의할 때 특히 그런데, Data Class를 사용할지 말지, val를 사용할지 var를 사용할지 말지 등등 항상 어떻게 하는게 좀더 의미있는지 고민이 된다. 이 글은 그중에서 ...

Spring WebFlux - Spring Data MongoDB Reactive tutorial

3 분 소요

이전 글에서 RDBMS를 Spring WebFlux에서 사용하기 위해 Spring Data R2DBC 튜토리얼을 작성했었다. 이번 글에서는 Spring WebFlux에서 NoSQL중 하나인 MongoDB를 사용하기 위한 튜토리얼을 작성해 보고자 한다.

Spring WebFlux - Annotated Controller with reactor Tutorial

2 분 소요

이번 글에서는 이전에 작성한 Spring WebFlux - Functional Endpoint With Coroutine Tutorial에 이어 Spring WebFlux를 이용한 또다른 방식의 API를 만들어보는 글을 작성해 보겠다. 이전 글에서는 함수형 앤드포인트방식을 이용하여...

Spring WebFlux - Functional Endpoint With Coroutine Tutorial

5 분 소요

이번 글에서는 이전에 작성한 Spring WebFlux - Spring Data R2DBC tutorial에 이어 Spring WebFlux를 이용한 API를 만들어보는 글을 작성해 보겠다. Spring WebFlux에서는 Web API를 위한 2가지 방식의 프로그래밍 모델을 제공...

Spring WebFlux - Spring Data R2DBC tutorial

5 분 소요

Spring WebFlux에 대해서는 작년에 처음 내용을 접하고 나서 관심이 생겨서 개인 프로젝트로 만들어보기도 하면서 조금씩 익혀가고 있다. 현재는 공식 래퍼런스를 번역해가면서 내용을 제대로 익히기 위해 공부하고 있다. Spring WebFlux가 어떠한 컨셉을 가지고 기능을 제...

Kotlin union vs flatten

5 분 소요

Kotlin에서 2개 이상의 배열을 합쳐 하나의 배열로 반환해야하는 기능을 구현하는 상황에서 union함수를 사용할지 flatten함수를 사용할지 고민을 한적이 있다. 당시에는 flatten을 사용하였지만 (union을 사용할 경우 반환 형식이 Set이기 때문에 다시 toList함...

Kotlin Scope Functions

3 분 소요

Kotlin에서 제공하는 함수들 중에 let, run, with, apply, also라는 함수들에 대해서 알아보자.

맨 위로 이동 ↑

JPA

왜 LazyInitializationException이 발생하지? - OSIV편

11 분 소요

이 글은 Spring Data JPA를 이용하여 배치 기능을 개발하면서 겪었던 LazyInitializationException 발생 사례를 토대로 문제 해결방법을 찾아가는 과정을 적어본 내용이다. 사실 이 글에서 중점적으로 다루게될 OSIV(Open Session In View)...

Kotlin JPA Entity에 대한 고찰

40 분 소요

최근 Kotlin이 서버 언어로 각광을 받기 시작하면서 Kotlin + Spring으로 서버를 개발하는 케이스가 많아졌다. 그러면서 자연스레 Kotlin으로 JPA를 사용하는 사례 또한 많아졌다. 다만 Kotlin으로 JPA를 사용하다보면, 정확하게는 Entity를 정의하다보면 K...

우당탕탕 주문서 개발기

22 분 소요

이 글은 사내 블로그에 작성한 우당탕탕 주문서 개발기 내용을 그대로 가져오면서 나의 블로그의 언어톤에 맞게 변경한 글이다. 최근 도도 카트 팀에서는 정비기간을 마친 후 처음으로 제품 개발을 위한 프로젝트를 성황리에(?) 마쳤다. 약 7주간 진행했던 이 프로젝트는 도도 카트가 제공하...

서버 언어 전환 이야기

8 분 소요

이 글은 사내 블로그에 작성한 언어 전환 이야기 내용을 그대로 가져오면서 나의 블로그의 언어톤에 맞게 변경한 글이다. 최근 스포카는 서울 본사 사무실 이전과 함께 도도 포인트 서비스양도 등 많은 변화의 시간을 가졌었다. 내가 몸담은 도도 카트 팀도 앞으로 더 나은 서비스를 제공하기...

The review of reconciliation refactoring

4 분 소요

이 글은 내가 회사에서 대사 기능을 리펙토링하면서 배운것들을 동료들에게 공유하기 위해 정리했던 내용을 옮긴 글이다. 피쳐를 쳐내기 바쁘다는 핑계로 대대적인 리펙토링을 할 기회가 많지 않았는데 이번 리펙토링을 하면서 크게 스프링의 빈을 정의하고 어떻게 주입하는 지에 대해 좀더 배울 ...

The review of sku service development

7 분 소요

이 글은 내가 회사에서 SKU 기능을 개발하면서 고민했던 내용들을 동료들에게 공유하면서 정리했던 내용을 옮긴 글이다. 기능 개발을 맡게 되면서 평소 해보고 싶었던 것들을 도입해 보았고 그것을 해보면서 많은 것들을 배우고 느낄 수 있었다. 아직 갈길이 멀지만 개인적으로는 좋은 경험이...

맨 위로 이동 ↑

Spring WebFlux

Spring WebFlux - Spring Data MongoDB Reactive tutorial

3 분 소요

이전 글에서 RDBMS를 Spring WebFlux에서 사용하기 위해 Spring Data R2DBC 튜토리얼을 작성했었다. 이번 글에서는 Spring WebFlux에서 NoSQL중 하나인 MongoDB를 사용하기 위한 튜토리얼을 작성해 보고자 한다.

Spring WebFlux - Annotated Controller with reactor Tutorial

2 분 소요

이번 글에서는 이전에 작성한 Spring WebFlux - Functional Endpoint With Coroutine Tutorial에 이어 Spring WebFlux를 이용한 또다른 방식의 API를 만들어보는 글을 작성해 보겠다. 이전 글에서는 함수형 앤드포인트방식을 이용하여...

Spring WebFlux - Functional Endpoint With Coroutine Tutorial

5 분 소요

이번 글에서는 이전에 작성한 Spring WebFlux - Spring Data R2DBC tutorial에 이어 Spring WebFlux를 이용한 API를 만들어보는 글을 작성해 보겠다. Spring WebFlux에서는 Web API를 위한 2가지 방식의 프로그래밍 모델을 제공...

Spring WebFlux - Spring Data R2DBC tutorial

5 분 소요

Spring WebFlux에 대해서는 작년에 처음 내용을 접하고 나서 관심이 생겨서 개인 프로젝트로 만들어보기도 하면서 조금씩 익혀가고 있다. 현재는 공식 래퍼런스를 번역해가면서 내용을 제대로 익히기 위해 공부하고 있다. Spring WebFlux가 어떠한 컨셉을 가지고 기능을 제...

맨 위로 이동 ↑

git

How to update forked repository master

1 분 소요

현재 운영중인 블로그는 Minimal Mistakes Jkeyll theme라는 깃 블로그 테마를 사용해서 운영중이다. Minimal Mistakes Jkeyll theme를 사용하는 방법은 ZIP파일을 다운로드 받아서 사용하는 방법과 fork를 이용하여 사용하는 방법이 있다. 나...

맨 위로 이동 ↑

한빛미디어

Refactoring

5 분 소요

너무나 유명한 책이라 이 책이 왜 좋은지 설명할 필요가 없는 책이다. 이제서야 읽어보고 리뷰를 적어보는게 한심스럽기도 하지만 한편으로는 지금 읽음으로써 와닿는 부분이 많았다는 부분에서는 다행이라 생각이 들기도 한다. 리팩터링은 1판에서는 자바로 작성되엇고 2판은 자바스크립트로 작성...

Fluent Python

6 분 소요

현재 회사에서 Python을 주 언어로 사용하고 있다. 지금까지 나는 Java, Kotlin, Javascript 언어를 주로 사용해왔었고 Python은 코딩 튜터로 활동할때 조금 사용해 보았지만 제대로 안다고 말하기 어려웠다. 그래서 Python에 대해 좀더 깊이 있게 알아보기 ...

Head First Design Patterns

3 분 소요

디자인 패턴을 좀더 깊게 공부해볼 필요성을 느껴서 처음에 GoF의 디자인 패턴을 사서 보려고 하였는데, 회사 동료가 먼어 읽어보라고 준 책이 Head First Design Patterns이다.

맨 위로 이동 ↑

Spring Data

Kotlin JPA Entity에 대한 고찰

40 분 소요

최근 Kotlin이 서버 언어로 각광을 받기 시작하면서 Kotlin + Spring으로 서버를 개발하는 케이스가 많아졌다. 그러면서 자연스레 Kotlin으로 JPA를 사용하는 사례 또한 많아졌다. 다만 Kotlin으로 JPA를 사용하다보면, 정확하게는 Entity를 정의하다보면 K...

Spring WebFlux - Spring Data MongoDB Reactive tutorial

3 분 소요

이전 글에서 RDBMS를 Spring WebFlux에서 사용하기 위해 Spring Data R2DBC 튜토리얼을 작성했었다. 이번 글에서는 Spring WebFlux에서 NoSQL중 하나인 MongoDB를 사용하기 위한 튜토리얼을 작성해 보고자 한다.

Spring WebFlux - Spring Data R2DBC tutorial

5 분 소요

Spring WebFlux에 대해서는 작년에 처음 내용을 접하고 나서 관심이 생겨서 개인 프로젝트로 만들어보기도 하면서 조금씩 익혀가고 있다. 현재는 공식 래퍼런스를 번역해가면서 내용을 제대로 익히기 위해 공부하고 있다. Spring WebFlux가 어떠한 컨셉을 가지고 기능을 제...

맨 위로 이동 ↑

인사이트

Peopleware

4 분 소요

리펙터링을 다 읽고 난 후 다음에 읽을 책을 찾기 위해 서점에 들렀다가 눈에 띄여서 구매해 보았다. 사실 이전엔 눈에 띄지 않다가 이제서야 눈에 띈 이유는 현재 백엔드 챕터 리드를 맡고 있는데 팀원간의 관계와 좀더 나은 개발 문화, 환경을 조성할 수 있는 방법을 조금씩 알아가고 싶...

Test Driven Development: By Example

1 분 소요

1년 가까이 TDD를 연습하면서 이제서야 이 책을 읽어보았다. 사실 이 책을 읽은지는 한달정도 되었는데 리뷰를 적을지 말지 고민을 많이 하였다. 왜냐하면 내가 이책을 잘 읽었다고 생각이 들지 않았고 내용을 잘 이해하지 못했다고 생각이 들어서 이다. 아무래도 한번더 읽어봐야할 것 같...

Clean Architecture

2 분 소요

개발자라면 누구나 알고 있는 그 책 Clean Architecture를 드디어 읽어 보았다. 이전에 Clean Code를 읽고 Clean Architecture도 꼭 읽어봐야지 했었는데, 이제서야 이 책을 읽게 되었다. 이 글을 통해 내가 이 책을 읽고 생각 나는 키워드 들과 소감...

맨 위로 이동 ↑

DDD

도메인 주도 개발 전환 이야기

13 분 소요

이 글은 현재 내가 몸담은 회사의 서비스에서 도메인을 정의하고 그것에 맞게 백엔드의 구조를 개선해 가는 과정을 적은 이야기이다. 도메인 주도 개발 전환 이야기라는 장황한 제목을 적긴 했지만 사실 현재 만들어져있는 도도카트의 백엔드 코드를 도메인에 맞게 재 구조화하고 리펙토링하는 과...

The review of reconciliation refactoring

4 분 소요

이 글은 내가 회사에서 대사 기능을 리펙토링하면서 배운것들을 동료들에게 공유하기 위해 정리했던 내용을 옮긴 글이다. 피쳐를 쳐내기 바쁘다는 핑계로 대대적인 리펙토링을 할 기회가 많지 않았는데 이번 리펙토링을 하면서 크게 스프링의 빈을 정의하고 어떻게 주입하는 지에 대해 좀더 배울 ...

The review of sku service development

7 분 소요

이 글은 내가 회사에서 SKU 기능을 개발하면서 고민했던 내용들을 동료들에게 공유하면서 정리했던 내용을 옮긴 글이다. 기능 개발을 맡게 되면서 평소 해보고 싶었던 것들을 도입해 보았고 그것을 해보면서 많은 것들을 배우고 느낄 수 있었다. 아직 갈길이 멀지만 개인적으로는 좋은 경험이...

맨 위로 이동 ↑

kotest

코딩 컨벤션을 테스트 하자(feat. Konsist)

9 분 소요

개발자로서 팀 단위로 서비스 개발을 위한 코드를 작성할 때 유지보수성을 높이기 위해 일관된 코드 작성, 의존성 방향 제약 등을 위한 팀 내 코드 컨벤션을 작성하거나 본 경험이 있을 것이다. 보통 README.md나 사내 문서에 코딩 컨벤션을 작성해서 개발자들이 숙지하도록 하거나 L...

기능 테스트 전환 이야기

26 분 소요

모두가 노력해 준 덕분에 올해 목표로 했던 기능 테스트로의 전환을 마무리할 수 있게 되었다. 그래서 그동안 우리가 통합 테스트에서 기능테스트로 왜 전환하게 되었는지, 전환하면서 어떤 이슈들을 겪었는지 소개해보고자 한다.

Getting Started With Kotest

15 분 소요

최근 Kotlin을 이용하여 개발하면서 테스트 코드를 작성할때 Kotest를 주로 사용한다. 이전에 작성한 Comparing Testing Library for Kotlin을 보면 Kotest를 이용한 테스트 코드 작성의 장점에 대해서 적어 두었으니 읽어보면 좋을 것 같다. 이 글...

맨 위로 이동 ↑

GIT Actions

GIT Actions을 이용한 CI/CD 적용기 - CD편

4 분 소요

지난 GIT Actions을 이용한 CI/CD 적용기 - CI편에 이어 이번 글은 CD에 대한 내용을 적어보겠다. CD가 Trigger 되는 시점은 master 브런치에 병합이 될때 실행되며, OCCUPYING프로젝트에서 CD는 Continuous Delivery가 아닌 Conti...

GIT Actions을 이용한 CI/CD 적용기 - CI편

4 분 소요

이 글은 현재 개인프로젝트로 개발하고 있는 OCCUPYING Repository에 GIT Actions을 이용하여 CI/CD를 적용해 보면서 겪었던 것들을 적은 글이다.

맨 위로 이동 ↑

GIT

GIT Actions을 이용한 CI/CD 적용기 - CD편

4 분 소요

지난 GIT Actions을 이용한 CI/CD 적용기 - CI편에 이어 이번 글은 CD에 대한 내용을 적어보겠다. CD가 Trigger 되는 시점은 master 브런치에 병합이 될때 실행되며, OCCUPYING프로젝트에서 CD는 Continuous Delivery가 아닌 Conti...

GIT Actions을 이용한 CI/CD 적용기 - CI편

4 분 소요

이 글은 현재 개인프로젝트로 개발하고 있는 OCCUPYING Repository에 GIT Actions을 이용하여 CI/CD를 적용해 보면서 겪었던 것들을 적은 글이다.

맨 위로 이동 ↑

secrets

GIT Actions을 이용한 CI/CD 적용기 - CD편

4 분 소요

지난 GIT Actions을 이용한 CI/CD 적용기 - CI편에 이어 이번 글은 CD에 대한 내용을 적어보겠다. CD가 Trigger 되는 시점은 master 브런치에 병합이 될때 실행되며, OCCUPYING프로젝트에서 CD는 Continuous Delivery가 아닌 Conti...

GIT Actions을 이용한 CI/CD 적용기 - CI편

4 분 소요

이 글은 현재 개인프로젝트로 개발하고 있는 OCCUPYING Repository에 GIT Actions을 이용하여 CI/CD를 적용해 보면서 겪었던 것들을 적은 글이다.

맨 위로 이동 ↑

message queue

Amazon MQ vs Amazon SQS

4 분 소요

이전에 작성한 글 Message Queue Comparison에서 새로운 프로젝트에 도입할 Message Queue들 중 Amazon MQ와 Amazon SQS를 후보군으로 채택하였었다. 이번 글은 Amazon MQ와 Amazon SQS 중에서 Amazon MQ를 선정한 배경 및 ...

Message Queue Comparison

8 분 소요

사내 예약 시스템을 만들면서 서버간의 데이터 교환에 Message Queue를 사용하기로 결정하였다. Message Queue 기능을 제공하는 다양한 솔루션이 있는데 이중에서 어떤 것을 사용하면 좋을 지 알아보면서 Message Queue란 어떤것이며 종류가 어떤것 들이 있는지 알...

맨 위로 이동 ↑

message brocker

Amazon MQ vs Amazon SQS

4 분 소요

이전에 작성한 글 Message Queue Comparison에서 새로운 프로젝트에 도입할 Message Queue들 중 Amazon MQ와 Amazon SQS를 후보군으로 채택하였었다. 이번 글은 Amazon MQ와 Amazon SQS 중에서 Amazon MQ를 선정한 배경 및 ...

Message Queue Comparison

8 분 소요

사내 예약 시스템을 만들면서 서버간의 데이터 교환에 Message Queue를 사용하기로 결정하였다. Message Queue 기능을 제공하는 다양한 솔루션이 있는데 이중에서 어떤 것을 사용하면 좋을 지 알아보면서 Message Queue란 어떤것이며 종류가 어떤것 들이 있는지 알...

맨 위로 이동 ↑

rabbit mq

Amazon MQ vs Amazon SQS

4 분 소요

이전에 작성한 글 Message Queue Comparison에서 새로운 프로젝트에 도입할 Message Queue들 중 Amazon MQ와 Amazon SQS를 후보군으로 채택하였었다. 이번 글은 Amazon MQ와 Amazon SQS 중에서 Amazon MQ를 선정한 배경 및 ...

Message Queue Comparison

8 분 소요

사내 예약 시스템을 만들면서 서버간의 데이터 교환에 Message Queue를 사용하기로 결정하였다. Message Queue 기능을 제공하는 다양한 솔루션이 있는데 이중에서 어떤 것을 사용하면 좋을 지 알아보면서 Message Queue란 어떤것이며 종류가 어떤것 들이 있는지 알...

맨 위로 이동 ↑

amazon sqs

Amazon MQ vs Amazon SQS

4 분 소요

이전에 작성한 글 Message Queue Comparison에서 새로운 프로젝트에 도입할 Message Queue들 중 Amazon MQ와 Amazon SQS를 후보군으로 채택하였었다. 이번 글은 Amazon MQ와 Amazon SQS 중에서 Amazon MQ를 선정한 배경 및 ...

Message Queue Comparison

8 분 소요

사내 예약 시스템을 만들면서 서버간의 데이터 교환에 Message Queue를 사용하기로 결정하였다. Message Queue 기능을 제공하는 다양한 솔루션이 있는데 이중에서 어떤 것을 사용하면 좋을 지 알아보면서 Message Queue란 어떤것이며 종류가 어떤것 들이 있는지 알...

맨 위로 이동 ↑

amazon mq

Amazon MQ vs Amazon SQS

4 분 소요

이전에 작성한 글 Message Queue Comparison에서 새로운 프로젝트에 도입할 Message Queue들 중 Amazon MQ와 Amazon SQS를 후보군으로 채택하였었다. 이번 글은 Amazon MQ와 Amazon SQS 중에서 Amazon MQ를 선정한 배경 및 ...

Message Queue Comparison

8 분 소요

사내 예약 시스템을 만들면서 서버간의 데이터 교환에 Message Queue를 사용하기로 결정하였다. Message Queue 기능을 제공하는 다양한 솔루션이 있는데 이중에서 어떤 것을 사용하면 좋을 지 알아보면서 Message Queue란 어떤것이며 종류가 어떤것 들이 있는지 알...

맨 위로 이동 ↑

jpa

Defining JPA’s ID in Kotlin

1 분 소요

Kotlin으로 Spring Data JPA를 사용할 때 많은 고민을 하였다. Entity Class를 정의할 때 특히 그런데, Data Class를 사용할지 말지, val를 사용할지 var를 사용할지 말지 등등 항상 어떻게 하는게 좀더 의미있는지 고민이 된다. 이 글은 그중에서 ...

맨 위로 이동 ↑

junit

코딩 컨벤션을 테스트 하자(feat. Konsist)

9 분 소요

개발자로서 팀 단위로 서비스 개발을 위한 코드를 작성할 때 유지보수성을 높이기 위해 일관된 코드 작성, 의존성 방향 제약 등을 위한 팀 내 코드 컨벤션을 작성하거나 본 경험이 있을 것이다. 보통 README.md나 사내 문서에 코딩 컨벤션을 작성해서 개발자들이 숙지하도록 하거나 L...

Comparing Testing Library for Kotlin

6 분 소요

Test의 중요성이 부각되면서 요즘 개발을 할때 테스트 코드를 많이 작성한다. 어쩌면 오퍼레이션 코드보다 테스트 코드가 프로젝트에서 더 많이 작성되기도 할지 모르겠다. 테스트 코드는 오퍼레이션 코드 못지 않게 아니 어쩌면 더 높은 가독성을 목표로 작성되어야 한다. JVM환경에서 자...

맨 위로 이동 ↑

길벗

소프트웨어 장인

4 분 소요

오래전 처음 회사에서 개발자로 일을 하고 있을때 이 책을 읽었던것 같다. 당시에는 애자일 방법론이 무엇인지도 TDD와 페어 프로그래밍을 어떻게 해야하는지도 모르고 기능을 만들어내기에 바빳던 시절이라 책에서 말하는 것들을 읽고 느끼는 바가 없었던 것 같다. 그러니 지금 다시 읽으니 ...

Microservices Patterns

2 분 소요

현재 재직중인 회사에서 개발된 모놀리식 서비스를 마이크로 서비스로 전환을 목표로 서비스를 하나하나 분리하고 있다. 내가 속한 팀도 현재 개발되어 있는 모놀리식 서버를 마이크로 서비스로 전환해야 한다. 아쉽게도 나는 마이크로 서비스를 개발하거나 운영해본 경험이 없다. 그래서 마이크로...

맨 위로 이동 ↑

Event Driven

The review of reconciliation refactoring

4 분 소요

이 글은 내가 회사에서 대사 기능을 리펙토링하면서 배운것들을 동료들에게 공유하기 위해 정리했던 내용을 옮긴 글이다. 피쳐를 쳐내기 바쁘다는 핑계로 대대적인 리펙토링을 할 기회가 많지 않았는데 이번 리펙토링을 하면서 크게 스프링의 빈을 정의하고 어떻게 주입하는 지에 대해 좀더 배울 ...

The review of sku service development

7 분 소요

이 글은 내가 회사에서 SKU 기능을 개발하면서 고민했던 내용들을 동료들에게 공유하면서 정리했던 내용을 옮긴 글이다. 기능 개발을 맡게 되면서 평소 해보고 싶었던 것들을 도입해 보았고 그것을 해보면서 많은 것들을 배우고 느낄 수 있었다. 아직 갈길이 멀지만 개인적으로는 좋은 경험이...

맨 위로 이동 ↑

agile

개발 방법론에 대한 나만의 원칙 세우기

4 분 소요

최근 들어 TDD, 클린 코드, 클린 아키텍처, MSA, 디자인 패턴, 애자일 방법론 등 다양한 개발 방법론에 대한 논쟁을 접하면서 느낀 바가 있어 오랜만에 내 생각에 대한 글을 적어본다. 이러한 논쟁에서 어떤 견해가 옳고 그르다고 말하기는 어렵다. 따라서 각자의 기준을 가지고 개...

How’s your team’s agile?

5 분 소요

여러분 팀의 애자일은 안녕하신가요? 다소 자극적으로 들릴수도 있겠지만 길지않은 기간동안(스타트업에서 하루는 다른 일반 회사의 일주일과 같…쿨럭) 애자일 방법을 도입한 스타트업을 다니면서 애자일 방법으로 소프트웨어를 개발하는 방법에 대해 느꼈던 나의 생각을 한마디로 표현한 문장이다....

맨 위로 이동 ↑

entity

재고 이력관리와 일급 컬렉션

10 분 소요

이 글은 회사에서 재고 관리 서비스의 재고 이력관리 기능을 개발하면서 일급 컬렉션을 사용하게 되었는데, 일급 컬렉션을 어떻게 활용하였는지 소개하는 글이다.

Entity와 Value Object

6 분 소요

객체지향언어로 개발을 하다보면 우리는 수많은 클래스를 생성하고 그 클래스를 사용한다. 도메인 주도 설계 책을 읽으면서 우리 만드는 클래스들이 어떤 책임을 가지냐에 따라서 역할을 나눌 수 있다는 것을 배우게 되었고 그중에서 이 글에서는 Entity와 Value Object에 대해서 ...

맨 위로 이동 ↑

value object

재고 이력관리와 일급 컬렉션

10 분 소요

이 글은 회사에서 재고 관리 서비스의 재고 이력관리 기능을 개발하면서 일급 컬렉션을 사용하게 되었는데, 일급 컬렉션을 어떻게 활용하였는지 소개하는 글이다.

Entity와 Value Object

6 분 소요

객체지향언어로 개발을 하다보면 우리는 수많은 클래스를 생성하고 그 클래스를 사용한다. 도메인 주도 설계 책을 읽으면서 우리 만드는 클래스들이 어떤 책임을 가지냐에 따라서 역할을 나눌 수 있다는 것을 배우게 되었고 그중에서 이 글에서는 Entity와 Value Object에 대해서 ...

맨 위로 이동 ↑

domain driven development

재고 이력관리와 일급 컬렉션

10 분 소요

이 글은 회사에서 재고 관리 서비스의 재고 이력관리 기능을 개발하면서 일급 컬렉션을 사용하게 되었는데, 일급 컬렉션을 어떻게 활용하였는지 소개하는 글이다.

Entity와 Value Object

6 분 소요

객체지향언어로 개발을 하다보면 우리는 수많은 클래스를 생성하고 그 클래스를 사용한다. 도메인 주도 설계 책을 읽으면서 우리 만드는 클래스들이 어떤 책임을 가지냐에 따라서 역할을 나눌 수 있다는 것을 배우게 되었고 그중에서 이 글에서는 Entity와 Value Object에 대해서 ...

맨 위로 이동 ↑

TDD

더 나은 테스트 문화 도입을 위하여

8 분 소요

요즘 개발자에게 테스트의 작성은 어찌보면 당연해 졌다. 많은 회사들이 테스트 작성 역량을 필요로 해서 테스트를 작성하는 것이 당연해 졌는지, 테스트를 작성하지 않아서 겪었던 안좋은 경험들이 쌓여서 테스트를 작성하게 되었는지, 다들 테스트를 작성해야한다고 말하니까 자신도 함께 작성해...

All knowing oracle

3 분 소요

이 글은 테스트 검증에 대한 코드를 리뷰하면서 느꼈던 나의 생각을 정리한 글이다. 옳고 그름, 맞고 틀리고를 떠나 온전히 나의 생각을 정리하고 이런 고민을 했던 것을 기록하기 위함이니 혹시 다른 의견이 있다면 댓글로 적어주시면 좋은 토의를 해볼 수 있을 것 같다.

맨 위로 이동 ↑

TLD

더 나은 테스트 문화 도입을 위하여

8 분 소요

요즘 개발자에게 테스트의 작성은 어찌보면 당연해 졌다. 많은 회사들이 테스트 작성 역량을 필요로 해서 테스트를 작성하는 것이 당연해 졌는지, 테스트를 작성하지 않아서 겪었던 안좋은 경험들이 쌓여서 테스트를 작성하게 되었는지, 다들 테스트를 작성해야한다고 말하니까 자신도 함께 작성해...

All knowing oracle

3 분 소요

이 글은 테스트 검증에 대한 코드를 리뷰하면서 느꼈던 나의 생각을 정리한 글이다. 옳고 그름, 맞고 틀리고를 떠나 온전히 나의 생각을 정리하고 이런 고민을 했던 것을 기록하기 위함이니 혹시 다른 의견이 있다면 댓글로 적어주시면 좋은 토의를 해볼 수 있을 것 같다.

맨 위로 이동 ↑

spring

우당탕탕 주문서 개발기

22 분 소요

이 글은 사내 블로그에 작성한 우당탕탕 주문서 개발기 내용을 그대로 가져오면서 나의 블로그의 언어톤에 맞게 변경한 글이다. 최근 도도 카트 팀에서는 정비기간을 마친 후 처음으로 제품 개발을 위한 프로젝트를 성황리에(?) 마쳤다. 약 7주간 진행했던 이 프로젝트는 도도 카트가 제공하...

Getting Started With Kotest

15 분 소요

최근 Kotlin을 이용하여 개발하면서 테스트 코드를 작성할때 Kotest를 주로 사용한다. 이전에 작성한 Comparing Testing Library for Kotlin을 보면 Kotest를 이용한 테스트 코드 작성의 장점에 대해서 적어 두었으니 읽어보면 좋을 것 같다. 이 글...

맨 위로 이동 ↑

mockserver

기능 테스트 전환 이야기

26 분 소요

모두가 노력해 준 덕분에 올해 목표로 했던 기능 테스트로의 전환을 마무리할 수 있게 되었다. 그래서 그동안 우리가 통합 테스트에서 기능테스트로 왜 전환하게 되었는지, 전환하면서 어떤 이슈들을 겪었는지 소개해보고자 한다.

Getting Started With Kotest

15 분 소요

최근 Kotlin을 이용하여 개발하면서 테스트 코드를 작성할때 Kotest를 주로 사용한다. 이전에 작성한 Comparing Testing Library for Kotlin을 보면 Kotest를 이용한 테스트 코드 작성의 장점에 대해서 적어 두었으니 읽어보면 좋을 것 같다. 이 글...

맨 위로 이동 ↑

Spring Boot

Circle CI로 쿠버네티스에 Spring Boot 웹 어플리케이션 배포하기

12 분 소요

자동화된 배포는 어쩌면 현재 시점에서는 당연하게 받아 들이는 행위라 생각된다. 손으로 하는(자동화되지 않은) 배포는 실수를 유발할 위험성을 가지고 있으며 자동화된 배포에 비해 느리고 번거롭다. 이러한 장점으로 인해 많은 회사들이 자동화된 배포 파이프라인을 가지고 있으며 Jenkin...

맨 위로 이동 ↑

JWT

서버 언어 전환 이야기

8 분 소요

이 글은 사내 블로그에 작성한 언어 전환 이야기 내용을 그대로 가져오면서 나의 블로그의 언어톤에 맞게 변경한 글이다. 최근 스포카는 서울 본사 사무실 이전과 함께 도도 포인트 서비스양도 등 많은 변화의 시간을 가졌었다. 내가 몸담은 도도 카트 팀도 앞으로 더 나은 서비스를 제공하기...

JWT를 이용한 Spring Security 인증 구현

5 분 소요

사내에서 Spring Security를 이용한 JWT인증을 구현하면서 UsernamePasswordAuthenticationFilter와 같이 이미 구현되어있는 인증 구현체가 없어서 JWT를 이용한 인증 필터를 새롭게 구현하게 되었다. Session 기반 인증만 구현하면서 기존 구...

맨 위로 이동 ↑

Spring

서버 언어 전환 이야기

8 분 소요

이 글은 사내 블로그에 작성한 언어 전환 이야기 내용을 그대로 가져오면서 나의 블로그의 언어톤에 맞게 변경한 글이다. 최근 스포카는 서울 본사 사무실 이전과 함께 도도 포인트 서비스양도 등 많은 변화의 시간을 가졌었다. 내가 몸담은 도도 카트 팀도 앞으로 더 나은 서비스를 제공하기...

JWT를 이용한 Spring Security 인증 구현

5 분 소요

사내에서 Spring Security를 이용한 JWT인증을 구현하면서 UsernamePasswordAuthenticationFilter와 같이 이미 구현되어있는 인증 구현체가 없어서 JWT를 이용한 인증 필터를 새롭게 구현하게 되었다. Session 기반 인증만 구현하면서 기존 구...

맨 위로 이동 ↑

rule

게시글 작성 규칙

1 분 소요

게시글을 작성할때 규칙을 정해두고 작성하면 일관성있는 글을 작성할 수 있을것 같아 아래에 그 규칙들을 정하고 지키고자 한다.

맨 위로 이동 ↑

markdown

게시글 작성 규칙

1 분 소요

게시글을 작성할때 규칙을 정해두고 작성하면 일관성있는 글을 작성할 수 있을것 같아 아래에 그 규칙들을 정하고 지키고자 한다.

맨 위로 이동 ↑

inheritance

맨 위로 이동 ↑

composition

맨 위로 이동 ↑

composition over inheritance

맨 위로 이동 ↑

성격급한 부자들

성격 급한 부자들

2 분 소요

회사 동료분께서 본인이 읽었던 책 중에서 잘 읽히는 책으로 손으로 꼽을 수 있다며 추천해 주신 책이다. 정말로 책을 느리게 읽는 내가 읽어도 3~4시간 안에 읽을 수 있었다. 이 책은 총 5장으로 나뉘어져 있으며 총 36가지의 부자들이 하지 않는 행동들에 대해 말해주고 있다. 36...

맨 위로 이동 ↑

다구치 도모타카

성격 급한 부자들

2 분 소요

회사 동료분께서 본인이 읽었던 책 중에서 잘 읽히는 책으로 손으로 꼽을 수 있다며 추천해 주신 책이다. 정말로 책을 느리게 읽는 내가 읽어도 3~4시간 안에 읽을 수 있었다. 이 책은 총 5장으로 나뉘어져 있으며 총 36가지의 부자들이 하지 않는 행동들에 대해 말해주고 있다. 36...

맨 위로 이동 ↑

김윤수

성격 급한 부자들

2 분 소요

회사 동료분께서 본인이 읽었던 책 중에서 잘 읽히는 책으로 손으로 꼽을 수 있다며 추천해 주신 책이다. 정말로 책을 느리게 읽는 내가 읽어도 3~4시간 안에 읽을 수 있었다. 이 책은 총 5장으로 나뉘어져 있으며 총 36가지의 부자들이 하지 않는 행동들에 대해 말해주고 있다. 36...

맨 위로 이동 ↑

김선준

성격 급한 부자들

2 분 소요

회사 동료분께서 본인이 읽었던 책 중에서 잘 읽히는 책으로 손으로 꼽을 수 있다며 추천해 주신 책이다. 정말로 책을 느리게 읽는 내가 읽어도 3~4시간 안에 읽을 수 있었다. 이 책은 총 5장으로 나뉘어져 있으며 총 36가지의 부자들이 하지 않는 행동들에 대해 말해주고 있다. 36...

맨 위로 이동 ↑

포레스트북스

성격 급한 부자들

2 분 소요

회사 동료분께서 본인이 읽었던 책 중에서 잘 읽히는 책으로 손으로 꼽을 수 있다며 추천해 주신 책이다. 정말로 책을 느리게 읽는 내가 읽어도 3~4시간 안에 읽을 수 있었다. 이 책은 총 5장으로 나뉘어져 있으며 총 36가지의 부자들이 하지 않는 행동들에 대해 말해주고 있다. 36...

맨 위로 이동 ↑

passwd

passwd options

2 분 소요

passwd 명령어 및 명령어 옵션들을 알아보자.

맨 위로 이동 ↑

unix

passwd options

2 분 소요

passwd 명령어 및 명령어 옵션들을 알아보자.

맨 위로 이동 ↑

소통

개발자의 소통의 중요성

4 분 소요

IT기술을 기반으로 성장하는 스타트업에서 개발 부서는 그 회사의 중심이라고 해도 과언이 아니다. 물론 마케팅이나 고객지원, 기획, 경영지원, 영업 등의 부서들도 회사에 없어서는 안될 중요한 부서이긴 하지만 서비스가 개발되지 않으면 그 기업이 존재할 수 없는 IT 스타트업의 특성상 ...

맨 위로 이동 ↑

communication

개발자의 소통의 중요성

4 분 소요

IT기술을 기반으로 성장하는 스타트업에서 개발 부서는 그 회사의 중심이라고 해도 과언이 아니다. 물론 마케팅이나 고객지원, 기획, 경영지원, 영업 등의 부서들도 회사에 없어서는 안될 중요한 부서이긴 하지만 서비스가 개발되지 않으면 그 기업이 존재할 수 없는 IT 스타트업의 특성상 ...

맨 위로 이동 ↑

tunneling

맨 위로 이동 ↑

port forwarding

맨 위로 이동 ↑

mergetool

맨 위로 이동 ↑

vimdiff

맨 위로 이동 ↑

functions

Kotlin Scope Functions

3 분 소요

Kotlin에서 제공하는 함수들 중에 let, run, with, apply, also라는 함수들에 대해서 알아보자.

맨 위로 이동 ↑

let

Kotlin Scope Functions

3 분 소요

Kotlin에서 제공하는 함수들 중에 let, run, with, apply, also라는 함수들에 대해서 알아보자.

맨 위로 이동 ↑

run

Kotlin Scope Functions

3 분 소요

Kotlin에서 제공하는 함수들 중에 let, run, with, apply, also라는 함수들에 대해서 알아보자.

맨 위로 이동 ↑

with

Kotlin Scope Functions

3 분 소요

Kotlin에서 제공하는 함수들 중에 let, run, with, apply, also라는 함수들에 대해서 알아보자.

맨 위로 이동 ↑

apply

Kotlin Scope Functions

3 분 소요

Kotlin에서 제공하는 함수들 중에 let, run, with, apply, also라는 함수들에 대해서 알아보자.

맨 위로 이동 ↑

also

Kotlin Scope Functions

3 분 소요

Kotlin에서 제공하는 함수들 중에 let, run, with, apply, also라는 함수들에 대해서 알아보자.

맨 위로 이동 ↑

union

Kotlin union vs flatten

5 분 소요

Kotlin에서 2개 이상의 배열을 합쳐 하나의 배열로 반환해야하는 기능을 구현하는 상황에서 union함수를 사용할지 flatten함수를 사용할지 고민을 한적이 있다. 당시에는 flatten을 사용하였지만 (union을 사용할 경우 반환 형식이 Set이기 때문에 다시 toList함...

맨 위로 이동 ↑

flatten

Kotlin union vs flatten

5 분 소요

Kotlin에서 2개 이상의 배열을 합쳐 하나의 배열로 반환해야하는 기능을 구현하는 상황에서 union함수를 사용할지 flatten함수를 사용할지 고민을 한적이 있다. 당시에는 flatten을 사용하였지만 (union을 사용할 경우 반환 형식이 Set이기 때문에 다시 toList함...

맨 위로 이동 ↑

Head First

Head First Design Patterns

3 분 소요

디자인 패턴을 좀더 깊게 공부해볼 필요성을 느껴서 처음에 GoF의 디자인 패턴을 사서 보려고 하였는데, 회사 동료가 먼어 읽어보라고 준 책이 Head First Design Patterns이다.

맨 위로 이동 ↑

Design Patterns

Head First Design Patterns

3 분 소요

디자인 패턴을 좀더 깊게 공부해볼 필요성을 느껴서 처음에 GoF의 디자인 패턴을 사서 보려고 하였는데, 회사 동료가 먼어 읽어보라고 준 책이 Head First Design Patterns이다.

맨 위로 이동 ↑

서환수

Head First Design Patterns

3 분 소요

디자인 패턴을 좀더 깊게 공부해볼 필요성을 느껴서 처음에 GoF의 디자인 패턴을 사서 보려고 하였는데, 회사 동료가 먼어 읽어보라고 준 책이 Head First Design Patterns이다.

맨 위로 이동 ↑

에릭 프리먼

Head First Design Patterns

3 분 소요

디자인 패턴을 좀더 깊게 공부해볼 필요성을 느껴서 처음에 GoF의 디자인 패턴을 사서 보려고 하였는데, 회사 동료가 먼어 읽어보라고 준 책이 Head First Design Patterns이다.

맨 위로 이동 ↑

엘리자베스 프리먼

Head First Design Patterns

3 분 소요

디자인 패턴을 좀더 깊게 공부해볼 필요성을 느껴서 처음에 GoF의 디자인 패턴을 사서 보려고 하였는데, 회사 동료가 먼어 읽어보라고 준 책이 Head First Design Patterns이다.

맨 위로 이동 ↑

케이시 시에라

Head First Design Patterns

3 분 소요

디자인 패턴을 좀더 깊게 공부해볼 필요성을 느껴서 처음에 GoF의 디자인 패턴을 사서 보려고 하였는데, 회사 동료가 먼어 읽어보라고 준 책이 Head First Design Patterns이다.

맨 위로 이동 ↑

버트 베이츠

Head First Design Patterns

3 분 소요

디자인 패턴을 좀더 깊게 공부해볼 필요성을 느껴서 처음에 GoF의 디자인 패턴을 사서 보려고 하였는데, 회사 동료가 먼어 읽어보라고 준 책이 Head First Design Patterns이다.

맨 위로 이동 ↑

CI

GIT Actions을 이용한 CI/CD 적용기 - CI편

4 분 소요

이 글은 현재 개인프로젝트로 개발하고 있는 OCCUPYING Repository에 GIT Actions을 이용하여 CI/CD를 적용해 보면서 겪었던 것들을 적은 글이다.

맨 위로 이동 ↑

continuous integration

GIT Actions을 이용한 CI/CD 적용기 - CI편

4 분 소요

이 글은 현재 개인프로젝트로 개발하고 있는 OCCUPYING Repository에 GIT Actions을 이용하여 CI/CD를 적용해 보면서 겪었던 것들을 적은 글이다.

맨 위로 이동 ↑

neo4j

Neo4j로 시작하는 그래프 데이터베이스 2/e

최대 1 분 소요

그래프 데이터베이스를 공부하고 싶어서 사내에서 스터디를 하였다. 스터디할 때 같이 보기로 한 책이 Neo4j로 시작하는 그래프 데이터베이스이다. 스터디에서 이 책을 선택한 이유는 그래프 데이터베이스를 이용해서 어떻게 데이터를 다룰 수 있는지 사례를 볼 수 있을 것 같아서였다. 책의...

맨 위로 이동 ↑

graph database

Neo4j로 시작하는 그래프 데이터베이스 2/e

최대 1 분 소요

그래프 데이터베이스를 공부하고 싶어서 사내에서 스터디를 하였다. 스터디할 때 같이 보기로 한 책이 Neo4j로 시작하는 그래프 데이터베이스이다. 스터디에서 이 책을 선택한 이유는 그래프 데이터베이스를 이용해서 어떻게 데이터를 다룰 수 있는지 사례를 볼 수 있을 것 같아서였다. 책의...

맨 위로 이동 ↑

cypher

Neo4j로 시작하는 그래프 데이터베이스 2/e

최대 1 분 소요

그래프 데이터베이스를 공부하고 싶어서 사내에서 스터디를 하였다. 스터디할 때 같이 보기로 한 책이 Neo4j로 시작하는 그래프 데이터베이스이다. 스터디에서 이 책을 선택한 이유는 그래프 데이터베이스를 이용해서 어떻게 데이터를 다룰 수 있는지 사례를 볼 수 있을 것 같아서였다. 책의...

맨 위로 이동 ↑

제롬 바톤

Neo4j로 시작하는 그래프 데이터베이스 2/e

최대 1 분 소요

그래프 데이터베이스를 공부하고 싶어서 사내에서 스터디를 하였다. 스터디할 때 같이 보기로 한 책이 Neo4j로 시작하는 그래프 데이터베이스이다. 스터디에서 이 책을 선택한 이유는 그래프 데이터베이스를 이용해서 어떻게 데이터를 다룰 수 있는지 사례를 볼 수 있을 것 같아서였다. 책의...

맨 위로 이동 ↑

릭 반 브루겐

Neo4j로 시작하는 그래프 데이터베이스 2/e

최대 1 분 소요

그래프 데이터베이스를 공부하고 싶어서 사내에서 스터디를 하였다. 스터디할 때 같이 보기로 한 책이 Neo4j로 시작하는 그래프 데이터베이스이다. 스터디에서 이 책을 선택한 이유는 그래프 데이터베이스를 이용해서 어떻게 데이터를 다룰 수 있는지 사례를 볼 수 있을 것 같아서였다. 책의...

맨 위로 이동 ↑

배동환

Neo4j로 시작하는 그래프 데이터베이스 2/e

최대 1 분 소요

그래프 데이터베이스를 공부하고 싶어서 사내에서 스터디를 하였다. 스터디할 때 같이 보기로 한 책이 Neo4j로 시작하는 그래프 데이터베이스이다. 스터디에서 이 책을 선택한 이유는 그래프 데이터베이스를 이용해서 어떻게 데이터를 다룰 수 있는지 사례를 볼 수 있을 것 같아서였다. 책의...

맨 위로 이동 ↑

김선집

Neo4j로 시작하는 그래프 데이터베이스 2/e

최대 1 분 소요

그래프 데이터베이스를 공부하고 싶어서 사내에서 스터디를 하였다. 스터디할 때 같이 보기로 한 책이 Neo4j로 시작하는 그래프 데이터베이스이다. 스터디에서 이 책을 선택한 이유는 그래프 데이터베이스를 이용해서 어떻게 데이터를 다룰 수 있는지 사례를 볼 수 있을 것 같아서였다. 책의...

맨 위로 이동 ↑

에이콘출판

Neo4j로 시작하는 그래프 데이터베이스 2/e

최대 1 분 소요

그래프 데이터베이스를 공부하고 싶어서 사내에서 스터디를 하였다. 스터디할 때 같이 보기로 한 책이 Neo4j로 시작하는 그래프 데이터베이스이다. 스터디에서 이 책을 선택한 이유는 그래프 데이터베이스를 이용해서 어떻게 데이터를 다룰 수 있는지 사례를 볼 수 있을 것 같아서였다. 책의...

맨 위로 이동 ↑

CD

GIT Actions을 이용한 CI/CD 적용기 - CD편

4 분 소요

지난 GIT Actions을 이용한 CI/CD 적용기 - CI편에 이어 이번 글은 CD에 대한 내용을 적어보겠다. CD가 Trigger 되는 시점은 master 브런치에 병합이 될때 실행되며, OCCUPYING프로젝트에서 CD는 Continuous Delivery가 아닌 Conti...

맨 위로 이동 ↑

continuous deployment

GIT Actions을 이용한 CI/CD 적용기 - CD편

4 분 소요

지난 GIT Actions을 이용한 CI/CD 적용기 - CI편에 이어 이번 글은 CD에 대한 내용을 적어보겠다. CD가 Trigger 되는 시점은 master 브런치에 병합이 될때 실행되며, OCCUPYING프로젝트에서 CD는 Continuous Delivery가 아닌 Conti...

맨 위로 이동 ↑

리처드 탈러(세일러)

넛지를 읽고

3 분 소요

회사에서 동료들과 설문조사에서 설문 문항에 따라 사람들의 설문에 대한 답변이 달라지는 현상에 대한 얘기를 한적이 있다. 동료는 이러한 현상을 넛지라고 하였고 넛지라는 책을 추천해 주었다. 나도 TV에서 들어봤던 책이기도 하고 이런 사회적 현상을 책으로 어떻게 풀어썼는지 궁금하기도 ...

맨 위로 이동 ↑

캐스 선스타인

넛지를 읽고

3 분 소요

회사에서 동료들과 설문조사에서 설문 문항에 따라 사람들의 설문에 대한 답변이 달라지는 현상에 대한 얘기를 한적이 있다. 동료는 이러한 현상을 넛지라고 하였고 넛지라는 책을 추천해 주었다. 나도 TV에서 들어봤던 책이기도 하고 이런 사회적 현상을 책으로 어떻게 풀어썼는지 궁금하기도 ...

맨 위로 이동 ↑

안진환

넛지를 읽고

3 분 소요

회사에서 동료들과 설문조사에서 설문 문항에 따라 사람들의 설문에 대한 답변이 달라지는 현상에 대한 얘기를 한적이 있다. 동료는 이러한 현상을 넛지라고 하였고 넛지라는 책을 추천해 주었다. 나도 TV에서 들어봤던 책이기도 하고 이런 사회적 현상을 책으로 어떻게 풀어썼는지 궁금하기도 ...

맨 위로 이동 ↑

리더스북

넛지를 읽고

3 분 소요

회사에서 동료들과 설문조사에서 설문 문항에 따라 사람들의 설문에 대한 답변이 달라지는 현상에 대한 얘기를 한적이 있다. 동료는 이러한 현상을 넛지라고 하였고 넛지라는 책을 추천해 주었다. 나도 TV에서 들어봤던 책이기도 하고 이런 사회적 현상을 책으로 어떻게 풀어썼는지 궁금하기도 ...

맨 위로 이동 ↑

H2

Spring WebFlux - Spring Data R2DBC tutorial

5 분 소요

Spring WebFlux에 대해서는 작년에 처음 내용을 접하고 나서 관심이 생겨서 개인 프로젝트로 만들어보기도 하면서 조금씩 익혀가고 있다. 현재는 공식 래퍼런스를 번역해가면서 내용을 제대로 익히기 위해 공부하고 있다. Spring WebFlux가 어떠한 컨셉을 가지고 기능을 제...

맨 위로 이동 ↑

R2DBC

Spring WebFlux - Spring Data R2DBC tutorial

5 분 소요

Spring WebFlux에 대해서는 작년에 처음 내용을 접하고 나서 관심이 생겨서 개인 프로젝트로 만들어보기도 하면서 조금씩 익혀가고 있다. 현재는 공식 래퍼런스를 번역해가면서 내용을 제대로 익히기 위해 공부하고 있다. Spring WebFlux가 어떠한 컨셉을 가지고 기능을 제...

맨 위로 이동 ↑

Functional EndPoint

Spring WebFlux - Functional Endpoint With Coroutine Tutorial

5 분 소요

이번 글에서는 이전에 작성한 Spring WebFlux - Spring Data R2DBC tutorial에 이어 Spring WebFlux를 이용한 API를 만들어보는 글을 작성해 보겠다. Spring WebFlux에서는 Web API를 위한 2가지 방식의 프로그래밍 모델을 제공...

맨 위로 이동 ↑

Coroutine

Spring WebFlux - Functional Endpoint With Coroutine Tutorial

5 분 소요

이번 글에서는 이전에 작성한 Spring WebFlux - Spring Data R2DBC tutorial에 이어 Spring WebFlux를 이용한 API를 만들어보는 글을 작성해 보겠다. Spring WebFlux에서는 Web API를 위한 2가지 방식의 프로그래밍 모델을 제공...

맨 위로 이동 ↑

Annotated Controller

Spring WebFlux - Annotated Controller with reactor Tutorial

2 분 소요

이번 글에서는 이전에 작성한 Spring WebFlux - Functional Endpoint With Coroutine Tutorial에 이어 Spring WebFlux를 이용한 또다른 방식의 API를 만들어보는 글을 작성해 보겠다. 이전 글에서는 함수형 앤드포인트방식을 이용하여...

맨 위로 이동 ↑

Reactor

Spring WebFlux - Annotated Controller with reactor Tutorial

2 분 소요

이번 글에서는 이전에 작성한 Spring WebFlux - Functional Endpoint With Coroutine Tutorial에 이어 Spring WebFlux를 이용한 또다른 방식의 API를 만들어보는 글을 작성해 보겠다. 이전 글에서는 함수형 앤드포인트방식을 이용하여...

맨 위로 이동 ↑

Robert C. Martin

Clean Architecture

2 분 소요

개발자라면 누구나 알고 있는 그 책 Clean Architecture를 드디어 읽어 보았다. 이전에 Clean Code를 읽고 Clean Architecture도 꼭 읽어봐야지 했었는데, 이제서야 이 책을 읽게 되었다. 이 글을 통해 내가 이 책을 읽고 생각 나는 키워드 들과 소감...

맨 위로 이동 ↑

송준이

Clean Architecture

2 분 소요

개발자라면 누구나 알고 있는 그 책 Clean Architecture를 드디어 읽어 보았다. 이전에 Clean Code를 읽고 Clean Architecture도 꼭 읽어봐야지 했었는데, 이제서야 이 책을 읽게 되었다. 이 글을 통해 내가 이 책을 읽고 생각 나는 키워드 들과 소감...

맨 위로 이동 ↑

MongoDB

Spring WebFlux - Spring Data MongoDB Reactive tutorial

3 분 소요

이전 글에서 RDBMS를 Spring WebFlux에서 사용하기 위해 Spring Data R2DBC 튜토리얼을 작성했었다. 이번 글에서는 Spring WebFlux에서 NoSQL중 하나인 MongoDB를 사용하기 위한 튜토리얼을 작성해 보고자 한다.

맨 위로 이동 ↑

swap

Swap Memory

2 분 소요

Swap Memory에 대해 알아보자.

맨 위로 이동 ↑

paging

Swap Memory

2 분 소요

Swap Memory에 대해 알아보자.

맨 위로 이동 ↑

synchronous

Synchronous, Asynchronous, Blocking, Non-Blocking

2 분 소요

얼마전에 Blocking과 Non-Blocking에 대해 설명을 해야 할 일이 있었는데, 설명을 Synchronous와 Asynchronous에 대해서 설명한 일이 있었다. 현재 내가 개발을 하면서 많은 곳에서 사용하고 있지만 제대로 알고 사용하고 있지 않다는 것을 알게 되었고, ...

맨 위로 이동 ↑

sync

Synchronous, Asynchronous, Blocking, Non-Blocking

2 분 소요

얼마전에 Blocking과 Non-Blocking에 대해 설명을 해야 할 일이 있었는데, 설명을 Synchronous와 Asynchronous에 대해서 설명한 일이 있었다. 현재 내가 개발을 하면서 많은 곳에서 사용하고 있지만 제대로 알고 사용하고 있지 않다는 것을 알게 되었고, ...

맨 위로 이동 ↑

asynchronous

Synchronous, Asynchronous, Blocking, Non-Blocking

2 분 소요

얼마전에 Blocking과 Non-Blocking에 대해 설명을 해야 할 일이 있었는데, 설명을 Synchronous와 Asynchronous에 대해서 설명한 일이 있었다. 현재 내가 개발을 하면서 많은 곳에서 사용하고 있지만 제대로 알고 사용하고 있지 않다는 것을 알게 되었고, ...

맨 위로 이동 ↑

async

Synchronous, Asynchronous, Blocking, Non-Blocking

2 분 소요

얼마전에 Blocking과 Non-Blocking에 대해 설명을 해야 할 일이 있었는데, 설명을 Synchronous와 Asynchronous에 대해서 설명한 일이 있었다. 현재 내가 개발을 하면서 많은 곳에서 사용하고 있지만 제대로 알고 사용하고 있지 않다는 것을 알게 되었고, ...

맨 위로 이동 ↑

blocking

Synchronous, Asynchronous, Blocking, Non-Blocking

2 분 소요

얼마전에 Blocking과 Non-Blocking에 대해 설명을 해야 할 일이 있었는데, 설명을 Synchronous와 Asynchronous에 대해서 설명한 일이 있었다. 현재 내가 개발을 하면서 많은 곳에서 사용하고 있지만 제대로 알고 사용하고 있지 않다는 것을 알게 되었고, ...

맨 위로 이동 ↑

non-blocking

Synchronous, Asynchronous, Blocking, Non-Blocking

2 분 소요

얼마전에 Blocking과 Non-Blocking에 대해 설명을 해야 할 일이 있었는데, 설명을 Synchronous와 Asynchronous에 대해서 설명한 일이 있었다. 현재 내가 개발을 하면서 많은 곳에서 사용하고 있지만 제대로 알고 사용하고 있지 않다는 것을 알게 되었고, ...

맨 위로 이동 ↑

scope

Spring Bean Scope

2 분 소요

빈을 정의할때, 스프링에서는 사용자가 생성한 빈을 어떠한 종속성을 가지도록 하거나 생성되는 객체의 범위를 지정하는 등을 제어할 수 있는 기능을 제공해준다. 이 글에서는 스프링에서 설정할 수 있는 Scope가 어떤 것들이 있으며 각 Scope 별 수행하는 역할에 대해서 적어보고자 한다.

맨 위로 이동 ↑

singleton

Spring Bean Scope

2 분 소요

빈을 정의할때, 스프링에서는 사용자가 생성한 빈을 어떠한 종속성을 가지도록 하거나 생성되는 객체의 범위를 지정하는 등을 제어할 수 있는 기능을 제공해준다. 이 글에서는 스프링에서 설정할 수 있는 Scope가 어떤 것들이 있으며 각 Scope 별 수행하는 역할에 대해서 적어보고자 한다.

맨 위로 이동 ↑

prototype

Spring Bean Scope

2 분 소요

빈을 정의할때, 스프링에서는 사용자가 생성한 빈을 어떠한 종속성을 가지도록 하거나 생성되는 객체의 범위를 지정하는 등을 제어할 수 있는 기능을 제공해준다. 이 글에서는 스프링에서 설정할 수 있는 Scope가 어떤 것들이 있으며 각 Scope 별 수행하는 역할에 대해서 적어보고자 한다.

맨 위로 이동 ↑

request

Spring Bean Scope

2 분 소요

빈을 정의할때, 스프링에서는 사용자가 생성한 빈을 어떠한 종속성을 가지도록 하거나 생성되는 객체의 범위를 지정하는 등을 제어할 수 있는 기능을 제공해준다. 이 글에서는 스프링에서 설정할 수 있는 Scope가 어떤 것들이 있으며 각 Scope 별 수행하는 역할에 대해서 적어보고자 한다.

맨 위로 이동 ↑

session

Spring Bean Scope

2 분 소요

빈을 정의할때, 스프링에서는 사용자가 생성한 빈을 어떠한 종속성을 가지도록 하거나 생성되는 객체의 범위를 지정하는 등을 제어할 수 있는 기능을 제공해준다. 이 글에서는 스프링에서 설정할 수 있는 Scope가 어떤 것들이 있으며 각 Scope 별 수행하는 역할에 대해서 적어보고자 한다.

맨 위로 이동 ↑

application

Spring Bean Scope

2 분 소요

빈을 정의할때, 스프링에서는 사용자가 생성한 빈을 어떠한 종속성을 가지도록 하거나 생성되는 객체의 범위를 지정하는 등을 제어할 수 있는 기능을 제공해준다. 이 글에서는 스프링에서 설정할 수 있는 Scope가 어떤 것들이 있으며 각 Scope 별 수행하는 역할에 대해서 적어보고자 한다.

맨 위로 이동 ↑

websocket

Spring Bean Scope

2 분 소요

빈을 정의할때, 스프링에서는 사용자가 생성한 빈을 어떠한 종속성을 가지도록 하거나 생성되는 객체의 범위를 지정하는 등을 제어할 수 있는 기능을 제공해준다. 이 글에서는 스프링에서 설정할 수 있는 Scope가 어떤 것들이 있으며 각 Scope 별 수행하는 역할에 대해서 적어보고자 한다.

맨 위로 이동 ↑

디지털노마드

Digital Nomad

1 분 소요

회사에서 친한 동료 기획자분께서 내가 블로그를 작성중이라고 말씀드리니 추천해 주신 책이 디지털 노마드이다. 동료의 지인분께서는 이 책에서 말하는 디지털 노마드의 삶을 살고 계시고 직장 다닐 때 보다 큰 수익을 얻으면서 생활하고 계신다고 나도 이 책을 읽고 디지털 노마드의 삶을 살아...

맨 위로 이동 ↑

권광현

Digital Nomad

1 분 소요

회사에서 친한 동료 기획자분께서 내가 블로그를 작성중이라고 말씀드리니 추천해 주신 책이 디지털 노마드이다. 동료의 지인분께서는 이 책에서 말하는 디지털 노마드의 삶을 살고 계시고 직장 다닐 때 보다 큰 수익을 얻으면서 생활하고 계신다고 나도 이 책을 읽고 디지털 노마드의 삶을 살아...

맨 위로 이동 ↑

박영훈

Digital Nomad

1 분 소요

회사에서 친한 동료 기획자분께서 내가 블로그를 작성중이라고 말씀드리니 추천해 주신 책이 디지털 노마드이다. 동료의 지인분께서는 이 책에서 말하는 디지털 노마드의 삶을 살고 계시고 직장 다닐 때 보다 큰 수익을 얻으면서 생활하고 계신다고 나도 이 책을 읽고 디지털 노마드의 삶을 살아...

맨 위로 이동 ↑

라온북

Digital Nomad

1 분 소요

회사에서 친한 동료 기획자분께서 내가 블로그를 작성중이라고 말씀드리니 추천해 주신 책이 디지털 노마드이다. 동료의 지인분께서는 이 책에서 말하는 디지털 노마드의 삶을 살고 계시고 직장 다닐 때 보다 큰 수익을 얻으면서 생활하고 계신다고 나도 이 책을 읽고 디지털 노마드의 삶을 살아...

맨 위로 이동 ↑

apache kafka

Message Queue Comparison

8 분 소요

사내 예약 시스템을 만들면서 서버간의 데이터 교환에 Message Queue를 사용하기로 결정하였다. Message Queue 기능을 제공하는 다양한 솔루션이 있는데 이중에서 어떤 것을 사용하면 좋을 지 알아보면서 Message Queue란 어떤것이며 종류가 어떤것 들이 있는지 알...

맨 위로 이동 ↑

amazon sns

Message Queue Comparison

8 분 소요

사내 예약 시스템을 만들면서 서버간의 데이터 교환에 Message Queue를 사용하기로 결정하였다. Message Queue 기능을 제공하는 다양한 솔루션이 있는데 이중에서 어떤 것을 사용하면 좋을 지 알아보면서 Message Queue란 어떤것이며 종류가 어떤것 들이 있는지 알...

맨 위로 이동 ↑

테스트주도개발

Test Driven Development: By Example

1 분 소요

1년 가까이 TDD를 연습하면서 이제서야 이 책을 읽어보았다. 사실 이 책을 읽은지는 한달정도 되었는데 리뷰를 적을지 말지 고민을 많이 하였다. 왜냐하면 내가 이책을 잘 읽었다고 생각이 들지 않았고 내용을 잘 이해하지 못했다고 생각이 들어서 이다. 아무래도 한번더 읽어봐야할 것 같...

맨 위로 이동 ↑

켄트벡

Test Driven Development: By Example

1 분 소요

1년 가까이 TDD를 연습하면서 이제서야 이 책을 읽어보았다. 사실 이 책을 읽은지는 한달정도 되었는데 리뷰를 적을지 말지 고민을 많이 하였다. 왜냐하면 내가 이책을 잘 읽었다고 생각이 들지 않았고 내용을 잘 이해하지 못했다고 생각이 들어서 이다. 아무래도 한번더 읽어봐야할 것 같...

맨 위로 이동 ↑

김창준

Test Driven Development: By Example

1 분 소요

1년 가까이 TDD를 연습하면서 이제서야 이 책을 읽어보았다. 사실 이 책을 읽은지는 한달정도 되었는데 리뷰를 적을지 말지 고민을 많이 하였다. 왜냐하면 내가 이책을 잘 읽었다고 생각이 들지 않았고 내용을 잘 이해하지 못했다고 생각이 들어서 이다. 아무래도 한번더 읽어봐야할 것 같...

맨 위로 이동 ↑

강규영

Test Driven Development: By Example

1 분 소요

1년 가까이 TDD를 연습하면서 이제서야 이 책을 읽어보았다. 사실 이 책을 읽은지는 한달정도 되었는데 리뷰를 적을지 말지 고민을 많이 하였다. 왜냐하면 내가 이책을 잘 읽었다고 생각이 들지 않았고 내용을 잘 이해하지 못했다고 생각이 들어서 이다. 아무래도 한번더 읽어봐야할 것 같...

맨 위로 이동 ↑

active mq

Active MQ Tutorial By Scenario

15 분 소요

이번 글에서는 Active MQ를 시나리별로 사용하는 방법에 대해서 작성해 보고자 한다.

맨 위로 이동 ↑

queue model

Active MQ Tutorial By Scenario

15 분 소요

이번 글에서는 Active MQ를 시나리별로 사용하는 방법에 대해서 작성해 보고자 한다.

맨 위로 이동 ↑

topic model

Active MQ Tutorial By Scenario

15 분 소요

이번 글에서는 Active MQ를 시나리별로 사용하는 방법에 대해서 작성해 보고자 한다.

맨 위로 이동 ↑

virtual topic

Active MQ Tutorial By Scenario

15 분 소요

이번 글에서는 Active MQ를 시나리별로 사용하는 방법에 대해서 작성해 보고자 한다.

맨 위로 이동 ↑

dead letter queue

Active MQ Tutorial By Scenario

15 분 소요

이번 글에서는 Active MQ를 시나리별로 사용하는 방법에 대해서 작성해 보고자 한다.

맨 위로 이동 ↑

delay

Active MQ Tutorial By Scenario

15 분 소요

이번 글에서는 Active MQ를 시나리별로 사용하는 방법에 대해서 작성해 보고자 한다.

맨 위로 이동 ↑

scheduled

Active MQ Tutorial By Scenario

15 분 소요

이번 글에서는 Active MQ를 시나리별로 사용하는 방법에 대해서 작성해 보고자 한다.

맨 위로 이동 ↑

spring boot

Active MQ Tutorial By Scenario

15 분 소요

이번 글에서는 Active MQ를 시나리별로 사용하는 방법에 대해서 작성해 보고자 한다.

맨 위로 이동 ↑

jms

Active MQ Tutorial By Scenario

15 분 소요

이번 글에서는 Active MQ를 시나리별로 사용하는 방법에 대해서 작성해 보고자 한다.

맨 위로 이동 ↑

isolation level

맨 위로 이동 ↑

kotlin test

Comparing Testing Library for Kotlin

6 분 소요

Test의 중요성이 부각되면서 요즘 개발을 할때 테스트 코드를 많이 작성한다. 어쩌면 오퍼레이션 코드보다 테스트 코드가 프로젝트에서 더 많이 작성되기도 할지 모르겠다. 테스트 코드는 오퍼레이션 코드 못지 않게 아니 어쩌면 더 높은 가독성을 목표로 작성되어야 한다. JVM환경에서 자...

맨 위로 이동 ↑

spock

Comparing Testing Library for Kotlin

6 분 소요

Test의 중요성이 부각되면서 요즘 개발을 할때 테스트 코드를 많이 작성한다. 어쩌면 오퍼레이션 코드보다 테스트 코드가 프로젝트에서 더 많이 작성되기도 할지 모르겠다. 테스트 코드는 오퍼레이션 코드 못지 않게 아니 어쩌면 더 높은 가독성을 목표로 작성되어야 한다. JVM환경에서 자...

맨 위로 이동 ↑

kolin

Comparing Testing Library for Kotlin

6 분 소요

Test의 중요성이 부각되면서 요즘 개발을 할때 테스트 코드를 많이 작성한다. 어쩌면 오퍼레이션 코드보다 테스트 코드가 프로젝트에서 더 많이 작성되기도 할지 모르겠다. 테스트 코드는 오퍼레이션 코드 못지 않게 아니 어쩌면 더 높은 가독성을 목표로 작성되어야 한다. JVM환경에서 자...

맨 위로 이동 ↑

java

Comparing Testing Library for Kotlin

6 분 소요

Test의 중요성이 부각되면서 요즘 개발을 할때 테스트 코드를 많이 작성한다. 어쩌면 오퍼레이션 코드보다 테스트 코드가 프로젝트에서 더 많이 작성되기도 할지 모르겠다. 테스트 코드는 오퍼레이션 코드 못지 않게 아니 어쩌면 더 높은 가독성을 목표로 작성되어야 한다. JVM환경에서 자...

맨 위로 이동 ↑

마이크로서비스패턴

Microservices Patterns

2 분 소요

현재 재직중인 회사에서 개발된 모놀리식 서비스를 마이크로 서비스로 전환을 목표로 서비스를 하나하나 분리하고 있다. 내가 속한 팀도 현재 개발되어 있는 모놀리식 서버를 마이크로 서비스로 전환해야 한다. 아쉽게도 나는 마이크로 서비스를 개발하거나 운영해본 경험이 없다. 그래서 마이크로...

맨 위로 이동 ↑

크리스 리쳐드슨

Microservices Patterns

2 분 소요

현재 재직중인 회사에서 개발된 모놀리식 서비스를 마이크로 서비스로 전환을 목표로 서비스를 하나하나 분리하고 있다. 내가 속한 팀도 현재 개발되어 있는 모놀리식 서버를 마이크로 서비스로 전환해야 한다. 아쉽게도 나는 마이크로 서비스를 개발하거나 운영해본 경험이 없다. 그래서 마이크로...

맨 위로 이동 ↑

이일웅

Microservices Patterns

2 분 소요

현재 재직중인 회사에서 개발된 모놀리식 서비스를 마이크로 서비스로 전환을 목표로 서비스를 하나하나 분리하고 있다. 내가 속한 팀도 현재 개발되어 있는 모놀리식 서버를 마이크로 서비스로 전환해야 한다. 아쉽게도 나는 마이크로 서비스를 개발하거나 운영해본 경험이 없다. 그래서 마이크로...

맨 위로 이동 ↑

id

Defining JPA’s ID in Kotlin

1 분 소요

Kotlin으로 Spring Data JPA를 사용할 때 많은 고민을 하였다. Entity Class를 정의할 때 특히 그런데, Data Class를 사용할지 말지, val를 사용할지 var를 사용할지 말지 등등 항상 어떻게 하는게 좀더 의미있는지 고민이 된다. 이 글은 그중에서 ...

맨 위로 이동 ↑

fixture

Take advantage of Kotlin Fixture

4 분 소요

테스트코드를 작성하다보면 테스트 데이터를 필수적으로 수없이 생성해야 한다. 테스트 데이터를 생성하는 작업은 상당히 번거롭고 지루한 작업이다. 하지만 테스트 데이터를 어떻게 잘 작성하느냐에 따라서 테스트 코드의 가독성이 좋아지기도 나빠지기도 하며 중복되는 코드로 인해 테스트 코드의 ...

맨 위로 이동 ↑

kotlinfixture

Take advantage of Kotlin Fixture

4 분 소요

테스트코드를 작성하다보면 테스트 데이터를 필수적으로 수없이 생성해야 한다. 테스트 데이터를 생성하는 작업은 상당히 번거롭고 지루한 작업이다. 하지만 테스트 데이터를 어떻게 잘 작성하느냐에 따라서 테스트 코드의 가독성이 좋아지기도 나빠지기도 하며 중복되는 코드로 인해 테스트 코드의 ...

맨 위로 이동 ↑

오브젝트 디자인 스타일 가이드

Object Design Style Guide

3 분 소요

이 책은 지금은 계시진 않지만 회사의 동료분께서 추천해주셔서 알게된 책이다. 목차를 읽어보았는데, 기초라고 적혀 있는 일반론적인 부분은 다른 책들에게서도 읽을 수 있는 내용이라 딱히 기대가 되진 않았지만 나머지 가이드 부분들은 평소 내가 코드를 작성할 때 고민하던 부분들을 코드로 ...

맨 위로 이동 ↑

마티아스 노박

Object Design Style Guide

3 분 소요

이 책은 지금은 계시진 않지만 회사의 동료분께서 추천해주셔서 알게된 책이다. 목차를 읽어보았는데, 기초라고 적혀 있는 일반론적인 부분은 다른 책들에게서도 읽을 수 있는 내용이라 딱히 기대가 되진 않았지만 나머지 가이드 부분들은 평소 내가 코드를 작성할 때 고민하던 부분들을 코드로 ...

맨 위로 이동 ↑

이상주

Object Design Style Guide

3 분 소요

이 책은 지금은 계시진 않지만 회사의 동료분께서 추천해주셔서 알게된 책이다. 목차를 읽어보았는데, 기초라고 적혀 있는 일반론적인 부분은 다른 책들에게서도 읽을 수 있는 내용이라 딱히 기대가 되진 않았지만 나머지 가이드 부분들은 평소 내가 코드를 작성할 때 고민하던 부분들을 코드로 ...

맨 위로 이동 ↑

위키북스

Object Design Style Guide

3 분 소요

이 책은 지금은 계시진 않지만 회사의 동료분께서 추천해주셔서 알게된 책이다. 목차를 읽어보았는데, 기초라고 적혀 있는 일반론적인 부분은 다른 책들에게서도 읽을 수 있는 내용이라 딱히 기대가 되진 않았지만 나머지 가이드 부분들은 평소 내가 코드를 작성할 때 고민하던 부분들을 코드로 ...

맨 위로 이동 ↑

water fall

How’s your team’s agile?

5 분 소요

여러분 팀의 애자일은 안녕하신가요? 다소 자극적으로 들릴수도 있겠지만 길지않은 기간동안(스타트업에서 하루는 다른 일반 회사의 일주일과 같…쿨럭) 애자일 방법을 도입한 스타트업을 다니면서 애자일 방법으로 소프트웨어를 개발하는 방법에 대해 느꼈던 나의 생각을 한마디로 표현한 문장이다....

맨 위로 이동 ↑

scrum

How’s your team’s agile?

5 분 소요

여러분 팀의 애자일은 안녕하신가요? 다소 자극적으로 들릴수도 있겠지만 길지않은 기간동안(스타트업에서 하루는 다른 일반 회사의 일주일과 같…쿨럭) 애자일 방법을 도입한 스타트업을 다니면서 애자일 방법으로 소프트웨어를 개발하는 방법에 대해 느꼈던 나의 생각을 한마디로 표현한 문장이다....

맨 위로 이동 ↑

sprint

How’s your team’s agile?

5 분 소요

여러분 팀의 애자일은 안녕하신가요? 다소 자극적으로 들릴수도 있겠지만 길지않은 기간동안(스타트업에서 하루는 다른 일반 회사의 일주일과 같…쿨럭) 애자일 방법을 도입한 스타트업을 다니면서 애자일 방법으로 소프트웨어를 개발하는 방법에 대해 느꼈던 나의 생각을 한마디로 표현한 문장이다....

맨 위로 이동 ↑

kanban

How’s your team’s agile?

5 분 소요

여러분 팀의 애자일은 안녕하신가요? 다소 자극적으로 들릴수도 있겠지만 길지않은 기간동안(스타트업에서 하루는 다른 일반 회사의 일주일과 같…쿨럭) 애자일 방법을 도입한 스타트업을 다니면서 애자일 방법으로 소프트웨어를 개발하는 방법에 대해 느꼈던 나의 생각을 한마디로 표현한 문장이다....

맨 위로 이동 ↑

Python

SQLAlchemy의 filter에서 is None/is not None은 왜 동작하지 않을까?

6 분 소요

이 글은 Python 초보인 내가 SQLAlchemy를 (제대로 알지 못하고)사용하면서 겪었던 이슈에 대해 원인을 찾아보고 왜 SQLAlchemy가 그렇게 동작하게끔 구현되었는지, 앞으로 사용할 때 어떤 주의를 기울여야 하는지를 정리한 글이다.

맨 위로 이동 ↑

SQLAlchemy

SQLAlchemy의 filter에서 is None/is not None은 왜 동작하지 않을까?

6 분 소요

이 글은 Python 초보인 내가 SQLAlchemy를 (제대로 알지 못하고)사용하면서 겪었던 이슈에 대해 원인을 찾아보고 왜 SQLAlchemy가 그렇게 동작하게끔 구현되었는지, 앞으로 사용할 때 어떤 주의를 기울여야 하는지를 정리한 글이다.

맨 위로 이동 ↑

code review

좋은 코드리뷰에 대한 고찰

9 분 소요

이 글은 코드리뷰 활동을 하면서 어떻게 하면 더 나은 코드리뷰활동을 이어갈 수 있을까 라는 생각을 정리한 글이다. 백명석님의 Code Review에 대하여라는 영상을 많이 참고하였다.

맨 위로 이동 ↑

mokk

Getting Started With Kotest

15 분 소요

최근 Kotlin을 이용하여 개발하면서 테스트 코드를 작성할때 Kotest를 주로 사용한다. 이전에 작성한 Comparing Testing Library for Kotlin을 보면 Kotest를 이용한 테스트 코드 작성의 장점에 대해서 적어 두었으니 읽어보면 좋을 것 같다. 이 글...

맨 위로 이동 ↑

전문가를 위한 파이썬

Fluent Python

6 분 소요

현재 회사에서 Python을 주 언어로 사용하고 있다. 지금까지 나는 Java, Kotlin, Javascript 언어를 주로 사용해왔었고 Python은 코딩 튜터로 활동할때 조금 사용해 보았지만 제대로 안다고 말하기 어려웠다. 그래서 Python에 대해 좀더 깊이 있게 알아보기 ...

맨 위로 이동 ↑

루시아누 하말류

Fluent Python

6 분 소요

현재 회사에서 Python을 주 언어로 사용하고 있다. 지금까지 나는 Java, Kotlin, Javascript 언어를 주로 사용해왔었고 Python은 코딩 튜터로 활동할때 조금 사용해 보았지만 제대로 안다고 말하기 어려웠다. 그래서 Python에 대해 좀더 깊이 있게 알아보기 ...

맨 위로 이동 ↑

강권학

Fluent Python

6 분 소요

현재 회사에서 Python을 주 언어로 사용하고 있다. 지금까지 나는 Java, Kotlin, Javascript 언어를 주로 사용해왔었고 Python은 코딩 튜터로 활동할때 조금 사용해 보았지만 제대로 안다고 말하기 어려웠다. 그래서 Python에 대해 좀더 깊이 있게 알아보기 ...

맨 위로 이동 ↑

Domain Driven Development

도메인 주도 개발 전환 이야기

13 분 소요

이 글은 현재 내가 몸담은 회사의 서비스에서 도메인을 정의하고 그것에 맞게 백엔드의 구조를 개선해 가는 과정을 적은 이야기이다. 도메인 주도 개발 전환 이야기라는 장황한 제목을 적긴 했지만 사실 현재 만들어져있는 도도카트의 백엔드 코드를 도메인에 맞게 재 구조화하고 리펙토링하는 과...

맨 위로 이동 ↑

소프트웨어 장인

소프트웨어 장인

4 분 소요

오래전 처음 회사에서 개발자로 일을 하고 있을때 이 책을 읽었던것 같다. 당시에는 애자일 방법론이 무엇인지도 TDD와 페어 프로그래밍을 어떻게 해야하는지도 모르고 기능을 만들어내기에 바빳던 시절이라 책에서 말하는 것들을 읽고 느끼는 바가 없었던 것 같다. 그러니 지금 다시 읽으니 ...

맨 위로 이동 ↑

산드로 만쿠소

소프트웨어 장인

4 분 소요

오래전 처음 회사에서 개발자로 일을 하고 있을때 이 책을 읽었던것 같다. 당시에는 애자일 방법론이 무엇인지도 TDD와 페어 프로그래밍을 어떻게 해야하는지도 모르고 기능을 만들어내기에 바빳던 시절이라 책에서 말하는 것들을 읽고 느끼는 바가 없었던 것 같다. 그러니 지금 다시 읽으니 ...

맨 위로 이동 ↑

권오인

소프트웨어 장인

4 분 소요

오래전 처음 회사에서 개발자로 일을 하고 있을때 이 책을 읽었던것 같다. 당시에는 애자일 방법론이 무엇인지도 TDD와 페어 프로그래밍을 어떻게 해야하는지도 모르고 기능을 만들어내기에 바빳던 시절이라 책에서 말하는 것들을 읽고 느끼는 바가 없었던 것 같다. 그러니 지금 다시 읽으니 ...

맨 위로 이동 ↑

Circle CI

Circle CI로 쿠버네티스에 Spring Boot 웹 어플리케이션 배포하기

12 분 소요

자동화된 배포는 어쩌면 현재 시점에서는 당연하게 받아 들이는 행위라 생각된다. 손으로 하는(자동화되지 않은) 배포는 실수를 유발할 위험성을 가지고 있으며 자동화된 배포에 비해 느리고 번거롭다. 이러한 장점으로 인해 많은 회사들이 자동화된 배포 파이프라인을 가지고 있으며 Jenkin...

맨 위로 이동 ↑

gradle

Circle CI로 쿠버네티스에 Spring Boot 웹 어플리케이션 배포하기

12 분 소요

자동화된 배포는 어쩌면 현재 시점에서는 당연하게 받아 들이는 행위라 생각된다. 손으로 하는(자동화되지 않은) 배포는 실수를 유발할 위험성을 가지고 있으며 자동화된 배포에 비해 느리고 번거롭다. 이러한 장점으로 인해 많은 회사들이 자동화된 배포 파이프라인을 가지고 있으며 Jenkin...

맨 위로 이동 ↑

JIB

Circle CI로 쿠버네티스에 Spring Boot 웹 어플리케이션 배포하기

12 분 소요

자동화된 배포는 어쩌면 현재 시점에서는 당연하게 받아 들이는 행위라 생각된다. 손으로 하는(자동화되지 않은) 배포는 실수를 유발할 위험성을 가지고 있으며 자동화된 배포에 비해 느리고 번거롭다. 이러한 장점으로 인해 많은 회사들이 자동화된 배포 파이프라인을 가지고 있으며 Jenkin...

맨 위로 이동 ↑

Kubernetes

Circle CI로 쿠버네티스에 Spring Boot 웹 어플리케이션 배포하기

12 분 소요

자동화된 배포는 어쩌면 현재 시점에서는 당연하게 받아 들이는 행위라 생각된다. 손으로 하는(자동화되지 않은) 배포는 실수를 유발할 위험성을 가지고 있으며 자동화된 배포에 비해 느리고 번거롭다. 이러한 장점으로 인해 많은 회사들이 자동화된 배포 파이프라인을 가지고 있으며 Jenkin...

맨 위로 이동 ↑

Helm

Circle CI로 쿠버네티스에 Spring Boot 웹 어플리케이션 배포하기

12 분 소요

자동화된 배포는 어쩌면 현재 시점에서는 당연하게 받아 들이는 행위라 생각된다. 손으로 하는(자동화되지 않은) 배포는 실수를 유발할 위험성을 가지고 있으며 자동화된 배포에 비해 느리고 번거롭다. 이러한 장점으로 인해 많은 회사들이 자동화된 배포 파이프라인을 가지고 있으며 Jenkin...

맨 위로 이동 ↑

AWS

Circle CI로 쿠버네티스에 Spring Boot 웹 어플리케이션 배포하기

12 분 소요

자동화된 배포는 어쩌면 현재 시점에서는 당연하게 받아 들이는 행위라 생각된다. 손으로 하는(자동화되지 않은) 배포는 실수를 유발할 위험성을 가지고 있으며 자동화된 배포에 비해 느리고 번거롭다. 이러한 장점으로 인해 많은 회사들이 자동화된 배포 파이프라인을 가지고 있으며 Jenkin...

맨 위로 이동 ↑

ECR

Circle CI로 쿠버네티스에 Spring Boot 웹 어플리케이션 배포하기

12 분 소요

자동화된 배포는 어쩌면 현재 시점에서는 당연하게 받아 들이는 행위라 생각된다. 손으로 하는(자동화되지 않은) 배포는 실수를 유발할 위험성을 가지고 있으며 자동화된 배포에 비해 느리고 번거롭다. 이러한 장점으로 인해 많은 회사들이 자동화된 배포 파이프라인을 가지고 있으며 Jenkin...

맨 위로 이동 ↑

EKS

Circle CI로 쿠버네티스에 Spring Boot 웹 어플리케이션 배포하기

12 분 소요

자동화된 배포는 어쩌면 현재 시점에서는 당연하게 받아 들이는 행위라 생각된다. 손으로 하는(자동화되지 않은) 배포는 실수를 유발할 위험성을 가지고 있으며 자동화된 배포에 비해 느리고 번거롭다. 이러한 장점으로 인해 많은 회사들이 자동화된 배포 파이프라인을 가지고 있으며 Jenkin...

맨 위로 이동 ↑

Spring Data Elasticsearch

맨 위로 이동 ↑

nori

맨 위로 이동 ↑

TestContainer

맨 위로 이동 ↑

JIRA

제품 개발을 위한 JIRA 사용 가이드

8 분 소요

이 글은 현재 몸담고 있는 팀에서 제품을 개발할때 JIRA를 활용하는 사례를 소개하고 이를 통해 JIRA를 활용하는 방법을 소개하기 위한 글이다. JIRA의 사용방법은 공식 페이지에 좀더 자세히 나와있으니 참고하고 이 글에서는 사용 시나리오를 기반으로 어떻게 JIRA를 활용하여 제...

맨 위로 이동 ↑

Agile

제품 개발을 위한 JIRA 사용 가이드

8 분 소요

이 글은 현재 몸담고 있는 팀에서 제품을 개발할때 JIRA를 활용하는 사례를 소개하고 이를 통해 JIRA를 활용하는 방법을 소개하기 위한 글이다. JIRA의 사용방법은 공식 페이지에 좀더 자세히 나와있으니 참고하고 이 글에서는 사용 시나리오를 기반으로 어떻게 JIRA를 활용하여 제...

맨 위로 이동 ↑

Sprint

제품 개발을 위한 JIRA 사용 가이드

8 분 소요

이 글은 현재 몸담고 있는 팀에서 제품을 개발할때 JIRA를 활용하는 사례를 소개하고 이를 통해 JIRA를 활용하는 방법을 소개하기 위한 글이다. JIRA의 사용방법은 공식 페이지에 좀더 자세히 나와있으니 참고하고 이 글에서는 사용 시나리오를 기반으로 어떻게 JIRA를 활용하여 제...

맨 위로 이동 ↑

Kanban

제품 개발을 위한 JIRA 사용 가이드

8 분 소요

이 글은 현재 몸담고 있는 팀에서 제품을 개발할때 JIRA를 활용하는 사례를 소개하고 이를 통해 JIRA를 활용하는 방법을 소개하기 위한 글이다. JIRA의 사용방법은 공식 페이지에 좀더 자세히 나와있으니 참고하고 이 글에서는 사용 시나리오를 기반으로 어떻게 JIRA를 활용하여 제...

맨 위로 이동 ↑

Scrum

제품 개발을 위한 JIRA 사용 가이드

8 분 소요

이 글은 현재 몸담고 있는 팀에서 제품을 개발할때 JIRA를 활용하는 사례를 소개하고 이를 통해 JIRA를 활용하는 방법을 소개하기 위한 글이다. JIRA의 사용방법은 공식 페이지에 좀더 자세히 나와있으니 참고하고 이 글에서는 사용 시나리오를 기반으로 어떻게 JIRA를 활용하여 제...

맨 위로 이동 ↑

Spring Security

JWT를 이용한 Spring Security 인증 구현

5 분 소요

사내에서 Spring Security를 이용한 JWT인증을 구현하면서 UsernamePasswordAuthenticationFilter와 같이 이미 구현되어있는 인증 구현체가 없어서 JWT를 이용한 인증 필터를 새롭게 구현하게 되었다. Session 기반 인증만 구현하면서 기존 구...

맨 위로 이동 ↑

Kotlin

JWT를 이용한 Spring Security 인증 구현

5 분 소요

사내에서 Spring Security를 이용한 JWT인증을 구현하면서 UsernamePasswordAuthenticationFilter와 같이 이미 구현되어있는 인증 구현체가 없어서 JWT를 이용한 인증 필터를 새롭게 구현하게 되었다. Session 기반 인증만 구현하면서 기존 구...

맨 위로 이동 ↑

Authentication

JWT를 이용한 Spring Security 인증 구현

5 분 소요

사내에서 Spring Security를 이용한 JWT인증을 구현하면서 UsernamePasswordAuthenticationFilter와 같이 이미 구현되어있는 인증 구현체가 없어서 JWT를 이용한 인증 필터를 새롭게 구현하게 되었다. Session 기반 인증만 구현하면서 기존 구...

맨 위로 이동 ↑

마틴 파울러

Refactoring

5 분 소요

너무나 유명한 책이라 이 책이 왜 좋은지 설명할 필요가 없는 책이다. 이제서야 읽어보고 리뷰를 적어보는게 한심스럽기도 하지만 한편으로는 지금 읽음으로써 와닿는 부분이 많았다는 부분에서는 다행이라 생각이 들기도 한다. 리팩터링은 1판에서는 자바로 작성되엇고 2판은 자바스크립트로 작성...

맨 위로 이동 ↑

개앞맵시

Refactoring

5 분 소요

너무나 유명한 책이라 이 책이 왜 좋은지 설명할 필요가 없는 책이다. 이제서야 읽어보고 리뷰를 적어보는게 한심스럽기도 하지만 한편으로는 지금 읽음으로써 와닿는 부분이 많았다는 부분에서는 다행이라 생각이 들기도 한다. 리팩터링은 1판에서는 자바로 작성되엇고 2판은 자바스크립트로 작성...

맨 위로 이동 ↑

남기혁

Refactoring

5 분 소요

너무나 유명한 책이라 이 책이 왜 좋은지 설명할 필요가 없는 책이다. 이제서야 읽어보고 리뷰를 적어보는게 한심스럽기도 하지만 한편으로는 지금 읽음으로써 와닿는 부분이 많았다는 부분에서는 다행이라 생각이 들기도 한다. 리팩터링은 1판에서는 자바로 작성되엇고 2판은 자바스크립트로 작성...

맨 위로 이동 ↑

2판

Refactoring

5 분 소요

너무나 유명한 책이라 이 책이 왜 좋은지 설명할 필요가 없는 책이다. 이제서야 읽어보고 리뷰를 적어보는게 한심스럽기도 하지만 한편으로는 지금 읽음으로써 와닿는 부분이 많았다는 부분에서는 다행이라 생각이 들기도 한다. 리팩터링은 1판에서는 자바로 작성되엇고 2판은 자바스크립트로 작성...

맨 위로 이동 ↑

톰 드마르코

Peopleware

4 분 소요

리펙터링을 다 읽고 난 후 다음에 읽을 책을 찾기 위해 서점에 들렀다가 눈에 띄여서 구매해 보았다. 사실 이전엔 눈에 띄지 않다가 이제서야 눈에 띈 이유는 현재 백엔드 챕터 리드를 맡고 있는데 팀원간의 관계와 좀더 나은 개발 문화, 환경을 조성할 수 있는 방법을 조금씩 알아가고 싶...

맨 위로 이동 ↑

티모시 리스터

Peopleware

4 분 소요

리펙터링을 다 읽고 난 후 다음에 읽을 책을 찾기 위해 서점에 들렀다가 눈에 띄여서 구매해 보았다. 사실 이전엔 눈에 띄지 않다가 이제서야 눈에 띈 이유는 현재 백엔드 챕터 리드를 맡고 있는데 팀원간의 관계와 좀더 나은 개발 문화, 환경을 조성할 수 있는 방법을 조금씩 알아가고 싶...

맨 위로 이동 ↑

박재호

Peopleware

4 분 소요

리펙터링을 다 읽고 난 후 다음에 읽을 책을 찾기 위해 서점에 들렀다가 눈에 띄여서 구매해 보았다. 사실 이전엔 눈에 띄지 않다가 이제서야 눈에 띈 이유는 현재 백엔드 챕터 리드를 맡고 있는데 팀원간의 관계와 좀더 나은 개발 문화, 환경을 조성할 수 있는 방법을 조금씩 알아가고 싶...

맨 위로 이동 ↑

이해영

Peopleware

4 분 소요

리펙터링을 다 읽고 난 후 다음에 읽을 책을 찾기 위해 서점에 들렀다가 눈에 띄여서 구매해 보았다. 사실 이전엔 눈에 띄지 않다가 이제서야 눈에 띈 이유는 현재 백엔드 챕터 리드를 맡고 있는데 팀원간의 관계와 좀더 나은 개발 문화, 환경을 조성할 수 있는 방법을 조금씩 알아가고 싶...

맨 위로 이동 ↑

3판

Peopleware

4 분 소요

리펙터링을 다 읽고 난 후 다음에 읽을 책을 찾기 위해 서점에 들렀다가 눈에 띄여서 구매해 보았다. 사실 이전엔 눈에 띄지 않다가 이제서야 눈에 띈 이유는 현재 백엔드 챕터 리드를 맡고 있는데 팀원간의 관계와 좀더 나은 개발 문화, 환경을 조성할 수 있는 방법을 조금씩 알아가고 싶...

맨 위로 이동 ↑

언어전환

서버 언어 전환 이야기

8 분 소요

이 글은 사내 블로그에 작성한 언어 전환 이야기 내용을 그대로 가져오면서 나의 블로그의 언어톤에 맞게 변경한 글이다. 최근 스포카는 서울 본사 사무실 이전과 함께 도도 포인트 서비스양도 등 많은 변화의 시간을 가졌었다. 내가 몸담은 도도 카트 팀도 앞으로 더 나은 서비스를 제공하기...

맨 위로 이동 ↑

회고

서버 언어 전환 이야기

8 분 소요

이 글은 사내 블로그에 작성한 언어 전환 이야기 내용을 그대로 가져오면서 나의 블로그의 언어톤에 맞게 변경한 글이다. 최근 스포카는 서울 본사 사무실 이전과 함께 도도 포인트 서비스양도 등 많은 변화의 시간을 가졌었다. 내가 몸담은 도도 카트 팀도 앞으로 더 나은 서비스를 제공하기...

맨 위로 이동 ↑

Graphql

서버 언어 전환 이야기

8 분 소요

이 글은 사내 블로그에 작성한 언어 전환 이야기 내용을 그대로 가져오면서 나의 블로그의 언어톤에 맞게 변경한 글이다. 최근 스포카는 서울 본사 사무실 이전과 함께 도도 포인트 서비스양도 등 많은 변화의 시간을 가졌었다. 내가 몸담은 도도 카트 팀도 앞으로 더 나은 서비스를 제공하기...

맨 위로 이동 ↑

test

더 나은 테스트 문화 도입을 위하여

8 분 소요

요즘 개발자에게 테스트의 작성은 어찌보면 당연해 졌다. 많은 회사들이 테스트 작성 역량을 필요로 해서 테스트를 작성하는 것이 당연해 졌는지, 테스트를 작성하지 않아서 겪었던 안좋은 경험들이 쌓여서 테스트를 작성하게 되었는지, 다들 테스트를 작성해야한다고 말하니까 자신도 함께 작성해...

맨 위로 이동 ↑

hashCode

우당탕탕 주문서 개발기

22 분 소요

이 글은 사내 블로그에 작성한 우당탕탕 주문서 개발기 내용을 그대로 가져오면서 나의 블로그의 언어톤에 맞게 변경한 글이다. 최근 도도 카트 팀에서는 정비기간을 마친 후 처음으로 제품 개발을 위한 프로젝트를 성황리에(?) 마쳤다. 약 7주간 진행했던 이 프로젝트는 도도 카트가 제공하...

맨 위로 이동 ↑

event

우당탕탕 주문서 개발기

22 분 소요

이 글은 사내 블로그에 작성한 우당탕탕 주문서 개발기 내용을 그대로 가져오면서 나의 블로그의 언어톤에 맞게 변경한 글이다. 최근 도도 카트 팀에서는 정비기간을 마친 후 처음으로 제품 개발을 위한 프로젝트를 성황리에(?) 마쳤다. 약 7주간 진행했던 이 프로젝트는 도도 카트가 제공하...

맨 위로 이동 ↑

abstraction

추상화와 협업

13 분 소요

이 글은 객체지향의 사실과 오해의 내용 중 추상화와 관련된 내용을 읽으면서 좀 더 나은 협업을 위한 나의 생각을 사내 워크샵에서 공유하게 되었고 그 내용을 옮겨 적은 글이다.

맨 위로 이동 ↑

cowork

추상화와 협업

13 분 소요

이 글은 객체지향의 사실과 오해의 내용 중 추상화와 관련된 내용을 읽으면서 좀 더 나은 협업을 위한 나의 생각을 사내 워크샵에서 공유하게 되었고 그 내용을 옮겨 적은 글이다.

맨 위로 이동 ↑

객체지향의 사실과 오해

추상화와 협업

13 분 소요

이 글은 객체지향의 사실과 오해의 내용 중 추상화와 관련된 내용을 읽으면서 좀 더 나은 협업을 위한 나의 생각을 사내 워크샵에서 공유하게 되었고 그 내용을 옮겨 적은 글이다.

맨 위로 이동 ↑

OSIV

왜 LazyInitializationException이 발생하지? - OSIV편

11 분 소요

이 글은 Spring Data JPA를 이용하여 배치 기능을 개발하면서 겪었던 LazyInitializationException 발생 사례를 토대로 문제 해결방법을 찾아가는 과정을 적어본 내용이다. 사실 이 글에서 중점적으로 다루게될 OSIV(Open Session In View)...

맨 위로 이동 ↑

Spring MVC

왜 LazyInitializationException이 발생하지? - OSIV편

11 분 소요

이 글은 Spring Data JPA를 이용하여 배치 기능을 개발하면서 겪었던 LazyInitializationException 발생 사례를 토대로 문제 해결방법을 찾아가는 과정을 적어본 내용이다. 사실 이 글에서 중점적으로 다루게될 OSIV(Open Session In View)...

맨 위로 이동 ↑

Spring Scheduler

왜 LazyInitializationException이 발생하지? - OSIV편

11 분 소요

이 글은 Spring Data JPA를 이용하여 배치 기능을 개발하면서 겪었던 LazyInitializationException 발생 사례를 토대로 문제 해결방법을 찾아가는 과정을 적어본 내용이다. 사실 이 글에서 중점적으로 다루게될 OSIV(Open Session In View)...

맨 위로 이동 ↑

청구

청구/수납 서비스 개발기

13 분 소요

키친보드는 주문 서비스의 성공적인 출시에 힘입어 고객에게 가치를 전달하기 위한 다음 스텝으로 청구/수납 서비스를 런칭하였다. 이 글에서는 청구/수납 서비스를 개발하면서 겪었던 여러 이야기들을 소개하고자 한다.

맨 위로 이동 ↑

수납

청구/수납 서비스 개발기

13 분 소요

키친보드는 주문 서비스의 성공적인 출시에 힘입어 고객에게 가치를 전달하기 위한 다음 스텝으로 청구/수납 서비스를 런칭하였다. 이 글에서는 청구/수납 서비스를 개발하면서 겪었던 여러 이야기들을 소개하고자 한다.

맨 위로 이동 ↑

가상계좌

청구/수납 서비스 개발기

13 분 소요

키친보드는 주문 서비스의 성공적인 출시에 힘입어 고객에게 가치를 전달하기 위한 다음 스텝으로 청구/수납 서비스를 런칭하였다. 이 글에서는 청구/수납 서비스를 개발하면서 겪었던 여러 이야기들을 소개하고자 한다.

맨 위로 이동 ↑

Message Throttling

청구/수납 서비스 개발기

13 분 소요

키친보드는 주문 서비스의 성공적인 출시에 힘입어 고객에게 가치를 전달하기 위한 다음 스텝으로 청구/수납 서비스를 런칭하였다. 이 글에서는 청구/수납 서비스를 개발하면서 겪었던 여러 이야기들을 소개하고자 한다.

맨 위로 이동 ↑

테스트

기능 테스트 전환 이야기

26 분 소요

모두가 노력해 준 덕분에 올해 목표로 했던 기능 테스트로의 전환을 마무리할 수 있게 되었다. 그래서 그동안 우리가 통합 테스트에서 기능테스트로 왜 전환하게 되었는지, 전환하면서 어떤 이슈들을 겪었는지 소개해보고자 한다.

맨 위로 이동 ↑

기능테스트

기능 테스트 전환 이야기

26 분 소요

모두가 노력해 준 덕분에 올해 목표로 했던 기능 테스트로의 전환을 마무리할 수 있게 되었다. 그래서 그동안 우리가 통합 테스트에서 기능테스트로 왜 전환하게 되었는지, 전환하면서 어떤 이슈들을 겪었는지 소개해보고자 한다.

맨 위로 이동 ↑

회의

더 나은 회의문화를 위하여

9 분 소요

길다고 말하기는 어렵지만 지난 세월 동안 업무를 해오면서 수많은 회의를 겪어왔다. 매주 형식적으로 이루어지는 주간 회의에서부터 상급자에게 보고하려는 회의, 의사결정 논의, 긴급한 이슈를 다루기 위한 회의, 제품 개발을 위한 아이디어를 모으기 위한 회의 등 수많은 형태의 회의들이 있...

맨 위로 이동 ↑

회의문화

더 나은 회의문화를 위하여

9 분 소요

길다고 말하기는 어렵지만 지난 세월 동안 업무를 해오면서 수많은 회의를 겪어왔다. 매주 형식적으로 이루어지는 주간 회의에서부터 상급자에게 보고하려는 회의, 의사결정 논의, 긴급한 이슈를 다루기 위한 회의, 제품 개발을 위한 아이디어를 모으기 위한 회의 등 수많은 형태의 회의들이 있...

맨 위로 이동 ↑

querydsl

Querydsl에서 Kotlin JDSL 으로

28 분 소요

우리가 이렇게 유명한 라이브러리인 Querydsl을 Kotlin JDSL로 변경하게 된 계기는 무엇이며 변경하면서 우리가 겪었던 이슈나 전환 시 우리가 사용했던 여러 가지 팁들을 공유하면서 전환 이야기를 나눠보도록 하겠다.

맨 위로 이동 ↑

kotlin jdsl

Querydsl에서 Kotlin JDSL 으로

28 분 소요

우리가 이렇게 유명한 라이브러리인 Querydsl을 Kotlin JDSL로 변경하게 된 계기는 무엇이며 변경하면서 우리가 겪었던 이슈나 전환 시 우리가 사용했던 여러 가지 팁들을 공유하면서 전환 이야기를 나눠보도록 하겠다.

맨 위로 이동 ↑

principle

개발 방법론에 대한 나만의 원칙 세우기

4 분 소요

최근 들어 TDD, 클린 코드, 클린 아키텍처, MSA, 디자인 패턴, 애자일 방법론 등 다양한 개발 방법론에 대한 논쟁을 접하면서 느낀 바가 있어 오랜만에 내 생각에 대한 글을 적어본다. 이러한 논쟁에서 어떤 견해가 옳고 그르다고 말하기는 어렵다. 따라서 각자의 기준을 가지고 개...

맨 위로 이동 ↑

tdd

개발 방법론에 대한 나만의 원칙 세우기

4 분 소요

최근 들어 TDD, 클린 코드, 클린 아키텍처, MSA, 디자인 패턴, 애자일 방법론 등 다양한 개발 방법론에 대한 논쟁을 접하면서 느낀 바가 있어 오랜만에 내 생각에 대한 글을 적어본다. 이러한 논쟁에서 어떤 견해가 옳고 그르다고 말하기는 어렵다. 따라서 각자의 기준을 가지고 개...

맨 위로 이동 ↑

clean-code

개발 방법론에 대한 나만의 원칙 세우기

4 분 소요

최근 들어 TDD, 클린 코드, 클린 아키텍처, MSA, 디자인 패턴, 애자일 방법론 등 다양한 개발 방법론에 대한 논쟁을 접하면서 느낀 바가 있어 오랜만에 내 생각에 대한 글을 적어본다. 이러한 논쟁에서 어떤 견해가 옳고 그르다고 말하기는 어렵다. 따라서 각자의 기준을 가지고 개...

맨 위로 이동 ↑

clean-architecture

개발 방법론에 대한 나만의 원칙 세우기

4 분 소요

최근 들어 TDD, 클린 코드, 클린 아키텍처, MSA, 디자인 패턴, 애자일 방법론 등 다양한 개발 방법론에 대한 논쟁을 접하면서 느낀 바가 있어 오랜만에 내 생각에 대한 글을 적어본다. 이러한 논쟁에서 어떤 견해가 옳고 그르다고 말하기는 어렵다. 따라서 각자의 기준을 가지고 개...

맨 위로 이동 ↑

msa

개발 방법론에 대한 나만의 원칙 세우기

4 분 소요

최근 들어 TDD, 클린 코드, 클린 아키텍처, MSA, 디자인 패턴, 애자일 방법론 등 다양한 개발 방법론에 대한 논쟁을 접하면서 느낀 바가 있어 오랜만에 내 생각에 대한 글을 적어본다. 이러한 논쟁에서 어떤 견해가 옳고 그르다고 말하기는 어렵다. 따라서 각자의 기준을 가지고 개...

맨 위로 이동 ↑

edd

개발 방법론에 대한 나만의 원칙 세우기

4 분 소요

최근 들어 TDD, 클린 코드, 클린 아키텍처, MSA, 디자인 패턴, 애자일 방법론 등 다양한 개발 방법론에 대한 논쟁을 접하면서 느낀 바가 있어 오랜만에 내 생각에 대한 글을 적어본다. 이러한 논쟁에서 어떤 견해가 옳고 그르다고 말하기는 어렵다. 따라서 각자의 기준을 가지고 개...

맨 위로 이동 ↑

cqrs

개발 방법론에 대한 나만의 원칙 세우기

4 분 소요

최근 들어 TDD, 클린 코드, 클린 아키텍처, MSA, 디자인 패턴, 애자일 방법론 등 다양한 개발 방법론에 대한 논쟁을 접하면서 느낀 바가 있어 오랜만에 내 생각에 대한 글을 적어본다. 이러한 논쟁에서 어떤 견해가 옳고 그르다고 말하기는 어렵다. 따라서 각자의 기준을 가지고 개...

맨 위로 이동 ↑

event-sourcing

개발 방법론에 대한 나만의 원칙 세우기

4 분 소요

최근 들어 TDD, 클린 코드, 클린 아키텍처, MSA, 디자인 패턴, 애자일 방법론 등 다양한 개발 방법론에 대한 논쟁을 접하면서 느낀 바가 있어 오랜만에 내 생각에 대한 글을 적어본다. 이러한 논쟁에서 어떤 견해가 옳고 그르다고 말하기는 어렵다. 따라서 각자의 기준을 가지고 개...

맨 위로 이동 ↑

konsist

코딩 컨벤션을 테스트 하자(feat. Konsist)

9 분 소요

개발자로서 팀 단위로 서비스 개발을 위한 코드를 작성할 때 유지보수성을 높이기 위해 일관된 코드 작성, 의존성 방향 제약 등을 위한 팀 내 코드 컨벤션을 작성하거나 본 경험이 있을 것이다. 보통 README.md나 사내 문서에 코딩 컨벤션을 작성해서 개발자들이 숙지하도록 하거나 L...

맨 위로 이동 ↑

spring-ai

AI를 활용한 주문서 생성 자동화

9 분 소요

최근 ChatGPT를 비롯한 생성형 AI가 주목받으면서 우리도 AI 스터디를 진행했다. AI에 대해 들어본 적은 있었지만, 실제로 접해본 적은 없어서 스터디를 통해 프롬프트 엔지니어링, RAG, 랭체인 등의 개념을 배우고 이를 어떻게 활용할 수 있는지에 대한 기초를 익힐 수 있었다...

맨 위로 이동 ↑

chatgpt

AI를 활용한 주문서 생성 자동화

9 분 소요

최근 ChatGPT를 비롯한 생성형 AI가 주목받으면서 우리도 AI 스터디를 진행했다. AI에 대해 들어본 적은 있었지만, 실제로 접해본 적은 없어서 스터디를 통해 프롬프트 엔지니어링, RAG, 랭체인 등의 개념을 배우고 이를 어떻게 활용할 수 있는지에 대한 기초를 익힐 수 있었다...

맨 위로 이동 ↑

langchain

AI를 활용한 주문서 생성 자동화

9 분 소요

최근 ChatGPT를 비롯한 생성형 AI가 주목받으면서 우리도 AI 스터디를 진행했다. AI에 대해 들어본 적은 있었지만, 실제로 접해본 적은 없어서 스터디를 통해 프롬프트 엔지니어링, RAG, 랭체인 등의 개념을 배우고 이를 어떻게 활용할 수 있는지에 대한 기초를 익힐 수 있었다...

맨 위로 이동 ↑