전체 글 225

Day 135 - 취하여(취업을 위하여) 프로젝트 28%, 시간 때문에 하루를 날렸다고? 최종은 피날레일 뿐, 끝이 아니다

1. 프로젝트 진행 상황 및 계획 🥇 이메일 전송 기능 중복 조회 방지하기 (완료)🥈 이메일 전송 기능 1차 리팩토링(refactoring)하기 (진행 중, 2025.02.20 완료 목표) 🥉 실시간 알림 기능 구현 방법 및 각 방법의 장단점 공부하기 (진행 중, 2025.02.23 완료 목표)4️⃣ API 명세서 수정 및 검토하기 (진행 전, 2025.02.23 완료 목표) 5️⃣ 리드미(README) 틀 완성하기 (진행 전, 2025.02.23 완료 목표) 6️⃣ MVP(최소 기능 제품) 버전 테스트 코드 작성하기 (진행 전, 2025.02.23 완료 목표) 2. 시간 때문에 하루를 날렸다고?(1) 깃허브 링크(2) 알림 기능 찾아 삼만리 Day 4 링크 나는 한국에 있는데 데이터베이스에는 자꾸..

2주 차: 알림 기능 찾아 삼만리 Day 4 - 팀장님, 우리 그냥 ZonedDateTime 말고 LocalDateTime 쓰면 안 돼요?

