오늘은 성과가 있었던 재밌는 날이였다!
오...오오...대박이야.... 기획팀이 따로 있어...!!!
아침에 슬랙채널 초대를 받았는데, 기획팀과 개발팀이 같이 있었다.
그리고 메인잡으로 받아서 회의에 참가할 수 있었는데
와..! 정말 기획팀과 함께 작업을 할 수 있구나!
그리고 데드라인이 없다했는데 데드라인이 있었다....!!
CTO님!!!!!
여러모로 체크가 안된 사항이 있어서 그런 부분을 이야기할 수 있었고
기획적으로 필요한 요소가 있다면 서로서로 이야기를 해달라고 하셔서
영업, 기획에 관련되어 개발자의 관점에서의 문제를 어떻게 풀어나갈 수 있을지 궁금하고 조금 괴롭지만(?) 짜릿한 경험이 될 것 같다.
좋은 리팩토링이였습니다!
기존의 특정 코드가 상당히 복잡하게 구성이 되어있었다.
검색조건에 맞는 대량의 리스트를 조회하는 쿼리였는데
해당 부분에 Promise.all 내부에 Array.prototype.map() 속에서 특정 정보를 findOne으로 조회하는 로직이 있었는데
이 부분을 과거에 로우쿼리에서 ORM로 교체하면서 저게 괜찮은건가...? 라는 생각을 계속 하고 있었다.
그런데 이번에 대량조회건에 문제가 터져가지고 같은 파트의 팀원분은 해당 건을 처리하고 있었고
나는 코드를 바라보다가 이건 몇개만 고치면 될 것 같다는 생각에 고쳐봤는데
쿼리시간이 440~470ms에서 140~180ms로 줄어드는 리팩토링을 할 수 있었다!
그래서 같이 작업하시던 팀원분이 뮤님은 신입이 아니라 중고신입이라고(?)
신입은 원래 아무것도 못해야 신입인데, 신입이 아닌 것 같다는 칭찬을 받았다(뿌듯함)
그래서 핫픽스로 급하게 올렸는데
문제가 되던 부분이 ORM로 작성되어있는 것을 쿼리빌더로 고치면서
테스트코드를 고쳤어야했는데 그 부분을 고치지 않고 PR을 올렸다
껄..껄ㄹ껄...
다음부터는 절대로 잊지 않으리...ㅠㅠ
CS적인 대응을 해야해서 개발자들이 가끔 대응을 해줘야하는 이슈가 있다.
이 부분을 최대한 줄이기 위해 최근에 API를 구축해서 실제로 써봤더니 잘 돌아갔고(!!!)
문서화를 다 남겨놔서 최대한 간결하게 만들어놨지만, 아쉬운 점이 있었다.
예외처리에 대해서는 스크립트에 조건 분기가 되어있지 않아서
한개한개 체크를 해서 빼놓고 새롭게 돌려야하는 아쉬움이 있었는데
그 부분을 파이썬의 클래스를 구축해서 예외처리까지 알아서 처리할 수 있도록 코드를 짤 수 있었다.
지금까지 파이썬을 써본 적이 없어서 조금 헤메긴 했지만
확실히 한개의 언어를 어느정도 해봤어서(아직 꼬꼬마긴한데) 생각보다 금방 쓸 수 있었다.
그렇지만 들여쓰기로 코드블럭을 분리한다는 것은 정말...정말 괴로웠다...
중괄호의 소중함을 느끼는 하루였달까^^;;
정말 다음주부터 제대로된 시작이고... 이번 주말에는 엑셀콘이 있어서 재밌게 다녀올 예정이다 :>
끗!