주간 정리
월요일이 되자마자 16w에서 했던 일본 앱 내 회원가입 버튼 위에 이미지를 추가 작업을 원복했다.
기획팀 요청에서는 단순히 추가해주세요, 제거해주세요 정도의 단어 길이만큼 우리의 노동력이 들어간다고 생각하는걸까?
나는 우리가 반영을 위해 거치는 영향도 처리(코드 diff 등)나 반영 프로세스(반영 관련 문서 작업, 반영 후 검수 등), 그리고 이로인해 소비되는 업무시간이 싫은게 아니다.
소비된 업무 시간이 허비로 느껴질 때가 싫은건데
이런 마음을 잡아주는 것은 해야할 일이 설득력과 정당성을 갖췄을 때였다.
그럴 때는 허비라는 생각이 들지 않고 당연히 해야할 일이라 생각하며 작업하게 된다.
16w에서 기획안을 보고는 머릿속으로 ?를 굉장히 많이 찍었는데 그래도 내 분야가 아닌 부분에 질문하는 것은 월권이라 생각해서 굳이 기획자에게 반문을 하진 않았다.
물론 월권이라 생각해 안움직였다지만 쓰다보니 연구실 내부 회의때 이사님이 하셨던 말씀이 갑자기 떠오른다.
기술개발연구실 개발자분들이 이러한 태도를 가졌으면 좋겠습니다.
요청이 들어왔다고 무작정 개발하는 것보다는,
'왜 이런 요청을 했는가'에 대한 원인을 파악하고 개발을 시작하는 것을.
우리 앱에서 쓰는 로딩 컴포넌트는 처음 켜진 이후로 7초가 지나면 자동으로 꺼지게 되어있다.
비정상적으로 로딩이 길어질 경우 로딩 화면때문에 사용자가 앱 내에서 어떠한 행동도 할 수 없는 경우를 방지하기 위해 넣었는데 이 부분이 이번 인앱결제 때 이슈가 되었다.
인앱결제 프로세스의 경우
1. php 뷰 페이지에서 vue.js 뷰 페이지 내 api 통신 함수 호출
2. vue.js 뷰 페이지에서 결제 정보 확인(구매 가능 여부) api 호출 실행
3. success일 경우 네이티브 인앱결제 함수 호출
4. 네이티브 함수 인앱결제 콜백 시 구매완료 데이터가 있으면 결제 완료 api 호출 실행
5. success일 경우 구매 완료 관련 데이터, UI 표출
의 단계를 거치는데 php 서버, 네이티브를 왔다갔다하며 데이터 통신이 이루어지다보니
구매를 진행하는 도중 7초가 지나 로딩이 꺼져버렸다.
사용자가 혹여라도 인앱결제 페이지를 나갈 경우 정상적인 결제가 이루어지지 않을 수 있었고
해당 이슈는 인앱결제 시 로딩이 강제종료되지 않게 예외처리를 함으로써 해결되었다.
연차가 쌓일수록 개발한 코드가 올라가기 전 과장님과 커뮤니케이션을 정말 많이한다.
대부분 사내 코드 컨벤션, 가이드라인, 작업 히스토리 등으로 해결 가능하지만 가끔 말도 안되게 작은 부분,
예를 들면 내가 지은 변수 네이밍까지 과장님께 이렇게 짓는게 맞는걸까요? 하고 여쭤본다.
그러다보면 토론의 장이 열리기도 하는데 의견을 교환하며 더 좋은 방법을 찾아내가는게 내가 원하던 개발자의 모습이라 그 장에 참여해 의견이 유효할 경우 뿌듯할 때가 많고 후의 개발 퍼포먼스도 올라가기 때문에 개발 중에는 이런 의사소통 과정을 더 거치려고 한다.
의사 결정권자라고 말한건 과장님인데
과장님이 독단적으로 진행하는 의사 결정권자가 아니라
우리가 내는 의견을 수용해주시고 자기에게 더 좋은 의견이 있을 경우 역으로 제안도 해주신다.
우리의 의견이 분분하면 하나로 모으는 역할도 해주시고.
근데 17w는 과장님이 신혼여행으로 유럽을 가셨다.
물론 유럽 가셔서도 시간이 나셨을 때 팀원들 매니징하시는 부분은 새삼 놀랍지만,
개발하며 겪는 고민을 바로 물어보러 갈 수 있는 과장님 자리에 빈 의자만 있다는건
17w 초반에 나를 어렵게했다.
그러던 중 난이도가 쉬운 개발 건이 몇 있었는데 반영까지 가야하는 상황이었고
팀원간 스케쥴 공유를 하다보니 나는 과장님 돌아오는 18w에 반영을 했으면 좋겠다고 했다.
개발은 할 수 있지만 검증에 대한 부분은 과장님이 오셔서 판단하고 올라가는게 맞다고 생각했기 때문이다.
그런데 과장님의 의사 결정권을 대행하고 계신 친한 대리님이 그 생각을 깨트려줬다.
과장님 오셨을 때 반영이 안되어있으면
오히려 왜 여태 반영 안했냐고 하실 수도 있을거같아요!
맡은 개발 건들의 난이도가 쉬우니까 더 조심하고 꼼꼼하게 개발해야한다 생각했고
과장님의 확인이 필요하겠다는 강박에 매여있었기 때문에
머리가 흐려져 보이지 않던 부분이 보이니 상쾌해졌다.
만약 내가 과장님같은 상황이었으면 휴가에서 복귀했을 때 진행해야할 업무가 진행이 안된 상황이니(그것도 난이도가 낮은 업무) 황당했을 것 같고 '이걸 왜 아직도 안했어?'라는 반응이 나왔을 것 같다.
스킬이 부족하거나 사내 규칙에 대한 이해가 떨어지면 충분히 할 수 있는 고민이었겠지만
현재 사내 프론트 개발 코드 이단심판관 업무를 수행하고 있는 수준의 위치라면
앞으로 더 자신감을 갖고 개발해도 되지 않을까?