본문 바로가기

전체 글5

Spring Boot에서 Discord Webhook으로 실시간 알림 시스템 구축하기 서비스를 운영하다 보면 중요한 이벤트가 발생했을 때 즉시 알림을 받고 싶은 순간들이 있어요. 새로운 회원이 가입했거나, 결제가 완료되었거나, 중요한 콘텐츠가 등록되었을 때 말이죠. 이런 순간들을 놓치지 않고 실시간으로 팀과 공유할 수 있다면 팀의 업무 효율성은 크게 상승할 거에요. 오늘은 Spring Boot 애플리케이션에서 Discord Webhook을 연동하여 실시간 알림 시스템을 구축하는 방법을 처음부터 끝까지 상세히 전달해보려고 해요. 왜 Discord Webhook인가요?사실 Slack이나 Teams 같은 다른 메신저 서비스들도 웹훅을 제공하지만, Discord는 특히 몇 가지 매력적인 장점이 있어요.무료로 사용할 수 있으면서도 제한이 거의 없고, 설정이 간단하며, 마크다운 문법을 지원해 메시지.. 2025. 9. 10.
Spring Boot + Next.js로 구축한 팀빌딩 플랫폼: 개발자가 들려주는 링킷의 뒷이야기 안녕하세요, 팀빌딩 플랫폼 링킷(Linkit)의 백엔드 개발을 담당하고 있는 권동민입니다. "좋은 팀원을 찾는 것만큼 어려운 일이 있을까요?" 스타트업 씬에서 많은 분들이 느끼는 가장 큰 어려움은 바로 좋은 팀원을 찾는 일이에요. 수많은 예비 창업가들이 뛰어난 아이디어를 가지고도 함께할 동료를 찾지 못해 좌절하는 모습을 보며, 저희는 이 문제를 해결할 수 있는 플랫폼을 만들고 있어요. 오늘은 이와 관련해 Spring Boot와 Next.js로 링킷을 개발하며 겪은 기술적 도전과 성장 스토리를 함께 나누고자해요.💡 링킷은 어떤 서비스인가요?링킷은 예비·초기 창업가들이 함께 프로젝트를 진행 할 좋은 동료를 찾을 수 있도록 돕는 팀빌딩 플랫폼이에요.2024년 베타 서비스를 시작해 올해 2월 정식 출시 이후,.. 2025. 4. 29.
JAVA 변수의 기본형 & 참조형 타입 (feat. Boolean & boolean) JAVA 언어의 변수는 기본형 타입(Primitive Type)이랑 참조형 타입(Reference Type)이 존재한다.기본형 타입(Primitive Type)에는 논리형(boolean), 문자형(char), 정수형(byte, short, int, long), 실수형(float, double)이 있다.기본형 타입은 계산을 위해 실제 값을 저장한다.기본형 타입(Primitive Type)모두 소문자로 시작한다.비객체 타입이므로 null 값을 가질 수 없다.변수의 선언과 동시에 메모리 생성모든 값 타입은 메모리의 스택(Stack)에 저장됨저장공간에 실제 자료 값을 가진다참조형 타입(Reference Type)에는 기본형 타입 8가지 자료형을 제외한 나머지이다. 기본적으로 Java에서 제공하는 클래스, 프로그.. 2024. 9. 15.
서비스 릴리즈 이후, Flyway의 도입 Flyway란?Flyway는 오픈소스 데이터베이스 마이그레이션 툴이다. 백엔드 시스템에서 데이터베이스 스키마를 변경하는데 굉장히 유용하게 활용할 수 있다. Flyway를 알기 전, Flyway의 도입 없이 서비스 릴리즈를 한 상태였는데 요구사항 수정에 따른 유지보수 작업을 지속적으로 진행하면서 데이터베이스 스키마의 변경은 필수적이었다. 특히 릴리즈 이후에 production 환경(운영 DB)에는 데이터가 점차 쌓여가고 있는 상황이었고, 사용자의 데이터에 손상이 가지 않도록하며 데이터베이스 스키마를 변경하는 것은 처음 서비스를 운영해보는 입장에서 까다로운 부분이 있었다. Flyway를 활용하기 이전에는 DataGrip을 활용해서 직접 데이터베이스에 접속하고 console에 직접 SQL 쿼리를 하나씩 날리.. 2024. 9. 6.
Spring REST Docs로 API 명세서 작성하기 들어가며...1월에 준비하고 있는 플랫폼에 대한 본격적인 개발 준비를 진행하면서 API 명세서를 어떻게 작성하면 좋을지 고민을 했었다.이전에 진행했던 프로젝트를 통해 Swagger, Postman, Notion 등 다양한 API Documentation Tool이 존재하는 것을 알고 있었고 사용했었지만.. 가장 크게 느꼈던 점은 프론트엔드 개발자에게 오류 없는 API를 제공해야하고 수정이 용이한 것이 절실하다는 것이었다. 이전 여러 프로젝트를 진행했었을 때, 나의 개발 환경 ex. localhost:8080, postman에서는 정상 작동하여 업데이트했음에도 오류가 발생했던 적이 정말 많았다. 서버 구현 상의 문제점이었을때도, API 명세서를 제대로 확인하지 않아 잘못된 요청을 보냈을 때도 있었다. 그.. 2024. 8. 11.