서울시 프로젝트를 끝내고 곧장 4대 은행 중 하나의 은행 프로젝트에 투입됐다. 대략 11월 말부터 3월 초까지 수행했다. 간략히 프로젝트를 소개하면 해당 은행의 계좌와 카드를 가진 대학생 고객을 대상으로 3D 메타버스 콘텐츠와 해당 대학들의 주요 정보 안내 그리고 NFT를 활용한 서류 발급 기능 등을 포함한 모바일 학생증 앱이다. 여기서 나는 React를 사용하여 네이티브 앱과 통신하는 웹화면을 개발했다. 화면은 모바일 기준인 반응형 웹을 채택했다.
개발에 사용한 언어는 Typescript이고, 주로 사용한 스택은 전역상태관리를 위한 Recoil과 스타일을 위한 css in js 툴인 styled-components를 사용했다.
사실 많은 스트레스를 받고 고생을 많이 했는데, 경험이 부족한 상황에 많이 상황적으로나 환경적으로 어려운 프로젝트에 투입되어서 그랬다. 그렇게 고생을 하고 나니 사실 내가 개발자로서 많이 성장했음을 느끼고 있다.
먼저, React와 프론트엔드 개발에 대한 전체적인 기술적 상향이 있었다. React를 사용하는 전체적인 숙련도가 한, 두 단계 이상 성장할 수 있었다. 예를 들어 Recoil을 통해 전역 상태관리를 능숙하게 하게 되었고, 이를 통해 custom hook을 만들어서 사용하는 등의 프론트개발의 맥락을 좀 더 깊게 이해하게 되었다. 네이티브와의 통신과 WAS서버의 API를 통한 통신들을 경험함으로 데이터를 주고받는 것에 많이 능숙해졌다.
또 Typescript를 기본 언어로 채택함으로써 익숙하지 못했던 Typescript가 많이 익숙해졌다. 그리고 퍼블리셔가 있긴 했지만 프로젝트 도중 이탈하는 상황이 생겨 그 후로부터는 figma 디자인을 통해 자체적으로 퍼블리싱을 해야 했다. 그로 인해 html과 css의 전반적인 이해도를 상향시킬 수 있었다.
마지막으로 대규모의 은행이라 보안이 아주 까다로운 환경의 프로젝트를 경험함으로써 보안에 대한 다양한 툴들을 경험할 수 있었다. 직접적으로는 디아모를 사용하여 url을 암호화하거나 토큰 인증, HMAC을 사용하여 통신하는 데이터를 암호화하는 등의 작업 그리고 개발, 검증, 운영으로 배포하는 절차 등을 경험했다. 간접적으로는 DMZ, WAF, LB 등과 외부망과 내부망을 분리하는 인프라적인 것들이 있다. 또 대규모의 프로젝트로 외부부터 DB까지 연결하는 구성 방식, 그리고 쿠버네티스를 사용한 서버 구성 등을 간접적으로 보면서 앱이 어떻게 구성되고 배포되는지를 보고 배울 수 있었다.
분명 고생이 많았던 프로젝트가 틀림없다. 야근도 자주 하고, 여러 상황과 환경으로 인해 비교적 아주 짧은 시간에 구축을 해야 하다 보니 체력적으로나 감정적으로 아주 힘든 프로젝트였다. 그러나 구축이 끝이 나고 지금은 이 프로젝트의 SM으로 운영을 하는 입장에서 되돌아보니 많은 것을 배운 프로젝트가 되었다. 당분간은 SM으로 워라밸을 지켜나가며 업무를 보겠지만 기회가 되면 언제든 다시 SI 프로젝트에 투입되어 성장과 성취감을 느껴보고 싶다.
'프로젝트' 카테고리의 다른 글
반응형 웹페이지 만들기 (0) | 2023.04.17 |
---|---|
[운영] lazy와 suspense를 활용한 렌더링 속도 최적화 (0) | 2023.04.10 |
[개인 프로젝트] Agora (0) | 2022.09.28 |
[개인 프로젝트] Cafe (0) | 2022.09.27 |
[프로젝트] TDquest (0) | 2022.07.07 |