북마크 말고 다른 유니크한 이름 (새로운 아이덴티티)
- “야 카톡해” 처럼 상징적 의미가 될 수 있는?
branch 전략 고민해보기
- git flow
- github flow
issue
관리- github issue
- ZenHub
- github project
단일 모듈, 멀티 모듈
- 한 번에 빌드하기 무거울 수 있으니 멀티 모듈 고려
- 어드민 등
- 서버를 따로 분리해서 관리 / 포트 넘버를 다르게 해서
- 완성된 프로젝트에서 모듈을 뽑아내는 방식도 가능
- MSA
CI/CD
- 슬랙에 알림 연결 (실패, 배포 완료 등) 필요성 고려
- 사이트 테스트 중에 배포가 되어버리면 사이트를 쓰던 사람은 갑자기 왜 안되지? 하는 상황 발생할수도
- 서비스 기능 관련
- 이걸 지속적으로 체크할 것인가? 한다면 어떻게 할 것인가?
- Lazy 하게 체크하는 방식 : 누군가가 그 링크를 클릭할 때 검사하는 방식은 어떨까?
- 1000 명이 삭제된 링크에 동시 접속한다면 : 앞의 1~2 명에게만 에러페이지를 리턴 해주면 되지 않을까?
- Batch 를 사용하여 1시간에 한번씩 모든 링크를 클릭하도록 설계하는건 최악! 노노!
- 그런데 이걸 우리가 체크해줘야 할 의무가 있는가?
- 그건 그 사람이 알아서 정리해야 하는게 아닐까?
- 이건 기획 단계에서 논의하여 정하고 나가는 것이 좋을 것 같다.
- 팔로워 관련
- 내가 팔로우하고 있는 사람이, 팔로우 하는 사람을 추천해줄 것인가?
- 추천해준다면 어디까지 추천해줄 것인가?
- 인스타그램, 트위터, 네이버블로그 팔로워 추천 알고리즘 참고해보면 좋을 것 같다.
- 테이블 설계를 고민해 볼 것
- 어떻게해야 효율적인 쿼리를 날릴 수 있을지 테이블 설계를 고민해보자.
- 상품 검색시 ⇒ 추천 페이지에 뜬다.
- 상품 검색(select) , 상품 id 와 검색 user id 저장 (테이블을 따로 만든다), 추천 페이지에서 user id를 통해 검색
- 복잡한 알고리즘 없이도, 테이블 설계만 잘 하면 좋은 추천 시스템 설계가 가능하다.
- 태그 기능을 어떻게 정할 것인가?
- 인스타그램, 네이버 블로그 같은 경우에는 자유롭게 생성 가능
- 완전 태그 그 자체 / 태그를 작성하는 형식
- 잡플래닛 같은 사이트는 태그를 존재하는 것들 중에서 선택해야 함
- 카테고리 형식 / 태그를 선택하는 것이지, 작성하는 것은 아니다.
태그 관리 어떻게 할지?사과
라는 태그를 전부Apple
로 바꾸기 위해서는 어떤 작업을 해야할까?- 태그라는 하나의 모듈을 만들어 줄 수도 있겠다.
- 총 천만개의 북마크가 있다면, 그 전부를 정렬할 것인지 아니면 최신 일주인간만의 북마크를 정렬할 것인지 등
- 무한스크롤 vs 페이지네이션
- 배치 모듈을 따로 분리하는 방법?
- URL 만? / URL + 사용자가 URL의 제목과 설명을 직접 지정할 수 있게?
- 파비콘 이미지와, 블로그 내부 이미지는 어떻게 가져올 것인가?
- 리액션 관련 : 댓글, 대댓글, 좋아요 → 관련 알림 기능이 있다면?
- 기능 개발할 시간도 없는데 언제 짜냐! 라고 생각할 수 도 있지만, 오히려 테스트 코드를 잘 짜면 기능 개발에 들어가는 시간을 단축시킬 수 있다. (테스트 코드가 있으면 기능을 매번 직접 실행시켜보지 않아도 되니까)
- CI 시 돌릴 테스트 ← 단위?
- 단위, 통합 모두 필요
내가 북마크해둔 페이지가 삭제되거나, 비공개로 전환된다면?
추천 시스템 (기술적으로 어필할 수 있는 기능)
태그 관리
인기순 / 최신순 / 댓글 많은 순
검색어 자동완성
북마크를 저장하는 방식
SNS 개발 기능의 Challenge
테스트 코드
멘토님의 메모장엔 무엇이 적혀있을까
• 왜 팀장이 바꼈는가
• 북마크..란 말보단 뭔가 유니크한 이름이면 더 재미있을것 같은
• 브랜치 전략 이슈관리 (jira? github issue?)
• 프로젝트 구성 (단일모듈? 멀티모듈?)
• CI/CD 대한 슬랙알림필요?
• url 이 없어졌다면?
• SNS > 추천 태그 > 관심사?
• 인기순 / 최신순 / 댓글많은순
• 검색 : 자동완성
• url 저장방식 : url만? 제목이나 본문도?
• 반응(댓글,좋아요) 에 대한 알림?(새소식 기능처럼..)
• 테스트 코드 작성에 대해 많은 고민을 해보기(단일/통합 테스트)
추가 기능 개발 우선순위