오늘 한 일

  • 오늘 하루는 스벨트와 함께 시작했고 스벨트와 함께 끝냈다.
  • 궁금한 게 있으면 자료를 타고 타고 들어가서 어딘가에서 헤매다가 다시 돌아오길 여러 번 반복했지만 그것도 나름 좋았다.

오늘 배운 것

  • 스벨트 튜토리얼(튜토리얼이 아니더라도 REPL 자체를 제공한다)은 요즘 다른 데서도 흔히 볼 수 있는 형태로 웹사이트에서 REPL(Read-Eval-Print Loop)로 제공하는데, 이런 CodePen 같은 거 이용하다가 .zip 파일로 받아서 압축 푸는 거 말고 로컬에서 그럴싸하게 돌려보고 싶어서 이것저것 찾아 보았다.
 

The easiest way to get started with Svelte

The easiest way to get started with Svelte This'll only take a minute. Rich Harris Aug 7 2017 Svelte is a new kind of framework. Rather than putting a tag on the page, or bringing it into your app with import or require, Svelte is a compiler that works beh

svelte.dev

  • 개인적으로 어떤 프레임워크든 CLI를 이용하는 걸 좋아하는데 스벨트는 svelte-cli가 deprecated 되어서 아쉬웠다. 사용 자체는 가능하지만 변화가 일어나면 바로 반영하지 못해서 프로덕션 환경에서는 비추한단다.
 

GitHub - sveltejs/svelte-cli: Command line interface for Svelte

Command line interface for Svelte. Contribute to sveltejs/svelte-cli development by creating an account on GitHub.

github.com

  • 첫 번째 링크에서 제안하는 REPL을 제외한 또 한 가지 방법은 degit을 이용하는 것이다. git repo의 가장 최근 버전만을 가져오는 것으로, 히스토리는 포함하지 않으므로 git clone보다 빠르고 가벼운 수단이라고 한다. npx degit user-name/repo-name으로 사용할 수 있다.
 

GitHub - Rich-Harris/degit: Straightforward project scaffolding

Straightforward project scaffolding. Contribute to Rich-Harris/degit development by creating an account on GitHub.

github.com

  • 그런데 이렇게 하면 말 그대로 템플릿으로서 가져오는 것이기 때문에 번들러는 이미 Rollup으로 지정되어 있다. 나는 이유는 모르겠고 그냥 왠지 sso의 Vue3에서 사용한 Vite를 적용하고 싶었다. 그러러면 npm init @vitejs/app으로 직접 프로젝트명을 지정하고 프레임워크를 선택하면 아래 링크와 같은 스캐폴딩이 적용된 프로젝트를 새로 생성할 수 있다. 물론 타입스크립트로도 가능하다.
 

Vitejs (forked) - StackBlitz

 

stackblitz.com

  • Rollup과 Vite를 비교하면 어떤지 자료를 찾아보고 싶었는데 마땅한 게 눈에 띄지 않았다. Vite가 빠르다는 얘기는 있지만 둘의 수치나 이런 걸 비교한 건 딱히. 나중에 시간 내서 Rollup 공식문서도 읽어보고 둘을 비교해 봐야겠다.
 

rollup.js

 

rollupjs.org

 

Why Vite | Vite

Why Vite The Problems Before ES modules were available in browsers, developers had no native mechanism for authoring JavaScript in a modularized fashion. This is why we are all familiar with the concept of "bundling": using tools that crawl, process and co

vitejs.dev

