요새 작업을 하면서 다양한 개선을 시도하고, 새로운 기술을 적용시켜보고싶은 욕심이 생기고 있다.
보여지는 그 자체에 매몰되지 않기 위해 가장 중요한 기록을 남겨보고자 한다.
1. 지금 풀어야 할 수많은 문제 중, 진짜 해결해야하는 문제는 뭘까?
- 비즈니스에 직접적인 임팩트를 주거나, 사용자가 가장 불편해하는 문제를 먼저 해결하자.
- ‘이 문제를 풀면 서비스가 정말 나아지는가?’를 스스로에게 묻자.
2. 그 문제를 가장 단순하게 해결할 방법 (최대한 값싸게 해결할 기술 포인트)
- 최신 기술이 항상 답일까? 단순한 해결책이 효과적일때도 있다.
- 가격 / 시간을 고려해보자.
- ex. 채팅 구현을 할 때 일반적으로 모두가 WebSocket을 생각하겠지만, 메시지가 유실되면 안되는 상황이 더 중요하다면? HTTP polling이 더 적합할 수 있다.
3. 이 문제를 해결할 때, 여기서 절대 실패하면 안되는 핵심 기능은?
- 해결 과정에서 무조건 안정적으로 작동해야 하는 부분을 명확히 정의하자.
이게 정말 지금 필요한 건가..
이거 없으면 서비스가 안돌아가나..
사용자가 진짜 원하는게 뭔가..
가장 쉽게 해결할 수 있는 도구는 뭘까..