2주간 진행되는 그로스톤에 참가하였다. 2주간 어떤 서비스를 만드는게 쉽지는 않을거라고 생각했다. 하지만 그동안 갈고 닦은 것으로 빠르게 하면 충분히 할 수 있다고 생각했다.
하지만 변수가 있었는데, 직장에서 비상사태가 발생하였고 그로 인해 내가 2주차에는 아무것도 할 수가 없었다. 퇴근하면 11시였고, 집에오면 12시였다. 대략적인 api는 1주차에 만들어 놓았지만, 프론트 쪽에서도 퍼블리싱이 급해서 그것을 당장 테스트해보는 데에는 어려움이 있다고 하였다. 어쨋든 핵심 api는 최대한 빨리 만들어 놓았고, 만반의 준비를 다했다고 생각했다. action으로 ci/cd 구축도 다했고, s3관련 설정이며 인프라적인 것도 모두 다 갖췄었다. 추가적인 api가 생긴다면 협의해야겠다고 생각했다.
하지만 내가 간과한 것이 인증에 대한 것이었는데, 인증을 복잡하게 하면 트러블 슈팅이 예상되니 빼자고 하여서 form로그인으로 구현한 것이다. 어.... cors설정도 다 뺏다. 왜냐하면 당연히 하나의 서버에서 같은 오리진을 쓸테니 굳이 cors 설정을 할 필요가 있나? 하는 생각 때문이었다. api서버를 만들어 놨고, 더불어 배포 역시 spring에 build한 파일을 넣어서 한번에 할 생각이었으니 그럴싸했다. 맞다. production 환경이라면 그렇다. 그런데 테스트는? 당연히 api를 연동하려면 개발 중에 테스트를 해야 하고, 이 프론트앤드 개발자들은 내 aws 서버에 있는 api에 접근할텐데, 그러면 당연히 localhost -> aws host로 접근할테니 cors 관련 이슈가 생길 수 밖에 없다.
부랴부랴 수요일에 퇴근하여 cors 설정을 하고 프론트 분과 인증 부분을 맞췄지만, 또 form 로그인에 대한 설명을 해야해서 시간을 많이 썻다... 결국 이 분들의 일정도 촉박하고, 서버를 따로 만들지 않아도 발표하는데에는 문제가 없을것 같다는 결론을 내렸다. 말에 틀린 부분이 없고, 나에게도 실책이 있어 인정하고 백앤드 쪽을 마치게 되었다.
그렇다. 이번에는 사이드 프로젝트 성으로 다같이 한거고, 이 프로젝트 자체가 거래를 위한 프로젝트가 아니니.. 다들 좋게 넘어가 줬다고 치자. 그런데 만약에 거래를 위한 프로젝트였다면 나는 어떻게 되었을 것인가. 음.. 생각하고 싶지 않다. 아마 선천적으로 이런 부분을 생각하지 못한다면 경험으로 채워나가야 되지 않을까? 그렇다라면 이번에 값싸게 훌륭한 수업을 들었다고 생각한다. 이런 상황에서도 1등을 한 팀원 분들이 너무 대단한것 같고 많이 미안하다.