기술근황

올해는 참 여러가지 기술을 쓰고 경험해본다. 그만큼 잡일을 많이 한다는거겠지? 형이랑 만드는 오늘질문만 해도 웹클라이언트 앱클라이언트를 다 만들었고 또 웹클라이언트는 Pure 에서 Vue로, 이제 다시 플러터로 만들 생각을 하고 있다. 앱클라이언트는 유니티로 만들었다 플러터로 바꾼 상태. 웹클라이언트 실시간 연동을 위해 웹소켓 서버를 직접 서비스하다 Ably로 갈아타고 다시 수파베이스로 바꿨다.

백엔드도 여러번 갈아엎고 노드서버는 이제 API만, 인증은 수파베이스, 디비는 Neo4J로 쓰다가 플러터에 일부 수파베이스 기능을 사용하고 어드민은 리툴과 기존 노드서버에 GraphQL를 올리는걸로 마무리했다.

회사에서는 내가 무슨 일을 하는 사람일지 모를 정도인데, 유니티로 모바일과 웹에 익스포트하는 게임 개발과 게임플랫폼 역할을 하는 SDK, 그리고 다중 게임을 지원하는 게임서버까지 만들고 있다. 지난 모바일 게임은 수파베이스와 노드서버, 지금은 노드서버에 포스트그리 디비를 쓰고 Vercel에 웹빌드가 올라가도록 자동화 해 놓은 상태이다. 서버는 기본서버+게임 특화 서버로 나뉘는데 관리 편의를 위해 모노리포에 기본서버는 패키지로 개발해서 배포했다. 플러그인 식으로 외부 소스를 받아 게임서버로 서비스가 가능하게 만들었다.

인증도 인증이지만 이제 토큰관리가 익숙한것이 올해 많이 배운 점이고 게임은 지금까지 경험을 살려 필요한 모듈들을 독립된 패키지로 만들어 정리하고 있다는것이 또 하나 크게 변한 점이다.

확실히 스스로 경력이 있어서 그런지 구현자체는 쉽게쉽게, 대신에 모듈별 독립성과 재사용성을 최대한 고민해서 똑같은 일은 두 번 하지 않겠다는 의지를 보여주고 있다. 이렇게 만든 모듈들은 유니티 에셋스토어에 팔고 있는데 아직 몇개 안되지만 내 추가적인 노력에 조금이라도 보상을 받는것 같아 기분이 좋다.

이 시간이 계속 되면 내가 재사용하고 조립할 수 있는 모듈이 쌓이고 이는 내가 구현하고자 할 제품의 구현 속도나 완성도를 크게 올려줄 것이라 기대한다. 이미 약 4년여 전부터 준비하고 실행하던 것들인데 이제 조금씩 결실을 보는것 같다.

다방면으로 배우는 기술들은 내가 상상할 수 있는 한계를 늘려준다. 그냥 게임을 만들어볼까가 아닌 이런저런 서비스나 하고자하는 목표를 더욱 다양한 방향에서 설정할 수 있게 되고 최적의 솔루션을 생각해 내는데 중요한 역할을 한다.

유니티 만큼이나 플러터에 익숙해진것도 있고 고도엔진은 크게 적응하기 어려운건 아닌데 아직은 신나서 손대볼 만큼 매력적이지도 않다. 사실 어떤 기술을 쓰느냐 보다 무엇을 만드느냐에 관심이 더 있는 이유도 있다.

그래서 올해 하나의 모바일 서비스 앱을 출시하고 개선해가고 있으며 몇가지 에셋을 스토어에 출시했고 또 출시할 예정이다. 나의 개인적인 시간을 투자해 가시적인 성과를 보인게 정말 오래간만이라 좋기도 하지만 그 어느때 보다도 바쁘고 다른 일들을 해야했던 올해, 저 일들까지 하느라 힘들지 않았다면 거짓말이겠지.. 정말 힘들었고 또 그만큼 더 지쳐버렸다.

어쩌면 내가 만든 무엇으로 일반인을 상대로 처음 돈을 벌어보는 것인데 아직 액수는 크지 않아도 가장 기분 좋았던 경험으로 기억하게 될 것 같다.

이제 당분간은 플러터로 서비스앱 개선과 다른 서비스 앱 개발, 유니티로 에셋과 게임 개발을 개인 프로젝트로 병행할것 같다. 백엔드는 가능한 노드+타입스크립트+포스트그리+수파베이스+Neo4J+Ably 조합으로 진행할 예정이다.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.