프로덕트

아티클

전체 보기
이윤선

이윤선

반려동물 돌봄 일지 서비스가 왜 필요해요?

안녕하세요, 저희는 반려동물 돌봄 일지 서비스 '비스캣'을 만들고 있어요.

‘비스캣’은 반려동물의 활동 상태를 매일 체크하고, 분석할 수 있는 서비스예요.

오늘 하루 동안 사료를 얼마나 섭취했는지, 소변과 대변 횟수는 몇 번인지 등을 비롯하여 총 8가지의 활동 사항을 기록할 수 있어요.

그렇게 쌓인 데이터를 기반으로 월별 평균 횟수를 그래프로 볼 수 있고, 나의 반려동물에게 권장되는 수치도 알 수 있어요.

반려동물 돌봄 일지 서비스가 필요한 이유는 명확해요.

우리의 소중한 반려동물이 아프지 않은지 가장 빠르게 알아챌 수 있는 방법이기 때문이에요.

동물들은 아픔을 표현하기는커녕 꽁꽁 숨기려고 하기 때문에 관찰자의 역할이 중요해요.

일상 속에서 조용히 나타나는 증상을 파악할 수 있게, 그리고 문제가 커지기 전에 병원을 방문할 수 있게 ‘비스캣’이 도와드릴게요.

사전 설문 조사에서는 반려동물의 일일 활동 사항을 정확히 확인하지 않고 계신 분들이 많았는데요.

이 서비스를 통해 반려동물을 조금 더 잘 관찰할 수 있게 되었으면 좋겠어요.

바로 내일 MVP 런칭을 앞두고 있으니, 관심이 생기셨다면 언제든지 놀러와주세요.

감사합니다. :)

비스캣

반려동물 돌봄 일지 서비스

4
0
이윤선

이윤선

비스캣의 개발자가 빠르게 프로덕트를 구현하는 방법

안녕하세요, 저희는 반려동물 돌봄 일지 서비스 '비스캣'을 만들고 있어요.

3주 안에 프로덕트를 런칭하여 아이디어를 빠르게 검증해보는 것을 목표로 시작하였는데 벌써 2주차가 되었네요.

‘비스캣’ 팀은 PM 1명과 개발자 1명으로 구성되어 있고, 기간과 구성원 모두 여유롭지는 않아서 빠른 속도가 중요한 상황이에요.

따라서 Supabase와 같은 BaaS (Backend as a Service)를 사용하여 빠르게 개발하는 방법을 선택했어요. (Supabase의 장점에 대해서는 저희 팀의 또 다른 프로덕트인 ‘드리핀’의 1주차 메이커로그에서 확인해보실 수 있어요.)

오늘은 Supabase를 사용함으로써 어떻게 프로덕트를 빠르게 구현할 수 있었는지 말씀드리려고 해요.

1. 인증 관리 (Policy)

Supabase를 통해 써드파티 로그인뿐만 아니라 인증 관리까지 간단하게 할 수 있어요.

서비스를 구현함에 있어서 인증과 만료 처리는 중요한 만큼 많은 리소스를 투입하게 되는데요.

저희는 Supabase의 도움을 받아 이 과정을 단축할 수 있었어요.

일단 Supabase는 테이블을 생성하면 기본적인 CRUD를 간단하게 진행할 수 있어요.

또한 테이블에 대한 정책을 관리할 수 있어서, 모든 데이터가 아닌 ‘나’의 데이터만 조회할 수 있게 설정할 수 있어요.

1.png

위의 예시는 사용자가 본인의 데이터만 조회할 수 있도록 제한하는 정책을 지정한 거예요.

해당 정책이 선언된 테이블은 read 작업 시 클라이언트에서 “내 데이터만 보여줘”라는 코드를 따로 작성하지 않아도 예외 없이 ‘나’의 데이터만 조회하게 되어요.

일반 사용자가 컨트롤할 수 없는 영역에서 정책이 설정되니, 클라이언트 코드 일부가 탈취되더라도 다른 사용자의 데이터를 볼 수는 없어요.

2. 복잡한 데이터를 다룰 때 (Database Function)

‘비스캣’은 MVP 런칭 후 점차 확장될 계획을 가지고 있어요.

