오늘은 여러모로 재밌었다...^^ 생각도 많이 했고
아 일 늘리는데 정말 나는 소질이 있구나!!!!!!11!!!1!!
출근을 처음해서, 온보딩 과제로 받았던 것 중에 한가지는 바로 스웨거의 응답코드를 추가하는 작업이였다.
그런데 이게 뭔가 계속 눈에 밟혔다.
비어있는게 너무 많았기에 이것을 어떻게든 완성해보려고 했다.
왜냐하면 팀플할 때 리턴값이나 응답값좀 제대로 알려달라고 이야기를 계속 했던게 생각나서(...)
그래서 거의 완성이 된 상태인데, 도무지 작업을 해도 방법이 없는 것 같아서
중간점을 잡기 위해 프론트 분들에게 태그를 달아서 물어봤다.
댓글 40개달림
저기 댓글 중에 아래와 같은 내용이 있었다 ㅋㅋ
이번 프론트 한달 회고에 문제사항에서도 나왔던 것인데
백엔드분들이 바빠서 요청을 드릴 순 없었는데 신경써주셔서 감사하다.
요청드릴 순 없었는데 벼르고 있었다고(?) 일복이 터졌다
아무튼 중간지점을 잘 찾아가지고, 이제는 장기적으로도 사용할 수 있게 커스텀 데코레이터를 4개정도 추가로 만들어놨다.
기존에는 Entity | Entity[] | { result : string } 의 형태만 반환을 할 수 있었는데
Entity[] & number | number
Entity[] & Entity | number
Entity[] | Entity | Entity
Entity[] | Entity & { result : string }
이렇게 조금 다양한 형태를 Swagger 상에 표현할 수 있도록 노가다를 해놨다.
이 미친 Swagger가 Union 타입을 정식 지원 안한다고 깃허브 이슈에 못박혀있고
examples 이라는 값이 있는건 알겠는데 도대체가 Entity(Dto) 파싱을 못해와가지고 -_- 시간 낭비 더럽게 많이 했다.
아무튼 거의 다 해결 했음!!
최근에 프론트 지인분께서 Swagger로 혹시 백엔드가 작업해주는게 귀찮냐고 물어봤는데
정말 귀찮고 시간도 많이 걸리는 작업이라고 했던게 무럭무럭 생각나더라...
어떻게보면 문서화라는 이름을 많이 쓰는 것 같다.
Swagger가 뭐냐면 대충 아래 사진과 같이 Api를 실제로 사용해볼 수 있고, 입력 및 출력 값을 예시로 볼 수 있는 대표적인 오픈소스다.
그래프큐엘쓰면 이런 문제 없는데 | 그 입을 다물라.
이것의 문제는 무엇이냐?
위에 사진에 있는 Api로 시작하는 모든 데코레이터(앞에 골뱅이있는거)들 API 한개 한개마다 다 붙여줘야한다.
만약에 반환 값이 여러개라면?
미친듯이 길어진다.
에러를 반환하는 종류가 많다면 그것도 한참 늘어난다.
백엔드 입장에서는 코드의 가독성이 최악에 가까울 정도로 변한다.
그리고 내부에 들어가는 메세지, 타입 같은 선언들이 상당히 번거로워서 시간이 상당히 많이 필요한 작업이다.
그러다보니 급하게 개발을 해야하는 경우에는 이 과정이 증발하는 경우가 빈번하다고 주변에서도 많이 들었다.
근데 의문이 들었다, 급하고 해야할게 많다면 오히려 더욱 신경을 쓰는게 맞지 않을까?
왜냐하면 백엔드가 혼자 작업하는 것이라면 상관없겠지만
저런게 준비되어있지 않는다면 프론트가 백엔드에게 계속 물어봐야한다.
입력은 어떻게 넣어야하죠?
응답은 어떻게 나오나요?
에러메세지는 어떤게 나오고 상태 코드는 몇번인가요?
이게 모두 커뮤니케이션 비용으로 빠진다면, 누적이 된다면 무시할 수 없는 양이 아닐까?
그리고 저게 제일 큰 문제는 작업을 안해놓는다면 저게 분량이 미친듯이 많이 쌓이는 것도 한 몫 한다(....)
은근히 시간이 많이 잡아먹기 때문에
해오지 않았다면 쉽사리 건들기 힘들다. 라는게 정말 큰 이유다.
그래서 한번에 탕감하려고 하지말고,
꾸준히 계속... 주기적으로 아니 새로운 API를 만들 때마다 해야만 하지 않을까?
라고 생각하고 있다.
에러코드, 에러메세지에 대한 부분도 작업이 진행되면 좋겠다 이야기가 나와서 이 부분도 고민을 해봐야할 것 같다. 🤔
CTO님이 퇴근하기 전에 한마디 하고 가셨다 ㅎㅎ;
주말에 개발공부 하지말고 취미생활도 좀 해보라고
경험상으로는 주말에도 개발만 하면서 사는 사람들이 존재하긴 하지만 정말 소수라서
다양한 취미를 가지면서 리프레시를 하는게 여러모로 중요하고 좋다고 이야기를 해주셨다.
주말마다 맛있는거 고급진거 먹으러 간다했더니
먹는 것은 일상에도 있는 것이니까, 조금 다른 것을 해보라고
보면 팀원분들중에도 펜싱도 하고 유도 복싱...
뭐야 운동부인가?
나도 하고싶은게 있긴한데... 배드민턴이나 테니스 혹은 스쿼시같은 휘두르는(?) 운동을 좀 하고싶다.
저게 운동량도 정말 많고 일단 스트레스를 풀기 좋아서...
좀 동적으로 움직이는 취미를 하나 가지면 좋겠는데 음.... 이 부분도 정말 고민이다.
저기 3개 종목 다 혼자 하는 것이 어려운 것들이라...
그리고 오랫동안 하셨던 분들이 많고 연령대가 좀 있는 운동이라 집단(?)에 들어가는게 영 어렵더라..
아무튼 나도 이 문제는 계속 고민을 하고 있어서 빨리 뭔가 재밌는걸 찾아내면 좋겠다.
게임도 생각을 해봤는데, 평소에도 맨날 모니터 보고 사는 직업인데 게임은 이제 좀 그만해도 되지 않을까.. 라는 생각도 있어서?
그냥 밖에를 좀 나가서 사람도 만나고 그런 취미가 필요한 시점이라고 보고 있다.
목요일 한달 회고에 어떤 이야기가 나왔냐면, 개발자들끼리 서로 스몰톡(잡담)을 할 수 있으면 좋겠다. 라는 의견이 나왔다.
내가 낸 안건은 아니지만 여러가지 복합적인 이유가 있다고 생각하고 있다.
=> 이러니 유대감이라는게.... 쉽사리 생기기 힘들다고 보고 있다.
그래서 무슨 방법이 좋나 생각을 하다가...
나에게 매번 좋은 이야기를 해주시던 민규님의 회사에서는
아침마다 30분씩 전부 구글밋으로
커피를 마시면서 이런저런 이야기를 하는 것으로 업무를 시작한다. 라고 하셨던 적이 있었는데
출근시간이 유동적이라 저걸 도입할 수 있나?
더불어서 정말 조용하게 커피만 마시는건 아닐까?
그리고 누군가는 정말 회사를 다니면서 비즈니스로 생각하는 사람도 분명 있을 수 있기에
유대감이라는게 정말 어려운 부분이라고 생각한다.
다른 분의 이야기를 들어보니 구글밋 1:1 커피챗을 종종 한다고 하시던데 이거라도 제안을 해볼까 싶기도하고..
근데 나는 정말 내 관심사 아니면 흥미가 없는데... 오히려 내가 함정에 빠지는게 아닌가...??
좀 이런저런 생각이 많아지고 있는 요즘이랄까
공부
회사
문화
내 건강 ^^;;
여러가지를 한번에 복합적으로 생각하다보니 조금 피로감이 있는 것 같기도한데
이런 재미로 살아야한다고 생각해서 뭐 목요일마냥 픽하고 뻗을 순 있겠지만 그냥저냥 재밌는 것 같다.
끗