minho Yoo's blog

스프린트 우선순위, 리눅스 스케줄러에게 물어봤다

2주 단위로 스프린트를 돌리는 팀이라면 다들 한 번쯤 겪어봤을 고민이 있다. “이번 스프린트, 뭐부터 하지?” 나만 그런가 싶어서 팀원들한테 물어봤는데, 다들 똑같은 고민을 하고 있었다. 사실 우선순위를 정하는 것 자체보다 진짜 어려운 건 그 다음이다 — 계획을 다 세워놓고 나서도 계속 끼어드는 일들을 어떻게 처리하느냐다. 이미 똑똑한 사람들이 풀어...

늦었다 생각했을 때가 가장 빠른 2024년 회고

4월이면 작년 회고를 하기에 많이 늦었지만 지금이 제일 빠른거다. 요약 나의 2024년은 개발 외적으로 주로 성장하고, 나의 가정에 있어 큰 결정을 한 해였다. 결혼 날짜를 정하고 다양한 독서 및 업무 관리 영역이 주로 성장했다. 2025년에는 개발자로서 더 성장하고 좋은 가정을 꾸리고자 한다. 그러기 위해서는 개발 공부를 열심히 하면서 지속적으로 ...

동시성 이슈 해결

배경 업무 중 동시성처리하는 이슈가 많아 다양한 방법으로 동시성 처리가 필요했습니다. ex. 한 유저에게만 포인트 지급하는 이벤트에서 한 유저가 여러 기기로 동시 접근하는 상황 포인트 지급은 API호출로 처리하기 때문에 롤백으로 대응할 수 없다. 그래서 동시에 접근이 불가능하도록 설정이 필요하다. 동시성 이슈 해결 방안 1. DB unique k...

로또-TDD 리뷰

부가 설명 테스트하기 쉬운 부분과 어려운 부분을 분리해야 테스트코드를 작성하기 좋습니다. 분리한 후 도메인 객체에 대해서만 먼저 테스트코드를 작성합니다. (로직은 서비스레이어가 아닌 도메인에 개발해야 합니다.) 분리된 것으로 생성한 것(ex. random, shuffle, 날짜)은 파라미터로 전달받습니다. TDD 리팩토링을 위한 과도기 단계에서는 ...

자바 언어의 성능 향상 기법

11. 자바 언어의 성능 향상 기법 개발자가 성능 튜닝할 때 고려해야 할 부분?? 네트워크 연결, I/O, DB 등의 애플리케이션 외부 요인 다음으로 병목을 일으킬 공산이 가장 큰 부분이 바로 코드 설계 성능에 민간함 개발자는 반드시 마음에 새겨두어야 할 코드의 기본 원칙 데이터를 애플리케이션에 어떻게 저장할지 어떤 알고리즘이 가장 효울적일지...