핑거 | 개발자와 비개발자의 협업툴

개발계의 테슬라인 스벨트로 앱을 만들어야 하는 이유
2023-02-17

지금까지 20년의 개발 경력 동안 수많은 언어와 프레임워크를 사용해보고 나서, 현재는 현존하는 최고의 기술이라고 생각하는 스벨트로만 개발을 하고 있습니다.

제가 사용해본 프레임워크와 언어는 다음과 같습니다. 자세히 보실 필요는 없고 이런 게 있나보다 하고 훑어보시면 됩니다

컴퓨터 전공생 시절에는 어셈블리, C, C++ 등을 다뤘고 오래 전에 ASP, C#, PHP, ActionScript도 사용했으며 네이티브 언어로는 자바, 코틀린 오브젝티브C, 스위프트를 사용하고 있고 백엔드 언어로는 파이썬, 루비, 백엔드 프레임워크로는 장고, FastAPI, 레일즈, 그리고 현재 프론트엔드 프레임워크로 리액트, 앵귤러, 뷰, 스벨트까지 사용해보았습니다. ​꽤 오랫동안 깊게 사용한 기술도 있고 필요할 때만 잠깐 배워 사용한 기술도 있습니다

​인썸니아는 2020년까지 루비라는 언어와 레일즈라는 프레임워크만을 사용해서 개발해왔는데요. 루비온레일즈는 쉽고 개발이 빨라 개발 생산성이 높았지만 루비라는 언어가 유행이 지났고 개발자 풀이 적다는 단점이 있었습니다

​저희는 개발자들을 직접 교육을 하면 되었지만 고객사는 프로젝트를 인수인계 받아 개발을 하려면 개발자 채용이 쉽지 않다는 단점이 있었습니다.

​저희는 2021년에 기술 스택의 변경을 위해

리액트와 Next.js, 파이썬의 장고와 FastAPI, 노드 계열의 MVC 프레임워크인 Nest

등을 리서치하고 해당 기술을 원하는 고객사의 프로젝트를 수주해 개발하면서 향후 어떤 기술을 결정해 집중할지 고민하였습니다.

​그러다가 스벨트라는 자바스크립트 기반의 웹 프레임워크를 테스트해보고 그 간결함과 성능, 장래성, 개발자들의 선호 등을 발견하게 되었고 자체 플랫폼인 '핑거'도 스벨트로 개발해보면서 전사적으로 스벨트를 도입하게 되었습니다.

​2022년 부터 착수한 모든 고객사 프로젝트는 스벨트로 진행되고 있습니다. ​글로벌 개발자 커뮤니티인 스택오버플로우에서 진행한 설문조사에서 가장 사랑받는 프레임워크로 리액트, 뷰, 스프링, 앵귤러 등을 제치고 스벨트가 1등을 하였습니다

간혹 스벨트가 새로운 프레임워크여서 스벨트를 할 줄 아는 개발자를 채용해야 하는 게 아닌지 걱정하시는 고객사도 계신데요. 스벨트는 리액트, 앵귤러, 뷰 등 기존 프론트엔드의 단점을 획기적으로 개선한 프레임워크이고 리액트/앵귤러/뷰를 사용해온 개발자라면 몇 시간이면 스벨트의 개념을 이해하고 바로 사용할 수 있습니다

속도도 리액트나 앵귤러, 뷰보다 훨씬 빠릅니다. 새로운 프레임워크이지만 전 세계와 우리나라에 개발자 비중이 가장 높다고 하는 자바스크립트 기반이므로 스벨트를 이용할 수 있는 개발자가 적은 것이 아니라 자바, PHP, 파이썬, 루비 등 다른 언어 개발자보다 자바스크립트 개발자가 훨씬 많기 때문에 개발자 채용과 인수인계에는 문제가 없습니다

​심지어 리액트 개발이 서툰 사람도 스벨트에서는 더 잘 개발할 수 있습니다. 마치 클러치를 밟아야 하는 수동 자동차를 타다가 자동 제동으로 브레이크를 밟을 필요도 없는 테슬라를 타는 것과 비슷합니다.

​수동을 탈 줄 안다면 테슬라를 타는 데는 연습도 필요 없고 운전도 더 재미있고 더 안전하게 할 수 있거든요. 더 빠르기도 하고요. 1종 보통으로 수동 기어의 트럭으로 면허를 땄던 제가 현재는 테슬라를 타고 있어서 이런 차이를 분명히 체감하고 있습니다

스벨트 창립자인 리치 해리스가 설명하는 영상들에서 보면 그는 왜 스벨트의 컴파일러 구조가 리액트의 런타임 구조보다 훨씬 간결하고 효율적이고 동작이 빠른지를 설명하는데요, 스벨트의 구조에 대해서도 테슬라와 내연기관차의 비유를 들어서 말합니다.

테슬라가 기존 내연기관차보다 훨씬 단순한 구조여서 부품이 훨씬 적게 들어가서 고장도 적게 나고 점점 생산 단가도 낮아지고 만드는 속도도 빠르고 달리는 속도도 빠른데 스벨트의 컴파일러 구조가 리액트의 가상돔 구조보다 빠를 수밖에 없는 이유를 비교해서 설명합니다.

또 리액트와 함께 사용하는 대표적인 SSR(서버사이드렌더링)이자 백엔드 프레임워크인 Next.js(넥스트제이에스)를 Vercel(버셀)이라는 글로벌 클라우드 업체에서 출시해서 전세계 개발자들이 이용하고 있는데 몇 달 전에 Vercel이 스벨트 창립자인 리치해리스를 영입하면서 본격적으로 스벨트가 발전하기 시작했습니다.

​스벨트라 리액트를 대체하게 될지는 두고봐야 하겠지만 스벨트의 인지도나 실사용율은 앞으로가 더 기대되는 것이 사실입니다.

​저희는 가장 효율적인 언어이면서개발자가 좋아하고 대세가 될 것이라 기대하는 스벨트를 따끈따끈할 때 전격 도입해서 핑거와 고객사 프로젝트를 만들고 있습니다

​웹서비스는 스벨트로 만들더라도 아이폰/안드로이드앱은 네이티브 언어로 만들어야 하지 않냐고 질문하신다면, 절반은 맞다고 볼 수 있습니다. 저희는 모바일앱을 효율적인 하이브리드앱 방식으로 개발하기 때문에 대부분의 코드를 스벨트로 제작하고 푸시 수신과 앱 패키징 작업 등 약간의 코드만 네이티브 코드를 사용하고 있습니다

다른 아티클 보기