[인용 및 참고 출처]1. 구글 검색: MySQL 8.4 Reference Manua, "MySQL timestamp with time zone", 13.2.2 The DATE, DATETIME, and TIMESTAMP Types, (2025.02.18) [알림 기능 찾아 삼만리 Day 1 링크][알림 기능 찾아 삼만리 Day 2 링크][알림 기능 찾아 삼만리 Day 3 링크][깃허브(GitHub) 링크] '취하여(취업을 위하여)' 프로젝트는 현재 국내 채용 공고만 조회할 수 있지만, 언젠가 다른 나라의 채용 공고도 조회할 수 있도록 서비스를 개선할 생각을 염두에 두고 ZonedDateTime을 사용했다. 어제에 이어 오늘은 한 번 조회한 채용 공고를 다시 조회하지 않도록 스프링 스케줄러(Spring ..

Day 134 - 취하여(취업을 위하여) 프로젝트 24%, 이메일 전송하기에 성공하다

1. 프로젝트 진행 상황 및 계획 🥇 스프링 이메일(Spring Email)로 이메일 전송 기능 구현하기 (완료)🥈 이메일 전송 기능 중복 조회 방지하기 (진행 중, 2025.02.18 완료 목표)🥉 실시간 알림 기능 구현 방법 및 각 방법의 장단점 공부하기 (진행 중, 2025.02.23 완료 목표)4️⃣ API 명세서 수정 및 검토하기 (진행 전, 2025.02.23 완료 목표) 5️⃣ 리드미(README) 틀 완성하기 (진행 전, 2025.02.23 완료 목표) 6️⃣ MVP(최소 기능 제품) 버전 테스트 코드 작성하기 (진행 전, 2025.02.23 완료 목표) 2. 첫 이메일 전송에 성공했다.  (1) 알림 기능 찾아 삼만리 Day 1 링크(2) 알림 기능 찾아 삼만리 Day 2 링크(3)..

2주 차: 알림 기능 찾아 삼만리 Day 3 - Spring Scheduler와 Spring Email로 이메일 보내기에 성공은 했는데

[인용 및 참고 출처]1. 구글 검색: Baeldung, "Spring Email", Guide to Spring Email, (2025.02.17)2. 구글 검색: 티스토리, "구글 SMTP 설정", Gmail SMTP로 메일 발송 설정하기, (2025.02.17)3. 구글 검색: velog, "구글 SMTP 설정", Gmail SMTP 설정으로 이메일 보내기, (2025.02.17) [알림 기능 찾아 삼만리 Day 1 링크][알림 기능 찾아 삼만리 Day 2 링크]더보기package com.project.cheerha.domain.notice.dto;import com.querydsl.core.annotations.QueryProjection;public record UserKeywordDto( ..

Day 133 - 취하여(취업을 위하여) 프로젝트 23%, 감은 잡았으니 남은 일은 실천뿐

1. 프로젝트 진행 상황 및 계획 🥇 스프링 스케줄러(Spring Scheduler)로 이메일 전송 기능 구현하기 (완료) 🥈 스프링 이메일(Spring Email)로 이메일 전송 기능 구현하기 (진행 전, 2025.02.17 완료 목표)🥉 실시간 알림 기능 구현 방법 및 각 방법의 장단점 공부하기 (진행 중, 2025.02.23 완료 목표)4️⃣ API 명세서 수정 및 검토하기 (진행 전, 2025.02.23 완료 목표) 5️⃣ 리드미(README) 틀 완성하기 (진행 전, 2025.02.23 완료 목표) 6️⃣ MVP(최소 기능 제품) 버전 테스트 코드 작성하기 (진행 전, 2025.02.23 완료 목표) 2. 이메일 전송 기능을 붙일 코드 초안을 얼추 만들었다. (1) 알림 기능 찾아 삼만리 ..

1주 차: 알림 기능 찾아 삼만리 Day 2 - Spring Scheduler를 어떻게 고칠지 다시 정리하다

[알림 기능 찾아 삼만리 Day 1 링크]더보기package com.project.cheerha.domain.notice;import com.project.cheerha.domain.notice.dto.JobOpeningDto;import com.project.cheerha.domain.notice.dto.JobOpeningKeywordDto;import com.project.cheerha.domain.notice.dto.UserDto;import com.project.cheerha.domain.notice.dto.UserKeywordDto;import com.project.cheerha.domain.notice.service.NoticeCreationService;import java.util.Arra..

Day 132 - 취하여(취업을 위하여) 프로젝트 22%, 갈 길이 구만리지만 그럴싸한 틀을 잡다

1. 프로젝트 진행 상황 및 계획 🥇 이메일 전송 기능 구현 전 필요한 로직(logic) 정리하기 (완료) 🥈 스프링 스케줄러(Spring Scheduler)로 이메일 전송 기능 구현하기 (진행 중, 2025.02.16 완료 목표) 🥉 실시간 알림 기능 구현 방법 및 각 방법의 장단점 공부하기 (진행 중, 2025.02.23 완료 목표)4️⃣ API 명세서 수정 및 검토하기 (진행 전, 2025.02.23 완료 목표) 5️⃣ 리드미(README) 틀 완성하기 (진행 전, 2025.02.23 완료 목표) 6️⃣ MVP(최소 기능 제품) 버전 테스트 코드 작성하기 (진행 전, 2025.02.23 완료 목표) 2. 이메일 전송 기능 구현 전 필요한 로직(logic)은? [알림 기능 찾아 삼만리 Day 1..

1주 차: 알림 기능 찾아 삼만리 Day 1 - Spring Scheduler를 사용하다

'어떻게 채용 공고 목록을 가져오지?' 이메일 전송 기능을 구현하기 전에 우선 사용자가 등록한 기술 키워드가 포함된 채용 공고 목록부터 조회하기로 했다. ERD(Entity Relationship Diagram)을 바탕으로 조회 순서를 고려한 뒤, 저번 프로젝트에서 사용한 스프링 스케줄러(Spring Scheduler)를 활용하기로 했다. 이 기술에 익숙했에 빠르게 기능을 구현하고 성능 개선에 집중할 수 있을 듯했다. (1) UserKeyword 테이블에서 사용자가 등록한 키워드 식별자 목록 조회하기(2) JobOpeningKeyword 테이블에서 해당 키워드를 포함한 채용 공고 식별자 목록 조회하기(3) JobOpening 테이블에서 조회된 채용 공고 정보 조회하기 전체 흐름을 머릿속으로 정리한 뒤에는..

Day 131 - 취하여(취업을 위하여) 프로젝트 20%, CSV 파일이 없으면 만들어서 쓴다, 셔플(shuffle)이 왜 여기서 나와?

1. 프로젝트 진행 상황 및 계획 🥇 이메일 전송 기능 구현 전 필요한 로직(logic) 정리하기 (진행 중, 2025.02.15 완료 목표) 🥈 스프링 스케줄러(Spring Scheduler)로 이메일 전송 기능 구현하기 (진행 중, 2025.02.16 완료 목표) 🥉 실시간 알림 기능 구현 방법 및 각 방법의 장단점 공부하기 (진행 중, 2025.02.23 완료 목표)4️⃣ API 명세서 수정 및 검토하기 (진행 전, 2025.02.23 완료 목표) 5️⃣ 리드미(README) 틀 완성하기 (진행 전, 2025.02.23 완료 목표) 6️⃣ MVP(최소 기능 제품) 버전 테스트 코드 작성하기 (진행 전, 2025.02.23 완료 목표) 2. CSV 파일이 없어서 만들어서 썼다. (1) 채용 공고..

Day 130 - 취하여(취업을 위하여) 프로젝트 16%, 프로젝트를 통째로 갈아엎을 위기에서 가까스로 벗어나다

[인용 및 참고 출처]1. 구글 검색: 사람인, "사람인 API", Saramin 채용정보 API, (2025.02.13) 1. 프로젝트 진행 상황 및 계획 🥇 사용자 채용 키워드 알림 조회 (R) 구현하기 (완료)🥈 모든 키워드 조회 (R) 구현하기 (완료) 🥉 알림 기능 구현 방법 및 각 방법의 장단점 공부하기 (진행 중, 2025.02.17 완료 목표) 4️⃣ API 명세서 수정 및 검토하기 (진행 전, 2025.02.16 완료 목표) 5️⃣ 리드미(README) 틀 완성하기 (진행 전, 2025.02.16 완료 목표) 6️⃣ MVP(최소 기능 제품) 버전 테스트 코드 작성하기 (진행 전, 2025.02.16 완료 목표) 2. 프로젝트를 통째로 갈아엎을 위기에서 가까스로 벗어났다. [깃허브(G..