오늘까지 한 일

  • 어제는 태초 퀘스트를 물어온 긱봇에게 '하려던 참인 일'을 3개나 적어서 냈다. 욕심...
  • 1. sso 스크럼이 다시 생겼는데 매주 화요일과 수요일에만 하기로 해서 마침 휴가였던 화요일은 못 들어가고 어제 처음으로 참여했다. 온보딩 팀과 비교하면 멤버의 구성은 비슷한데 이번엔 스크럼 보드 없이 구글 밋에서 진행했다. 보드가 없으니까 서로 얼굴을 더 쳐다보게 되는 것만 같은...ㅋㅋㅋ
  • 2. 두 번째로 적어낸 건 허스키였다.
  • 3. 그리고 세 번째는 스벨트. 하지만 2, 3번 중 그 무엇도 해내지 못했다.
  • 왜냐면 스크럼 직전에 QA 팀에서 몇 개의 카드를 어제 오전 중에 QA 서버에 배포해 줄 수 있냐고 연락이 왔기 때문이었다. 당연하게도 스크럼 때 그 얘기가 나왔다. 배포 자체는 언제든지 가능한 상황이었지만 연락을 받고 확인해 보니 당장 고쳐야 할 부분이 눈에 띄어서 수정 후에 배포를 하기로 했다. 그러다 승진님, 지완님과 허들로 이런저런 에러 관련 내용을 나누며 작업을 했다. 절반쯤 페어 프로그래밍 느낌. 근데 sso 프로세스 우리가 봐도 헷갈려ㅋㅋ.. "확실하진 않은데", "기억이 잘 안 나는데"는 거의 뭐 프리픽스였다.
  • 백과 프론트 양쪽을 다 작업하신 지완님이 pr을 올리시면서 프론트쪽 리뷰를 부탁하셨는데 비록 오타 찾아내기와 같은 작은 리뷰였지만 뿌듯했다. 그리고 그 덕에 로딩스피너와 스낵바를 구현하신 코드를 구경할 수 있었다.
  • 지완님과 승진님이 에러 해결 후 머지하신 코드를 받아서 내가 작업한 내용을 넣어서 pr을 올렸다.
  • 그리고 당연히 QA 팀에서 확인 후 코멘트를 달아주었고, 그 내용을 반영하는 작업을 오늘 했다.
  • 참 신기한 게, 똑같은 작업이라도 예전에 시도할 때는 어떻게 해결해야 할지 방법도 생각이 안 나고 결국엔 핵심이 아닌 주변부만 삽질하다 포기했는데, 시간이 조금 지나서 다시 시도하면 '도대체 내가 이걸 그때 왜 못했지?' 싶을 만큼 간단하게 한 번에 성공하는 때가 있다.
  • 이메일을 입력해서 제출하면 비밀번호 재설정 링크가 발송되는데, 그때부터 60초 타이머가 작동하고 그 60초가 지나야 링크를 재발송할 수 있는 버튼이 활성화 된다. 그런데 이 버튼은 외관상으로는 버튼이 아니다. 타이머가 돌아가고 있을 때에는 일반적인 텍스트일 뿐이지만 타이머가 만료되면 텍스트 색상이 바뀌고 클릭이 가능해지면서 버튼처럼 동작한다.
  • 이걸 처음에는 커스텀 컴포넌트로 만들어둔 버튼 컴포넌트를 사용해 보려고 했는데 정렬도 원하는 대로 되지 않고 크기나 간격도 조금씩 달라서 낑낑대다가 일단 보류했었다. 하지만 이번에는 QA에서 공식적으로 적발되어 버렸으므로 더 이상 물러날 곳이 없었다. 커스텀 컴포넌트를 만지다가 시간만 보냈던 기억이 고스란히 남아 있었기 때문에, 이번엔 커스텀 컴포넌트를 버리고 타이머가 0이 되었을 때 텍스트의 색상과 @click 함수를 바꿔주는 다소 단순한 방식으로 방향을 틀었더니 손쉽게 해결되었다. 웹 접근성과 관련해서 스크린 리더를 고려한다면 버튼으로서 동작하는 부분은 버튼 태그를 써야 하는 것 같지만...

오늘 배운 것

  • sso 프론트엔드, 백엔드, 클라이언트 서버를 터미널에 탭 3개 켜 놓고 돌리다 보니 클릭해서 옮겨다니기도 귀찮아져서 찾아본 단축키.
 

맥 터미널 탭이동하기

# Select Next Tab ⌘ + } # Select previous Tab ⌘ + { # Select tab by number ⌘ + number

