들어가면서

이 글은 Toss Bank 에 대한 품질의 글이 전혀 아니다.
CS (고객 서비스) 에 대고 내가 한 이야기를 생각해보면 아직도 손발이 오그라 든다.

Toss 에 가입하다

곧 이사를 가야해서 계약금을 넣어야 하는 상황에 놓였다.
매번 은행 인증이 고통스러웠던 나는 Toss 를 선택했다.
너무 평이 좋아서 완전 잘될 줄 알았다.
예전에 쓰던 Legacy OTP 를 연결 하니 그냥 슝슝 잘 연결이 되었다.
아! 이게 기술이구나! 하며 야근으로 무섭다는 그 회사의 허상이 사르르 녹으며, 기회가 없을 가능성이 크지만, 언젠가 나도 이런 훌륭한 서비스에 일조하는 사람이 되고 싶었었다.

OTP 가 안된다

5천 만원을 넘는 돈을 옮기기 위해 Toss 앱을 열었다.
OTP 번호를 우아하게 입력했다.
히밥. 안된다.
옆에 얼굴로 인증하기가 있어서 신분증으로 급하게 인증했다.
신분증 얼굴과 다르다고 한다.
그렇지 내 신분증은 2000년 이전 사진이고 지금은 2022년이니까…
그럴 수 있다.
근데 왜 OTP 가 안될까? 등록도 잘 해준것인데…

고객센터와의 만남

고객 센터에 전화를 걸었다.
제발 OTP 가 아닌 방법으로 송금 한도를 올려달라고 했다.
담당자께서는 어렵다 라고 이야기를 해주셨다.
내 생각은? 그럼 조금 더 하면 되겠네?? 싶었다.

결론은?

결국 OTP 가 인증이 잘(?) 되어서 송금을 할 수 있었다. 그리고 내 생각엔 내부적으로 OTP 시간 reset 과 관련된 설정이 있을 것 같다.
왜냐면 아무런 요소가 바뀌지 않았는데, 고객 센터 통화 중에 OTP 코드가 동작을 하기 시작했다.

깔끔하게 소통하자

나는 안된다 === 어렵다 를 전혀 알아차리지 못했다.
물론 CS 엔지니어로 일을 했던 사람이 그런거 하나 모르냐고 하면 할말이 없겠지만,
그냥 나는 안된다 라고 해줬으면 빨리 포기 했었을 것 같다.

돌아보기

나의 경우에는 Array Container 에 item 을 넣은 변수를 복수형으로 사용하는 것을 선호한다.

  const card1: Card = {...};
  const card2: Card = {...};
  const card3: Card = {...};
  const cards: Array<Card> = [card1, card2, card3];

하지만 우리 팀에서는 List 가 더 편안했던것 같다.

코드 리뷰로 cardList 도 있어요 로 제안을 주셨지만 나는 아 그렇구나 하고 넘겼다.
그래 cardList 도 있으니 나는 cards 해야지 했다.

당연히 코드리뷰때 마다 참고로요 복수 말고 리스트는 어때요 이야기가 나오게 된다.

마무리

사실 이 글 쓰고 그냥 시간 죽어서 뭔 말을 쓰려는 지 그때의 감정이 잘 안산다.
하지만 하고 싶은 말은 어느 시점에서는 감정 보다 정확한 표현이 서로에게 시간 낭비를 줄여준다는 이야기를 하고 싶었다.
if 뒤에 한칸 띄는 지 안띄는지 때문에 골을 썩은 경우도 있었다.
나의 코드 리뷰어는 if 다음에 한칸을 띄지 않으면 코드가 어떤 상태는 리뷰를 승인해주지 않았었다.
하지만 이때는 if 다음은 무조껀 띄어써야 한다는 정확한 표현이 있었기 때문에 이 리뷰어의 모듈에 대해서는 항상 규칙을 지켰던 것 같다.
굳이 안되는 것으로 비벼가면서 시간 낭비를 안할 수 있었다.

이렇게 이 글은 그냥 마무리 하겠다.