아침
오늘 업무는 관리자 페이지에서 특정 사용자의 정보를 조회하는 기능을 구현하는 일이다. Cognito에서 'sub' 데이터를 받아오고 이를 Elasticsearch를 조회하는 API에 요청하여 사용자 id를 받아온다. 이 사용자 id를 다시 elasticsearch API로 조회해서 사용자가 작성한 콘텐츠와 log를 담당하는 Elasticsearch API에 조회해 사용자의 로그를 조회한다. 이 데이터를 정리해서 화면에 전달하면 된다. 여기까지가 요청사항이고 개인적으로 시도해 볼 부분은 Docker를 통한 배포와 코드에 docs 추가하기다. docs는 다른 사람과 미래의 나를 위해서 추가하는 것이고 Docker 사용은 AWS EB를 사용하는데는 꼭 써줘야 하는 도구인 것 같다. 로컬에서는 돌아가던 서비스가 EB에서는 안돌아 가는 경우가 종종 생기는데 환경설정 외의 Dependency 문제나 내부 설정문제가 존재하는데 이를 Docker로 사전에 test하고 Docker 그대로 배포하면 Error를 많이 줄일 수 있다.
오퍼를 거절했다.
개인 프로젝트를 창업까지 이끌어 보겠다는 생각을 밝히면서 오퍼를 거절하는 메일을 보냈다. 관심이 가는 서비스를 만드는 일에 참여할 수 있는 기회를 거절하는 것은 정말 아쉬웠다. 아쉬웠던 만큼 내가 계획한 일을 끝까지 해보리라 다짐했다. 퇴근 후 운동을 하고 바로 카페로 향했다. Docker를 서비스에 도입할 것인가를 깊이있게 검토했고 도입하기로 결정했다. 1주일의 시간을 투자해서 Docker를 다루는 일을 스스로 교육하기로 했다. Docker 도입을 결정하게 된 주요한 원인으로는 1) 서비스의 수평적인 확장 2) 서버 에러를 선제적으로 점검 및 대응 등이 있다. 특히 2번의 경우가 가장 필요해 보였다. 혼자서 개발하는 입장에서는 서버를 안정적으로 운영할 수 있는가에 대한 걱정이 많은데 Docker를 사용함으로써 이를 어느정도 줄일 수 있겠다고 생각했다.
집으로 돌아와서는 하우스메이트 형님께 내가 진행하고자 하는 서비스의 설계에 대해서 설명해드렸다. 형님은 비개발자셔서 많은 비유를 이용해 쉽게 설명드렸다. TDD 나 SOLID 같은 개념부터 소프트웨어 개발 철학이 왜 소프트웨어 개발에 필요한가를 설명했다. 덕분에 나 스스로도 서비스를 어떻게 개발해나가야 할지 정리가 되었다. 핵심은 robustness 이다. 단단한 서비스를 개발하겠다는 것이 1순위 목표다. 서비스가 조준하는 문제와 풀이는 명확하기 때문에 풀이를 검증할 수 있는 단단한 서비스가 나한테는 필요하다. 그래서 유연성 보다는 단단하고 안정성있는 서비스를 개발하려 한다. 그렇기 때문에 속도가 느리더라도 TDD 나 Docker 등을 도입할 필요를 느낀다.
목표는 6월 1일에 Prototype을 완성하는 것이다. 그리고 회사에 겸직, 겸업을 여쭤보고 안된다고 한다면 퇴사를 할 생각이다. 6월 1일이면 많이 빠듯하다. 만들어야 하는 부분이 많은데 최대한 기한을 맞추고 늦어도 6월 안으로는 MVP를 만들어 내는 것으로 목표를 삼자.
- 초고 4월 30일 00:09
- 퇴고 4월 30일 10:00
댓글