seulcode.tistory.com

오늘 한 일

  • 오전에 있었던 케이님과의 허들에서 작업을 하다 보면 끝내지를 못해서 공부할 시간을 자꾸 확보하지 못하게 된다고 말씀 드렸다. 작업을 중간에 끝내는 것은 중요하고 필요하지만, 실제로는 시니어들도 그러기 어렵다고 하시면서, 그런 의미에서 뽀모도로 기법을 활용하는 것도 방법이라고 말씀해 주셨다. 25분의 작업이 끝나면 5분을 쉬어야 하므로 흐름이 끊길 수밖에 없는 것이었다. 뽀모도로에서는 항상 작업에 몰두할 25분만을 비중 있게 생각했던 나로서는 새로운 접근 방식이었다.
  • 오후부터는 sso 회원가입 페이지 작업을 할 때 창현님이 추천해주신 어플로 뽀모도로 타이머를 적용해 보았다. 25분이 생각보다 짧아서 나도 모르게 집중하게 되는 효과는 있었다. 그러나 기계적으로 타이머 실행 버튼을 눌러가며 무한정 작업에 몰두하게 되는 부작용을 경험했다ㅋㅋㅋㅋ
  • 코딩, 말 그대로 코드를 짜는 작업은 하면 할수록 그 속에 파묻힐 수밖에 없는 것 같다. 전체적으로 코드의 틀을 잡았다고 생각하면 세부적인 구멍이 눈에 띄고 그 구멍을 촘촘히 메우고 나면 다시 전체 그림이 뭔가 비효율적인 것 같고 아무튼 마음에 안 든다. 리팩토링과 수정 보완의 무한 굴레. 하루가 다 끝날 때쯤에도 여전히 내 투두 리스트에는 작업 말미에 찾아낸 빵꾸들이 손에 손을 잡고 나란히 줄지어 있다.
  • 그래서 결국 공부는 다시 퇴근 이후로 밀리고야 말았다. 스벨트의 탄생 배경, 특징, 컨셉 같은 것들을 훑어보았다. 영어라서 읽는 시간은 오래 걸렸지만 그래도 단 한 줄도 공부하지 못했던 어제보다는 훨씬 낫다고 셀프 칭찬

오늘 배운 것

  • 예전에 창현님과의 페어 프로그래밍에서 뽀모도로 타이머를 쓰셨던 게 생각이 나서 타이머 뭐 쓰시는지 여쭤보았다. Be Focused! 오늘 몇 시간 사용해 본 결과, UI도 기능도 깔끔하고 직관적이어서 만족스러웠다.
 

‎Be Focused - Pomodoro Timer

‎Staying on task seems is a real challenge for our screen-bound generation. The Be Focused lets you get things done by breaking up individual tasks among discrete intervals, separated by short breaks. It’s a surprisingly effective way to retain motivat

apps.apple.com

  • 리액트나 뷰에 비해 스벨트는 같은 코드여도 코드 자체가 짧다. 예를 들면 리액트의 <React.fragment> 또는 <>, 뷰의 <template> 같은 보일러플레이트가 필요 없어진다. 무조건 짧게 쓴다고 가독성의 향상을 보장하지는 않지만, 애초에 원래 짧게 써도 되는 언어가 있다면 그걸 선택하는 게 옳다는, 대충 그런 얘기. 리액트도, 뷰도 조금이나마 사용해 봤기 때문인지 스벨트의 장점이 더더욱 와 닿는다.
 

Write less code

Write less code The most important metric you're not paying attention to Rich Harris Apr 20 2019 All code is buggy. It stands to reason, therefore, that the more code you have to write the buggier your apps will be. Writing more code also takes more time,

svelte.dev

  • 스벨트는 프레임워크가 아닌 컴파일러이기 때문에, 필요하지 않은 코드들도 함께 안고 가야 하는 다른 프레임워크들과는 달리 필요한 만큼의 코드만 바닐라 자바스크립트로 컴파일한다. 따라서 상대적으로 용량은 작고 실행 속도는 빠르다.
 

