본문 바로가기
lean/주간 회고

24.02.11~24.02.18

by mattew4483 2024. 2. 18.
728x90
반응형

업무

Admin 페이지 인증 기능 개발

jwt 토큰을 사용한 인증 기능을 구현했다.

 

server action을 통해 로그인, 로그아웃 등의 과정에서 server 측 동작(Cookie 제어)을 수행했고

middleware를 통해 각 요청 적 access token의 만료 여부와 재갱신 로직을 구현했다.

 

next js 13 업데이트 이후, 처음으로 실 서비스에 해당 기능들을 적용해 본 것이었는데...

그간 웹 프론트엔드 개발을 하며 느꼈던 불편함이나, '이런 기능이 있으면 어떨까'하는 아쉬움을 정확이 긁어주는 듯한 느낌을 받았다.

 

개인적으로 직관성이 굉장히 떨어진다 느꼈던

getServerSideProps, getStaticProps, getStaticPaths 등의 예악어들이 사라진 것도 좋았고,

해당 기능이 server component내 async-await 문법을 통해 구현된 것도 만족스러웠다.

(JavaScript만 안다면, 누구든 이해할 수 있는 코드)

 

또한 server component와 server action을 통해

기존 브라우저측에서 실행될 수 없었던(혹은 보안상의 이유로 실행되서는 안되었던) 비즈니스 로직들을

브라우저에 노출시키지 않고 원하는 동작들을 수행할 수 있어 좋았다.

 

특히 이번에 작업했던 로그인/로그아웃 등의 인증 기능은

뭐랄까... 더 나은 방향이 없는 건 아닐까? 하는 생각이 들면서,

그 구조나 설계가 어느 정도 완성형에 도달했단 느낌마저 들었다. (jwt 토큰을 통한 인증 방식 한정!) 

 

extension 기능 개발

Admin-extension 간 통신을 구현하고, 필요한 API들을 연결했다.

 

와이어프레임 용 flow는 구현 및 테스트를 완료했고,

다음 한 주는 Hifi 디자인을 적용할 예정!

 

회고

결합도와 응집도

next js 13버전부터는 client 측에서도 통칭 'server관련 로직'들을 작성할 수 있다.

route handler를 통해 API를 만들어 사용하거나, DB에 접근해 자원을 생성/수정/삭제 할 수 있는 것인데...

이로 인해 자칫 잘못하면 각 모듈, 컴포넌트 간 지나친 의존과 결합이 발생하기 더욱 쉽겠다는 생각이 들었다.

→ 관심사의 분리. 올바른 추상화를 통해 응집도를 높이고 결합도를 낮추려는 지속적 노력이 필요할 테다.

 

그리고 이러한 관점에서 볼 때, 앞으로의 웹 개발에서 client, server는 어떻게 나아갈까? 하는 생각도 들었다.

(client 작업을 server에서 해도 되고, server 작업을 client에서 해도 되는 거 아냐??)

나름대로 내린 결정은... 결국 '무엇이 주된 관심사인가'에 집중해야 한다는 것!

 

client는 결국 사용자에게 '무엇을 보여줄 것인가'가 주된 관심사이지 않을까?

사용자 경험을 향상하는 것.

사용자가 해당 웹 서비스를 통해 원하는 목적을 달성할 수 있도록 하는 것.

 

따라서 각 기능들에 대한 중요도, 우선순위를 위 기준을 통해 판단하고

각 우선순위 별로 이를 달성하는데 필요한 자원들을 사용하는 것이 올바른 개발 방향이지 않을까 하는 생각이 들었다.

 

불확실성

매 순간이 이런!

스타트업=불확실성.

이 매력에 빠져 시작하기도 했고, 지금도 달려오고 있지만

가끔 그 불확실성이 불안감으로 바뀔 때가 있다.

 

지난 스프린트와 다음 스프린트가 그런 순간인데,

그 이유는... 

사용할지도 모를 제품을 만드는 순간이기 때문!

 

물론 정말 많은 saas 대표님들과 미팅을 하고

긍정적인 시그널도 제법 받았지만

결국 최종 단계에서는 어떠한 '제품'으로 검증을 받아야만 한다.

 

만들어진 제품은 당연히 실패 리스크가 존재하고 (사실은 아주 크다. 세상에 없던 거니까)

그 리스크를 최소화하기 위해... 우리는 MVP 즉 최소 기능 제품을 만든다.

 

하지만, 아무리 MVP라 하더라도

이를 직접 만들고, 실체로 구현해 내는 실무자 입장에서는

어느 정도의 노력을 쏟아부울 수밖에 없다.

 

그리고 노력을 기울이는 시간이 점점 늘어날수록

이들의 머릿속에서는 '사람들이 이 제품을 정말로 돈을 내고 쓸까?' 하는 의문이 필연적으로 피어오르기 마련이다.

(나 역시 마찬가지)

 

100% 성공하는 사업가가 존재하지 않는 것처럼

어떠한 서비스가 100% 성공할 것이라는 장담은 그 누구도 하지 못한다.

 

잘 될 것 같은 이유가 오백가지 있어도,

실패의 원인은 단 한 가지로도 충분하기 때문.

 

그러고 나니 이런 생각이 들었다.

스타트업에서 가장 힘든 점은, 매 순간 그 불안감을 정면으로 마주해야 한단 사실이다!

728x90
반응형

'lean > 주간 회고' 카테고리의 다른 글

24.02.25~24.03.03  (0) 2024.03.03
24.02.18~24.02.25  (0) 2024.02.25
24.02.04~24.02.11  (0) 2024.02.11
24.01.28~24.02.04  (1) 2024.02.04
24.01.21~24.01.28  (0) 2024.01.28