따라서 데이터 유형이 유연할 필요가 있는데요.

이 과정에서 저희는 다음과 같은 고민을 하게 되었어요.

UI에 친화적인 데이터로 저장하기 vs 관리되기 좋은 형태의 데이터로 저장하기

UI에 친화적인 데이터로 저장하면 사용자가 저장한 값을 불러오고 화면에 보여주기는 편리하지만, 엑셀로 데이터를 뽑거나 다양하게 분류해서 보기는 어려울 것 같았어요.

반대로 관리되기 좋은 형태로 데이터를 저장하자니, 값을 저장하고 표출하는 데 많은 코드를 작성하고 테스트해봐야 할 것 같았어요.

두 가지 모두를 적절하게 충족시키는 선택지는 같은 기능을 두고 로직도 분리해야 하고 테스트도 여러 번 해야겠다는 판단이 들어서 보류했고요.

우선 저희에게 중요한 건 빠른 속도이기 때문에 UI에 친화적인 데이터로 저장하는 방법을 선택했어요.

사용자가 입력한 값 전체를 그대로 저장하고 그대로 표출해서 사용하는 방식이에요.

그 대신 우려되었던 점은 Supabase를 활용하여 보완할 수 있었어요.

첫 번째로 Supabase는 PostgreSQL을 기반으로 작동하고 있고, PostgreSQL은 Json 데이터를 잘 다룰 수 있는 명령어를 지원해요.

DB에 저장된 데이터를 분해할 수 있는 PostgreSQL 함수를 작성하고, 그 결괏값을 화면에 전달할 수만 있다면 데이터 관리가 수월해지는 거예요.

두 번째로 Supabase는 Database Function의 결괏값을 클라이언트에서 쉽게 사용할 수 있어요.

데이터베이스 상에서 함수를 만들면 클라이언트에서 해당 함수를 호출할 수 있거든요.

2.png

위 이미지는 Supabase에서 제공하는 예시인데요.

Remote Procedure Calls(원격 프로시저 호출)을 활용하여 웹에서 즉시 호출해서 사용할 수 있다보니 마치 DB에서 만든 API 같기도 해요.

구현이 빠른 형태로 클라이언트에 저장 로직을 두고, 가공된 데이터가 필요할 경우에는 Database Function을 사용하는 것. 여러분은 어떤가요?


이 외에도 ‘비스캣’은 Supabase의 많은 도움을 받아서 빠르게 구현하고 있는 중이에요.

짧은 시간 내에 프로덕트의 가치를 보여줄 수 있는 기능을 만들어야 하기 때문에 최대한 가볍고 단순하고 효율적인 것들을 찾아가고 있어요.

덕분에 Supabase라는 좋은 BaaS를 알게 되고 이렇게 소개할 수 있게 되어 기뻐요.

그럼 다음 주에는 ‘비스캣’의 MVP 런칭 소식으로 찾아뵐게요.

감사합니다. :)

비스캣

반려동물 돌봄 일지 서비스

2
1
이윤선

이윤선

반려동물을 돌보는 1500만명의 반려인에게 묻습니다!

안녕하세요, 저희는 반려동물 돌봄 일지 서비스 '비스캣'을 만들고 있어요.

현재 프로덕트의 방향성 수립을 위해 설문조사를 받고 있는데요.

반려동물을 돌보는 분들의 소중한 의견을 구하고 있어요.

아래 3분 내외의 간단한 설문에 참여해주신다면 큰 도움이 될 것 같아요.

감사합니다. :)

https://walla.my/biscat

비스캣

반려동물 돌봄 일지 서비스

6
1

포스트

전체 보기
이윤선

이윤선

저희 팀이 디스콰이엇에서 주최하는 PMC에 참여하면서 비스캣을 런칭했어요!

한번 들어와서 구경해주시면 감사하겠습니다.

오픈 이벤트도 진행 중이니 많은 관심 부탁드려요.

👉 비스캣 둘러보기

https://dis.qa/bQa4

🐾 비스캣 바로가기

https://biscats.vercel.app

🎁 얼리버드 신청하기

https://walla.my/biscat-earlybird

비스캣

반려동물 돌봄 일지 서비스

3
0