Frameworks without the framework: why didn't we think of this sooner?

Frameworks without the framework: why didn't we think of this sooner? You can't write serious applications in vanilla JavaScript without hitting a complexity wall. But a compiler can do it for you. Rich Harris Nov 26 2016 Wait, this new framework has a run

svelte.dev

  • 영어 문장이 조금 어렵게 느껴져서 내가 이해한 게 맞는지 잘 몰라 다른 블로그를 찾아 한 번 더 읽어보았다.
 

왜 Svelte(스벨트)를 좋아하나요?

스벨트가 왜 좋으신가요? 스벨트 영업 글도 기대해보겠습니다 ㅎㅎ 프레임워크들의 차이점이나 트렌드가 어떻게 변하고 있는지에 대해서 가져갈 수 있지 않을까..! 프롤로그 > 주의! 이 글은 정

velog.io

오늘 한 일

  • 아무래도 공백이 너무 길었다. 내가 무슨 작업까지 하다가 쉬게 됐는지 기억이 안 나서 내가 쓴 TIL 내가 다시 보는 기현상까지 벌어졌다. 그나마 상세히 적어놔서 다행이었다고나 할까. 오늘 분명히 공부해야겠다고 마음 먹은 것들도 있었는데 들춰 보지도 못했다. 이래서 개발자들이 미팅으로 흐름 끊기는 걸 싫어한다는 걸까. 아무말
  • sso 쪽 작업은 회원가입부터 손봐야 하니까 피그마에 들어가서 간만에 해당 부분 구경 겸 헤매기 하면서, 회원가입 페이지를 전혀 사용하지 않은 베타 테스트 이후엔 건드리지 않아서 그 상태가 어떤지조차 모르고 있던 코드들을 더듬더듬 하나씩 고쳐 나갔다. 마침 그때 승진님과의 간만의 싱크업. 내 기억으로는 지난번과 크게 다르지는 않은 내용이었지만, 이제 정말 더 이상 미룰 수 없을 정도로 본격적으로 작업을 해야 한다는 것처럼 느껴졌다. 그렇다고 해서 지금껏 미뤘다는 뜻은 아니지만
  • 페이지로 따로 있던 내용들이 다이얼로그로 바뀐 부분도 있고, vms UI 작업 때 똑같이 만들어본 디자인이 들어간 부분도 있는데, 역시 다른 점은 그건 vue 2, 이건 vue 3라는 점... 생각으로는 이런 식으로 구현하면 되겠다, 했다가도 내장 API 쓰는 방식이 달라서 결과적으로는 사소한 것들인데 조금씩 빙빙 돌아서 해결하게 되곤 했다.
  • 구글 로그인 버튼도 와이어프레임 느낌 정도로만 넣어 놓고 기능조차 안 붙이고, 중간중간 구멍이 전혀 없을 거라고 보장은 못 하지만 어찌 됐든 승진님이 다시 살려 놓으셨다는 API와 이번에 바꾼 디자인 간에 기본적인 연결은 할 수 있었다.
  • 오늘 월요일이라 지완님과 신나는 원온원이 있는 날인데 하루종일 허둥대다가 준비가 미흡한 나머지 결국 다음주로 미루고 말았다. 앞으로는 이런 일 없게 해야겠다ㅠㅠ
  • 내일은 회원가입 페이지에 대한 의문점들을 해결하고 나서 조금 더 다듬고, 반드시 공부도 하리라 부들부들

