전체 글 (67) 썸네일형 리스트형 [Rookies 개발 4기] 최종프로젝트 멘토링 5회차 이번 멘토링에서는 히스토리 리포트의 수익률 그래프 구현 방법에 대해 팀 내부적으로 많은 논의를 진행했다. 그 과정에서 멘토님께 직접적인 피드백을 요청하기보다는, 팀원들끼리 충분히 의견을 나누는 시간을 가졌다.점심시간에는 멘토님께 최종 발표 관련 조언을 들을 수 있었다. 특히 타 서비스와의 차별점을 명확히 드러내는 것이 중요하다는 말씀이 인상 깊었다. 이는 기술 구현만큼이나 '왜 우리 서비스가 필요한가'를 설득력 있게 전달하는 것이 중요함을 다시 한번 깨닫게 해주었다. 팀 회의 결과, 수익률 그래프 구현 방식에 대해 중요한 결정을 내렸다. 내가 이틀간 공들여 작업했던 거래내역에 포트폴리오 ID를 추가하는 방식의 브랜치 자체를 폐기하기로 한 것이다.솔직히 아쉬운 마음이 컸다. 그 시간 동안의 고민과 코드가.. [Rookies 개발 4기] 01/02 개발일기 1. Transaction-Portfolio 관계를 Many-to-Many로 변경어제 구현할 때는 Many-to-One 관계로 했었는데 주윤이 언니와 얘기해보니 우리 서비스에서는 Many-to-Many 관계가 맞는 것 같아 수정하였다. 한 종목이 여러 포트폴리오에 들어가있을 수 있기 때문! @ManyToMany(fetch = FetchType.LAZY) @JoinTable( name = "transaction_portfolio", joinColumns = @JoinColumn(name = "transaction_id"), inverseJoinColumns = @JoinColumn(name = "portfolio_id") ) @ManyToM.. [Rookies 개발 4기] 12/31 개발일기 1. ERD 수정저번에 적다가 완성하지 못했던 ERD를 마무리하였다.짱 많았지만 그래도 하고나니 뿌듯! erd에 대한건 티스토리에 많이 적어놔서 이정도만 언급해도 될 듯 ㅎ 2. AI 버블차트 Swagger 형식 수정AIBubbleChartDTO에서 Swagger 문서 예시를 수정하여 API 문서를 더 명확하게 했다.기존에 입력 값과 Swagger에 적혀있던 예시가 달라 팀원이 수정해달라 하였다. 난 그냥 AI에서 나온 입력값만 생각해서 Swagger와 다를 거라는 생각을 못했다. @Schema( name = "AIBubbleChartTrendUpsertRequest", description = "기간 키(예: 1_month, 3_months, 6_months.. [Rookies 개발 4기] 12/30 개발일기 1. 백엔드 WBS 수정어제 작성하다가 만 WBS를 마무리하였다. WBS 다른 파트 보면 조금 이쁘게 날짜 체크표시가 이어져있던데 백엔드는 내가 좀 날짜와 크게 상관없이 배치해서 그런가 너무 안 이쁘게 그려졌다. 그래도 사실 반영하여 체크한거니... 그냥 거기 만족하며 두었다. 거기서 수정하면 정말 큰 일이될 것 같아서 차라리 다른 일을 진행하는 것이 좋을 것이라 판단했다... 2. API 명세서 수정문서 작업을 계속 이어갔다. API 명세서는 그래도 중간중간에 API 추가 작성할 때 심심하면 적어뒀어서 추가할 게 AI와 Kafka 파트쪽 말고는 크게 없었다. 얼마 전까지만해도 API 명세서가 무엇인지 몰랐는데 이렇게 작성하고 있는 나를 보니 조금 뿌듯... 3. ERD 수정문서 작업!! 끝이 없었따!!.. [Rookies 개발 4기] 12/29 개발일기 1. 로그 정리 & 트랜잭션 관리- 모든 주요 비즈니스 로직에 일관된 로깅을 추가하였다. 여러 사람이 작업하다보니 로그 뜨는 것도 다 제각기였는데 최대한 통일해두었다. (로그 접두사 통일)- Hibernate SQL 쿼리 로그 제거로 노이즈 감소 => 팀장님께서 오더하신 게 로그 필요 없는 거 좀 줄여달라는 것이었다. 거기에 맞게 수정하였다.- 운영 환경 최적화 application properties에 로그 뜨는 것을 설정하고, 코드에서 로그 레벨도 적절히 수정하여 필요한 정보만 뜨도록 최대한 설정하였다. - INFO 레벨: 성공/실패 결과만 기록 - "조회 성공/실패" - "생성 성공/실패" - "업데이트 성공/실패" - DEBUG 레벨: 상세 정보 (개발 환경용) - GCM 마이.. [Rookies 개발 4기] 12/24 개발일기 1. ERD 수정백엔드쪽 개발은 거의 끝이 보인다. 그래서 최종 발표 때 제출할 자료들을 좀 작성하였다.ERD를 개발 초기에 쓰고 이후에 수정을 거의 안했다보니 수정 및 생성할 것이 많았다.노션에 정리 중이며, 아래와 같은 형식으로 작성 중이다.그리고 이건 초기에 그린 ERD이다.작성하면서 알게된 것이 Java에서 Float가 여기선 REAL로 적힌다는 것!Float로 적으면 다른 데이터 형식이다! 그리고 이런 것이 몇 개 더 있더라! 신기했다.2. AI 추천 API 추가AI에서도 개발이 거의 다 끝나 AI 추천 결과를 백엔드 통해서 프론트에 넘겨주길 바랐다.POST /api/ai/recommendations를 통해 AI의 결과를 백엔드로 받아올 수 있었고 Get을 통해 조회할 수 있다. service.. [Rookies 개발 4기] 12/23 개발일기 1. 코드 피드백 반영하여 수정설정/라이프사이클 정리를 하였다. - `api_key` / `apiKey` 혼재를 모두 `apiKey`로 통일해 헤더·바디 생성 유틸과 로그 포맷을 일관화. - `KisApiConfig.baseUrl`을 `public`으로 열어 외부 컴포넌트가 같은 설정을 재사용하도록 변경. - WebSocket `ScheduledExecutorService`에 종료 훅을 추가해 애플리케이션 종료 시 스레드 누수를 방지. 이렇게 크게 3가지를 수정하였고, 깃허브에 바로 내가 작성한 코드에 댓글로 피드백을 해줄 수 있다는 것을 처음 알았다. 2. Kafka 이벤트 발행 (목표가 알림 이벤트: price-alert-events)- kafkaTemplate.send()를 호출할 때 event... [Rookies 개발 4기] 최종프로젝트 멘토링 4회차 1. 중간 발표 자료 피드백멘토님께서 공유해주신 다른 조들의 중간 발표 자료를 검토하는 시간을 가졌다. 우리 프로젝트에만 매몰되어 있다가 다른 팀들의 진행 상황과 빌드업 과정을 보니 확실히 시야가 트이는 기분이었다. 특히 구현 기능의 나열이 아니라, '왜 이 기술을 선택했는지'가 잘 드러난 구성들이 인상 깊었고, 우리 팀의 최종 발표 자료를 어떤 방향으로 빌드업해야 할지 감을 잡을 수 있었다. 2. 코드 리뷰이번 스프린트에서 각자 구현한 기능을 공유하며 프론트엔드, AI, 인프라의 통합 과정을 점검했다. 내가 담당한 백엔드 외에 타 파트의 로직을 깊이 있게 파악할 수 있었고, 서로의 코드가 어떻게 맞물려 돌아가는지 이해하니 전체 파이프라인이 더 선명하게 보였다. 3. Datalake 및 Kafka 구조.. 이전 1 2 3 4 ··· 9 다음