본문 바로가기

전체 글7

CLAUDE.md의 한계를 넘어서: ChromaDB 기반 지식 저장소 구축기 Claude Code를 사용하다 보면 프로젝트 루트에 CLAUDE.md 파일을 만들어 Claude에게 프로젝트 컨텍스트를 전달하게 됩니다. 처음에는 간단한 지침 몇 줄로 시작하지만, 프로젝트가 성장하고 학습한 내용이 쌓이면서 이 파일은 점점 비대해집니다. 이 글에서는 CLAUDE.md의 근본적인 한계를 분석하고, ChromaDB 기반 벡터 저장소로 이를 해결한 과정을 공유합니다.CLAUDE.md의 문제점선형적 구조의 한계CLAUDE.md는 본질적으로 마크다운 문서입니다. 모든 지식이 순차적으로 나열되어 있어, Claude가 관련 정보를 찾으려면 전체 문서를 스캔해야 합니다. 문서가 길어질수록 Claude가 필요한 정보를 놓칠 확률이 높아집니다. 특히 과거에 기록한 "실수"나 "지식"은 문서 하단에 묻혀버.. 2026. 2. 1.
새로운 시작을 위한 2025년 회고 마침표를 찍기까지 4년 10개월2020년 11월 말, 사회에 첫 발을 내디뎠고, 2025년 9월에 4년 10개월을 함께한 회사를 떠났다. 0에서 1을 만들어가며 백엔드와 클라우드 인프라를 익혔다. 레거시 프레임워크를 현대화하고, AWS에서 GCP로 서비스를 통째로 옮기는 작업도 했다. 돌이켜보면 치열하게 성장한 시간이었다. 그럼에도 떠나기로 했다. 이유는 두 가지다. 하나는 업계 전반에 찾아온 불황. 우리 회사만의 문제가 아니었다.다른 하나는 스스로에 대한 의문이었다. 이 울타리 안에서는 잘하고 있었다. 그런데 밖에서도 그럴까? 확인해보고 싶었다. 순탄하지 않았다. 애초에 취업 준비라는 걸 처음 해봤다. 교수님 추천으로 남들보다 빨리 AI 개발자로 커리어를 시작했는데, 어쩌다 보니 백엔드 개발자가 되어 .. 2025. 12. 29.
@RequestBody에 필드가 하나밖에 없을 때 매핑이 되지 않는 이유 POST 요청을 보낼 때 주로 JSON을 HTTP 본문 데이터에 담아 요청을 보내게 됩니다. Spring 기반의 API 서버라면 @RequestBody 어노테이션을 사용하여 본문 데이터를 Java 객체로 변환(역직렬화)해 사용합니다. 이 작업은 Jackson이 해주고 있기 때문에 개발자는 큰 신경을 쓰지 않고 비즈니스 로직에 집중을 할 수 있습니다. 간단하게 이름을 받는 API를 만들어보겠습니다. 단순히 클라이언트로부터 name이라는 필드에 문자열을 전달 받으면 그대로 응답값으로 반환해주는 간단한 API입니다.@RestController@RequiredArgsConstructorpublic class DemoController { @PostMapping("demo") public Respons.. 2024. 10. 13.
JVM은 무엇이며 자바 코드는 어떻게 실행하는 것인가. 시즌 1 자바 기초 스터디온라인 스터디. Contribute to whiteship/live-study development by creating an account on GitHub.github.com JVM이란 무엇인가컴파일 하는 방법실행하는 방법바이트코드란 무엇인가JIT 컴파일러란 무엇이며 어떻게 동작하는지JVM 구성 요소JDK와 JRE의 차이 JVM이란 무엇인가Write one run anywhere.Java의 가장 큰 장점 중 하나는 운영체제에 독립적인 것이다. 예를 들어, C언어는 컴파일 이후 CPU와 OS에 종속적으로 컴파일이 된다.만약 다른 환경에서 실행을 하고 싶다면 플랫폼에 맞게 코드를 수정해야 한다. 반대로 Java는 어떤 환경에서 컴파일을 해도 동일한 수행을 보장한다.Java는 CP.. 2024. 7. 7.