오늘 한 일

  • 지난주가 인도네시아 휴일이었기 때문에 vms UI에 대한 QA 피드백은 오늘 받을 수 있었다. 내가 고쳐야 하는 버그는 총 3가지였는데, 첫 번째부터 조금 난감했다.
  • 사용자가 비밀번호를 잊어서 리셋할 수 있는 링크를 휴대폰으로 받겠다고 하면, 그걸 왓츠앱이나 문자 중 선택해서 보내도록 하는 버튼이 있다. 기존 vms에는 이 버튼이 하나로 합쳐져 있는데, 아무래도 이번 작업은 UI 변경 작업이다 보니 기존에 붙어 있던 함수를 그대로 가져다 썼고 결국 같은 함수가 두 번 붙은 셈(...이건 전적으로 내 잘못)이었다.
  • 혹시나 프론트에서 특정 뭔가를 인수로 넘기면 왓츠앱과 문자를 분기할 수 있는 로직이 백엔드 쪽에 있나 봤는데 golang이라 살짝 난처했지만 없는 것 같았다. 그래도 혹시 모르니 창현님께 여쭤봤고, 백엔드 디버깅이 필요하다 하더라도 이건 할당된 UI 변경 카드로 해결할 문제가 아니라 별도의 카드로 해야 한다는 답변을 들을 수 있었다. 영어로 내가 앞뒤 정황을 다 설명할 자신이 없어서 소연님께 이러이러한 문제로 당장 로직 변경은 어려울 것 같다 말씀드리니 바로 이해하시고 버튼을 원래대로 합칠 수 있게 해 주셨다. 🥳
  • 나머지 버그도 삽질이 없잖아 있었으나 translation에 변수 넣기, 클립보드 복사 기능 넣기 등 첫 번째에 비하면 그래도 비교적 간단히 해결할 수 있는 것들이었다.
  • sso 관련해서는 승진님과 프론트 작업 현황을 공유하는 시간을 가졌다. 허들이 시작되자마자 깨달은 사실: pr 올려놓고 슬랙에 링크를 안 올렸다. 내 기억력 무슨 일이야? 비밀번호 리셋하는 페이지는 우연찮게도 내가 마음대로 만들었으나 결과적으로는 피그마와 디자인이 상당히 일치하므로 세부적인 부분만 간단히 확인하고 넘어갈 예정이었다. 비밀번호 변경 페이지는 아직 급하지 않으므로 뒤로 미루고, 베타 테스트 때 숨겨 놓았던 그렇기 때문에 손볼 데가 많을 회원가입 페이지부터 우선 작업하기로 했다.
  • 승인된 pr의 브랜치를 머지한 기념으로 손대지 않고 있었던 sso 카드를 정리했다. 승진님이 할당해 주신 카드를 내 멋대로 잘게 나눈 것들이 있는데, 제목만 봐서는 그게 그거 같아 보이는 함정이 있어서 이해를 돕기 위해 짧게나마 설명을 덧붙였다. 그러다 보니 뭔가 이상하다는 것을 깨달았다. 방금 이미 dev 브랜치에 머지까지 끝낸 pr 브랜치명을, 유사한 다른 카드 넘버로 잘못 딴 것이었다. 나중에 찾기 쉽도록 pr 제목과 내용만 바꿔주고 넘어갈 수 있었지만 잠깐 온몸에 소름이 돋았다. 그러게 누가 카드 그렇게 나누래

오늘 배운 것

  • 지난번에 상현님에게 테이블플러스 사용법을 배웠었다. 근데 그게 회사에 두고 온 맥북에 있다ㅠㅠ DB를 오늘도 봐야 했는데 테이블플러스를 잃은 나는 다시 선생님께 도움 요청해서 워크벤치를 깔았는데, 충격과 공포의 연속이었다. ? 얘 왜 이렇게 생겼어..가독성 무슨 일이야..주황색 코끼리 돌려줘..
 

MySQL :: Download MySQL Workbench

Select Operating System: Select Operating System… Microsoft Windows Ubuntu Linux Red Hat Enterprise Linux / Oracle Linux Fedora macOS Source Code Select OS Version: All Windows (x86, 64-bit) Recommended Download: Other Downloads: Windows (x86, 64-bit), M

dev.mysql.com

