
Thread-safety in C++
C++에서 안정적인 멀티 스레드 코드를 위한 스레드 안전성 개념을 정리한 발표입니다. data race와 happens-before, std::mutex·std::atomic 활용을 설명했습니다.

C++에서 안정적인 멀티 스레드 코드를 위한 스레드 안전성 개념을 정리한 발표입니다. data race와 happens-before, std::mutex·std::atomic 활용을 설명했습니다.

여러 경로로 모은 업체 정보의 중복을 병합으로 정리하고, 변경 이력을 바탕으로 대표 프로필의 값을 고도화했습니다. 필드별 정책을 분리해 더 합리적인 정보를 노출하도록 개선했습니다.

B마트 OMS를 중심으로 예약배달 출고 분산과 동적 출고예정시각 산정을 소개했습니다. 현장 부하와 라이더 대기시간을 함께 줄이기 위한 설계와 성과를 정리했습니다.


MySQL 기본 격리 수준인 REPEATABLE READ 때문에 결제 트랜잭션에서 오래된 잔액이 유지되는 문제를 겪었습니다. 락 위치와 격리 수준을 조정해 동시성 이슈를 해결하는 과정을 정리했습니다.

가변 속성을 개별적으로 바꾸면 이전 값이 남아 버그가 생길 수 있었습니다. 정책 객체로 묶어 상태 갱신 시점과 조합을 제한하는 방식이 더 안전했습니다.


JUnit5 Vintage 엔진에 메서드 단위 병렬화를 도입한 과정을 다뤘습니다. 고정 크기 스레드 풀에서 발생한 교착 상태를 ForkJoinPool로 해결했습니다.

Go 언어의 설계 배경과 간결함, 견고함이라는 특징을 소개했습니다.\n동시성 프로그래밍을 쉽게 시작하는 관점에서 Go를 다루는 글입니다.


React 18 동시성 렌더링과 Lane 모델로 입력 지연 문제를 줄이는 방법을 설명했습니다. useTransition과 useDeferredValue를 통해 무거운 렌더링을 분리한 실제 적용 사례도 소개했습니다.


goroutine 내부 에러를 테스트할 때의 비결정성을 줄이는 방법을 다뤘습니다. sync.WaitGroup과 채널 기반 Waiter로 종료 대기와 에러 전파를 제어하는 구조를 소개했습니다.


Redis 분산 락과 스프링 AOP로 입하 확정 처리 API의 동시성 이슈를 해결했습니다. 또한 @Transactional과의 실행 순서 문제와 커넥션 사용 이슈를 @Order로 정리했습니다.


GPU 메모리 사용을 줄이기 위한 그레이디언트 누적, 체크포인팅, ZeRO, LoRA, QLoRA를 정리했습니다. 각 기법이 절감하는 메모리 영역과 적용 효과를 예시와 함께 설명했습니다.


Swift Concurrency에서 데이터 레이스를 막기 위한 `Sendable`의 개념과 사용법을 설명했습니다. 값 타입, actor, 락 기반 동기화, `@unchecked Sendable`의 주의점까지 실전 관점에서 정리했습니다.