본문 바로가기

분류 전체보기12

2023년 회고 및 2024년 목표 설정 새해가 밝은지 엊그제 같은데 벌써 2024년 2월이 지나가고 있다. 시간 참 빠르다. 조금 늦었지만, 2023년을 돌아보는 회고를 작성하려고 한다. 2023년 회고를 꼭 작성하고 싶었는데 시간이 조금만 더 지나가면 못 쓰고 지나갈 것 같아서 지금이라도 꼭 써야겠다. 올 한 해는 내 환경이 너무 많이 바뀌었던 해라고 생각한다. 2023년 회고 전 직장 퇴사 내 첫 회사에서 2022년 12월까지 근무하고 2023년 1월부터 백수가 됐다. 퇴사 전에 여러 회사에 이력서를 돌리고 몇 번의 면접을 진행했는데 합격은 하지 못했다. 처음엔 '조금 쉬면 더 좋지~'라는 생각으로 편하게 쉬었다. 그런데 내 생각과 다르게 이후에는 이력서를 돌려도 면접 제의가 거의 오지 않았다. 나는 점점 '이거 내가 실수한 것 같다.'라.. 2024. 2. 8.
dktechin, KOSA 개발자 양성 교육 회고 카카오 자회사인 dktechin과 IT 교육기관인 KOSA가 채용연계 협약을 맺고 진행한 개발자 양성 교육이 끝났다. 교육은 2월 27일부터 7월 26일까지 약 5개월 동안 진행됐다. 교육을 마무리하면서 회고를 작성해보려고 한다. KOSA 개발자 양성 교육을 지원한 이유 내가 KOSA 개발자 양성 교육을 지원한 이유는? 당연히 취업하려고 지원했다. 기존에 다니던 회사에서 퇴사하고 재취업을 준비하는데, 회사에 있던 기간에 포트폴리오가 업데이트될 만한 일들을 하지 못하면서 시간을 허비했다는 생각이 들었다. 그래서 재취업에 대한 자신감도 많이 떨어졌다. 그러던 중에 KOSA와 dktechin이 취업연계 협약을 맺고 개발자 교육을 하는 공고를 보게 됐다. dktechin은 취업준비 할 때도 가고 싶은 회사 중에.. 2023. 8. 9.
게시판 만들기 07 - 페이지네이션 게시판 만들기 세 번째 글에서 게시글 페이징에 대한 내용을 이미 다뤘다. 그런데 그 내용에 보충해서 해야 할 것이 하나 더 생겨서 이 글을 쓰게 됐다. 페이지네이션 페이지네이션은 콘텐츠를 여러 페이지로 나누고 버튼을 이용해서 특정 페이지로 이동할 수 있는 UI 요소다. 페이지네이션은 어떻게 만들어줄까? 지난 게시판 만들기 포스팅에서 클라이언트가 요청한 페이지 번호에 대해서 해당 페이지의 콘텐츠 리스트를 만들어서 반환해 주는 실습을 해봤다. 그리고 JPA가 반환해 준 Page 객체에서 [ic]getTotalElements()[/ic], [ic]getTotalPages()[/ic], [ic]getNumber()[/ic], [ic]getPageSize()[/ic] 등의 메서드를 통해 총 게시글 수, 총 페이지.. 2023. 5. 22.
네이버 클라우드 플랫폼 SMS API 사용해보기(NCP-Simple & Easy Notification Service) 요즘 개인적으로 특정 시간에 알림 메시지를 받아야 할 상황이 생겼다. 사실 간단하게 스마트폰 알람 주기를 설정해서 해결해도 되는 문제였지만, 일상 속에서 생긴 불편했던 점을 개발을 통해서 해결해보고 싶은 생각이 들었다. 그래서 프로그램을 직접 만들어서 SMS로 알림 시스템을 구현해 보기로 결정했다. 필요한 기능 정리 및 기술 선택 내 요구사항은 "주중(월~금)에 오후 5시 50분에 알림 문자 받기" 였다. 그럼 서버에 프로그램을 배포했을 때 crontab 같은 기능을 사용해서 내가 원하는 타이밍에 SMS를 보내는 일을 해야 한다. 그리고 가장 중요한 건 SMS로 문자 메시지를 받아야 한다. 나는 crontab은 Spring Boot에서 Spring Scheduler를 사용하기로 결정했고, SMS는 네이버.. 2023. 4. 22.
게시판 만들기 06 - 예외처리 저번 포스팅까지 해서 게시판 CRUD, 페이징 기능을 구현했다. 그리고 해당 기능에 대한 테스트 코드도 작성했다. 이제는 이 기능들이 작동할 때 발생할 수 있는 예외들을 처리해야 한다. 이번 포스팅은 프로젝트 전역에서 발생할 수 있는 예외를 잡아주는 [ic]@ControllerAdvice [/ic]를 알아보고 예외 처리를 할 때 사용해보려고 한다. 예외처리를 하는 이유 프로그램을 만들다보면 많은 오류들이 발생한다. 개발자의 예상과 달리 예기치 못하게 발생하는 일들을 예외라고 하고, 이 예외를 대비하고 준비하는 것을 예외 처리라고 한다. 예외 처리를 잘한다면, 프로그램에 예상하지 못한 일이 발생했을 때 비정상적으로 종료되지 않고 적절한 조치를 하고 정상 상태를 유지할 수 있다. @ControllerAdvi.. 2023. 4. 5.
게시판 만들기 05 - 테스트 코드 작성(PostController) 저번 포스팅은 PostService 테스트 코드를 작성했다. 테스트 케이스는 게시글 쓰기, 게시글 단건 조회, 게시글 조회 실패 - 잘못된 ID였다. 이번 포스팅은 PostController 테스트 코드를 작성할 예정이고, 게시글 페이징 조회, 수정, 삭제 API를 테스트 해보려고 한다. Controller 테스트 코드를 작성하기 전에 Controller에 있는 로직들이 실행되려면 클라이언트로부터 내가 만든 애플리케이션으로 GET, POST, PUT, DELETE 등의 HTTP 요청이 와야 한다. 우리가 PostController를 만들 때 요청 Body에 게시글 데이터를 담고 [ic]/posts [/ic]로 POST 요청을 보내면 게시글을 생성하고, [ic]/posts/{postId}[/ic]로 GET.. 2022. 12. 9.