오늘 한 일

  • 최근까지 vms UI 작업을 하느라 뒷전으로 밀렸었던 sso UI 적용에 약간의 부채감을 안고 있었는데, 비록 그 과정에서 파생된 또 다른 부채들이 리스트로 남았지만 그래도 오늘은 조금 해소했다.
  • 회사에서 지급한 맥북을 지난주에 회사에 두고 퇴근했고 오늘은 집에서 개인 맥북으로 일을 했는데, 한 번도 golang으로 작성된 sso 서버를 안 돌려봤었는지 서버 구동하려니 에러가 터지기 시작했다. 이게 문제인가 저게 문제인가 이것저것 만져보다가 결국 go 설치부터 다시 시도. path 관련으로 고통 받았던 지난날의 기억이 갑자기 주마등처럼 스쳐 지나가면서 사실 좀 무서웠다. 나 오늘 왜 재택하기로 한 거지?
  • 하지만 반복된 에러가 면역력을 키워준 걸까. 구글링을 다시 한 건 똑같았지만 타고 들어갈 때마다 어쩐지 익숙한 링크들ㅋㅋ 이미 지난 삽질들을 통해 한 번씩은 봤던 내용들이어서 그랬나 보다. 몇 번 시도해 보니 생각보다 금방 해결되었다. 왠지 다음 번에는 더 잘 할 수 있을 거라는 자신감이 생겼다. 하지만 과연?
  • sso는 사실 어떤 걸 언제까지 해야 하는지는 확실하지 않지만 어쨌든 해야 하는데 안 되어 있는 건 맞고 지난주에 승진님과 확인했던 피그마의 디자인에 맞게 로그인 페이지를 고쳤다. 운명의 장난처럼 매우 공교롭게도 이번 작업 역시 주로 다이얼로그였다. 기본 포맷이 될 거라고 예상했던 디자인을 벗어난 다이얼로그는 css를 다시 손보고, 이메일을 보낸 후에 타이머를 작동시켜서 60초 카운트다운이 완료되면 재전송이 가능하도록 기능을 추가했다. vuetify 하나 빠졌다고 이렇게 수월할 수가...내가 잘 못 다루는 게 맞겠지만 없는 게 마음은 편-안
  • 오늘은 신나는 월요일이니 지완님과의 원온원이 있었다. 항상 이렇게 가볍고 시시콜콜한 얘기로 시작하는 게 좋다. 입도 트이는 기분, 이건 마치 준비운동. 컴퓨터 전공이 아닌 심지어 문과 출신 나로서는 하드웨어 쪽 지식이 전혀 없는 게 가끔 너무 장벽처럼 느껴져서 어떻게 공부를 하면 좋은지 여쭤봤더니 Rust, C, C++ 같은 low-level 언어를 공부하는 것을 추천해 주셨다. 하드웨어 자체에 대한 지식보다는 하드웨어와 소프트웨어가 어떻게 연결되는지, 소프트웨어가 하드웨어를 어떻게 이용하는지 그런 방식들을 이해하는 게 더 필요하고, low-level 언어를 공부하면 자연스럽게 그런 부분을 알 수 있을 거라고 하셨다. 공부할 거 원래 많았지만 더 늘었어!

오늘 배운 것

  • sso의 로그인 페이지 다이얼로그에 사용자가 이메일을 입력하고 제출했을 때 이메일 주소에 대한 유효성 검사를 하는데, 피그마에 따르면 검사 결과 에러 메시지를 띄운 후에는 전송 버튼을 비활성화 해야 한다. 이 전송 버튼은 사용자가 다시 이메일을 수정하면 활성화 되는데 이때 사용자의 입력 값을 watch로 보고자 했다. reactive object의 한 속성만 따로 watch에 넘길 수는 없고, getter function을 사용해야 한다.
 

Watchers | Vue.js

 

vuejs.org

  • 그런데 기존의 이메일과 새로운 이메일의 값을 비교해서 쓸 일이 전혀 없기 때문에 watchEffect를 써도 무방할 것 같은데 이건 내일 한 번 해봐야겠다.
 

[Vue.js] watch와 watchEffect의 차이

