노코드(No Code)에 대해서 들어보셨나요? 노코드 개발 플랫폼은 시각적 요소 및 드래그 앤 드롭을 통해 코딩 없이 프로그래밍을 할 수 있도록 도와주는 플랫폼입니다. 적은 비용으로 빠르게 개발할 수 있다는 장점이 있지만, 아직은 성능이나 확장성 면에서 한계가 있어 특수한 경우가 아니라면 잘 사용되지 않고 있습니다. 저 역시 노코드 플랫폼을 쇼핑몰이나 랜딩 페이지, 심리 테스트 등의 템플릿을 제공하는 서비스 정도로 생각하고 있었습니다. 그러던 중 국내 백엔드 노코드 개발 솔루션인 싱크트리(SyncTree)에 대해서 알게 되었고, API 형태의 노코드라는 점에 흥미가 생겨, 공식 무료 강의를 통해 더 자세히 알아보았습니다👀
배민도 사용한다고? 환경설정 없는 백엔드 노코드 개발!🔽
SyncTree🔽
- Apps: 블록 코딩 형태의 API인 BizUnit을 App으로 그룹화하여 관리
- Proxy: 생성하여 외부에 공개된 BizUnit을 호출하는 엔드 포인트 경로를 정리
- Credential: 특정 API를 인증된 사용자만 호출할 수 있도록 인증키를 관리
- Dictionary: Dev / Stage / Production 각각의 단계에서 값을 다르게 설정
- Storage: 다양한 DB (MySQL, Oracle, PostgreSQL..) 연동을 등록 및 관리
- Query Manager: DB를 컨트롤하는 쿼리문과 프로시저 구분을 등록 및 관리
- Portal: API 명세를 간편하게 포탈에 업로드해 공유 및 포탈 사용자 관리
한 시간 정도의 강의를 통해 싱크트리가 노코드 개발 플랫폼의 기능적 한계를 넘기 위해 정말 많은 노력을 했다는 것이 느껴졌습니다. 블록 코딩 또한 변수와 자료형, 로직 구현과 에러 핸들링까지 세세하게 설정된 블록이 있어 기능 구현의 자유도가 상당히 높았습니다. 원한다면 예외 사항에 대한 방어 코드, Request 값에 대한 유효성 검사, 트래픽 제한 설정, 인증을 통한 API 접근, 버전 상태 관리 등 세부적인 설정도 가능하며 클라이언트 및 외부 DB와의 연동 역시 자유로웠습니다. 개발 환경 설정을 신경 쓰지 않아도 되는 것 또한 큰 장점이고 API 문서 및 여러 확장 기능을 올인원으로 관리해주는 것 또한 매력적입니다.
하지만 역설적으로 이러한 특징 탓에 프로그래밍을 아예 모르는 사람이 바로 사용하기에는 많은 배경 지식을 요구했고, 블록 코딩의 형태도 기능이 복잡할수록 실제 코드를 치는 것과 비슷하게 난이도가 올라가는 느낌이 들었습니다. 또한 보편적으로 사용되는 개발 프레임워크와 비교하면 커뮤니티 파워는 물론이고 성능이나 확장성 면에서 한계가 있을 수밖에 없습니다. AI의 발전으로 그 어느 때보다 개발 생산성이 올라가고 있는 지금, 특수한 목적에 있어 노코드 개발 플랫폼의 생산성을 활용할 수 있는 상황인지 판단하고 사용하는 것이 중요한 것 같습니다🤔