watch : 특정 데이터가 변경되었을 때 실행, 새로운 데이터와 이전의 데이터를 가져옴 (lazy)watchEffect : 의존성이 있는 데이터에 대해서 즉각적으로 실행 (immediately)특정 반응 속성을 보고 싶거나, old

velog.io

 

오늘 한 일

  • 간밤에 개발자의 탈을 쓴 QA 상현님이 갑자기 vms sign-up이 안 된다고 했다. 상황을 보니 진짜 안 된다. 처음에는 db 환경 문제인 줄 알았는데 나도 똑같은 상황을 만들어 돌려보니 안 됨. 응 db 아니야
  • 회원가입 페이지 자체는 내가 작업한 게 아니었지만, 회원가입 버튼을 누르면 뜨는 다이얼로그는 내가 작업한 거였다. 그리고 다이얼로그 UI와 다이얼로그를 오픈하는 방식 자체를 변경하면서, 페이지 컴포넌트가 가지고 있는 sign-up 관련 함수들을 건드린 것도 당근 나였다. 원인을 찾기도 전에 엄습하는 불안감
  • 원래 sign-up 관련 로직은 컴포넌트 내에서 단 하나의 함수 안에 전부 다 묶여서 들어가 있었다. 하지만 중간 어느 시점에 다이얼로그를 띄우고, 또 그 다이얼로그에서 입력하는 내용에 맞게 후속 조치가 이루어지는 등 적당한 처리가 필요했기 때문에 나는 그 함수를 여러 개로 쪼개 놓은 상황이었다.
  • 그런데 말입니다... vms에 회원가입을 할 때 휴대폰 번호를 넣으면 휴대폰으로 인증 코드가 발송되는데(이게 바로 내가 밴 당했던 그 절차), 이게 특정 조건 하에서 내부 직원이냐 아니냐를 판단할 수 있게끔 분기가 되어 있다. 하지만 바보 같은 나는 직원이 아닌 일반 유저를 가정하고서만 테스트를 진행했고 내부 직원인 경우는 생각을 안(?덜?) 했기 때문에, 직원인 경우에는 아무 코드도 넣어놓지 않아서 그 어떤 함수도 실행되지 않게끔 해 놓은 거였다. 응 db 아니고 너야 심지어 직원인 경우에 쓰려고 바로 아래 라인에 함수도 따로 만들어 놓은 상태였다...ㅠㅠ 함수를 만들었는데 왜 쓰지를 못하니
  • 이로써 긴급히 올린 pr에 추가된 코드는 단 한 줄뿐이었다. 코미디
  • 착잡한 마음으로 안도하며 잠든 후 일어난 아침에는 케이님과의 원온원이 있었고, 케이님이 사실은 이 글을 모두 읽고 계셨다는 엄청난 소식을 접했고, 주니어 각자에게 맞는 방식이 다 다를 수 있고 원한다면 sso 작업을 계속 하는 것도 괜찮다는 말씀을 들었다. 거기에 더해서 아직 잘은 모르지만 평소 관심 있었던 스벨트 공부+실습도 병행하기로 했다. 🥰
  • 원온원이 끝나자마자 승진님한테 허들을 신청했다. 처음에는 팀에서 sso를 어떻게 하기로 했는지를 조심스레 여쭤보며 시작했지만, 결과적으로는 '그럼 제가 할래요'가 되었다ㅋㅋㅋ
  • 결론: 신난다 신나 🥰

지금까지 한 일

  • 내 휴대폰 번호 밴 당해서 더 이상 인증 코드 수신을 할 수 없었던 문제는, 브라우저에서 아무 번호에나 문자를 보내 놓고 mysql db에서 verifications 테이블을 찾아서 내가 입력한 번호에 날아간 코드를 보고 다시 브라우저에 입력하는 방법으로 해결했다. 편법인가 아무튼 밴 당해도 작업을 계속 할 수 있어서 속이 다 시원했다.
  • 그리고 지난 금요일 타운홀 미팅에서 대격변이 일어났다. 팀 개편에 대한 공지가 있었고, 더욱 놀라운 것은 당장 그 효력이 월요일부터 발생한다는 것이었다. 줌 채팅창 웅성거림 잊지 못해 금요일이라 휴가 가신 분들도 많았는데 아무튼 다소 혼란했다. PO와 lead developer만 확정이고 나머지 인원 풀은 언제든지 변경될 수 있다는 게 골자였지만 사실상 변동이 있을 이유는 없는 것 같았다.
  • 그리고 나는 다시 새 세이브 슬롯으로 새 게임 시작하듯 태초마을로 돌아가게 되었다. 생각해 보니 태초마을에서 일찍 나왔었는데 역시 어느 정도 기간을 채워야만 하는 걸까.
  • 태초마을 이동을 앞두고 작업을 거의 완료(라고 말한 지가 너무 오래..)한 vms UI 변경 작업을 마무리하고, 어제 드디어 메인 브랜치에 머지했다. 또, sso에서는 명색이 패스워드 리셋 페이지인데 보니까 비밀번호 확인 입력란도 없어서 급히 추가해서 다시 올렸다. 무슨 일이 있어야만 박차가 가해지는 걸까.. 막판 스퍼트
  • 입사 후 처음으로, 실제로는 처음 뵙는 케이님과 원온원(대면식?ㅋㅋ)을 했다. 앞으로 태초마을에서는 지금 당장 어떤 업무를 처리하는 데 있어서는 다급히 필요하지 않을 수도 있겠지만 길게 보면 개발자로서는 당연히 알아야 하거나, 기존에 운영 중인 서비스들의 흐름을 파악할 수 있는 교육적인 업무 위주로 처리하게 될 예정이라고 말씀해 주셨다. 어떤 일을 하고 싶냐고 물어보셔서, 백엔드를 안 하지는 않겠지만 아직은 프론트엔드 쪽을 계속 해 보고 싶다고 말씀드렸다. 너무 일반적이었나..
  • 멘토이신 지완님과 두 번째 정기 원온원을 진행했다. 다음 일정이 갑자기 앞뒤로 시간이 늘어나 버려서 예정보다 짧게 마무리 해야 해서 조금 아쉬웠다. 원온원 때 나눌 얘기들을 문서로 대강 정리해놨었는데, 시간이 짧다 보니 신변잡기 같은 가벼운 주제들만 다뤘다. 하지만 여전히 신나 재밌어 짱이야 🤩
  • 태초마을 신규 이주민으로서 tva팀 레트로 워크샵을 참관했다. tva팀이 무슨 팀인지 다른 사람들이 확실하게 알 수 있어야 한다는 얘기도 나왔었는데, 그런 의미에서 나도 tva팀의 역할이 뭔지를 워크샵에서 내용을 듣고 나서야 파악할 수 있었다. 그간 마블의 tva가 뭔지 아니까 이런 일을 하는 팀이겠거니 어렴풋이 예상만 하고 있었을 뿐이었다. 비록 미로 보드의 방대한 로드맵을 보고는 헉 했지만, 그래도 입사하자마자 접할 수 있었다면 전체적인 그림을 파악할 때 훨씬 도움이 되지 않았을까 싶다. 승진님의 강력 추천 덕분에 워크샵 후에는 tva팀의 회식에도 꼈다.
  • 오늘은 어제에 이어 tva 워크샵을 참관했고, 그 이후에는 승진님과 어제까지 있었던 일들을 기반으로 해서 지금까지 sso에서 진행된 프론트엔드 쪽 상황과 앞으로 sso의 소속과 관련한 향방에 대해 얘기를 나눴다. 마음 같아서는 아직 하다 만 느낌이라 완성도가 높아질 때까지 sso 작업에 계속 참여하고 싶은데 갑자기 상황이 이렇게 된 점이 아쉬웠다. 기존 서비스와 달리 완전히 바닥에서부터 쌓아나가는 코드라 자유롭게 통제할 수 있다는 게 좋았는데 결국 이 마음을 접어야 하는 걸까ㅠㅠ

+ Recent posts