안녕하세요, RX SOFT PM팀의 이승민 본부장입니다. 경력요? 글쎄요, 이 바닥에서 잔뼈 굵다 보니 벌써 15년이 훌쩍 넘었네요. 그동안 수많은 프로젝트의 시작과 끝을 함께했지만, 이번 다산에듀 e-Book 플랫폼 개발은 유독 기억에 남습니다. 왜냐고요? 단순한 'e-Book 뷰어'를 넘어, 학습자들이 직접 참여하고 소통하는 '살아있는 디지털 학습 공간'을 만들어내는 과정 자체가 한 편의 드라마였거든요. 커피 한 잔 들고 옆에 앉은 동료 개발자나 예비 창업자 분들에게 썰 풀 듯, 그 흥미진진했던 여정을 지금부터 시작해볼게요.
**0. '그냥 책 보는 앱'에서 '인생을 바꾸는 플랫폼'으로: 프로젝트 수주, 그 시작은 언제나 설렘과 압박 사이**
언제나 그렇듯, 프로젝트의 시작은 한 통의 문의 전화와 함께 찾아옵니다. 다산에듀 측에서는 기존의 교육 콘텐츠를 디지털화하여 더 많은 학습자에게 효율적으로 전달하고 싶다는 포부를 밝혀왔죠. 처음에는 꽤나 간결한 요구사항이었어요. "학습자들이 PC나 모바일에서 교재를 편하게 보고, 중요한 부분에 밑줄 긋는 정도만 되면 좋겠어요." 흠, '간결'이요? 우리 RX SOFT에게 '간결'은 언제나 '깊은 고민의 시작'이라는 거, 이제 다들 아시죠?
저희는 곧바로 다산에듀 측과의 첫 미팅을 준비했습니다. 저희는 단순한 개발사가 아니라, 고객의 비즈니스를 함께 키워나가는 '컴퍼니빌더' 마인드를 가지고 있잖아요? 그래서 저희는 '그냥 책 보는 앱'이 아닌, 다산에듀의 교육 철학을 담아낼 수 있는 '플랫폼'에 초점을 맞췄어요. 시장 조사부터 시작해서 경쟁사 분석, 타겟 유저 페르소나 설정까지… 저희 UI/UX본부 임정민 본부장님과 기획팀 박범수 팀장님은 이미 초기 미팅 전부터 머리를 맞대고 있었죠.
첫 미팅 자리에서 저희는 몇 가지 핵심 질문을 던졌습니다. "학습자들이 왜 종이책 대신 e-Book을 사용해야 할까요?", "어떤 경험이 학습 효과를 극대화할 수 있을까요?", "다산에듀만의 차별점은 무엇이 되어야 할까요?" 이 질문들을 통해 우리는 다산에듀가 원하는 것이 단순히 '책을 스캔해서 올리는 것'이 아님을 직감했습니다. 그들은 학습자들에게 '새로운 학습 경험'을 제공하고 싶어 했고, 저희 RX SOFT는 그들의 잠재된 니즈를 끄집어내는 데 주력했습니다.

보시다시피, 이미지 속 이 화면들은 단순히 책을 펼쳐놓은 모습이 아니잖아요? 홈 화면부터 내 서재, 도서관, 그리고 우측에 보이는 펜 설정 화면과 영상 강의 화면까지. 이 모든 것이 한 번의 미팅으로 뚝딱 나온 결과물이 아닙니다. 수도 없는 논의와 스케치, 그리고 때로는 불꽃 튀는 아이디어 싸움 끝에 탄생한 겁니다.
**1. '여기저기서 본 좋은 기능 다 합쳐주세요!' 고객의 무리한 요구, 우리의 멘붕과 성장통: 기획과 디자인의 줄다리기**
초기 기획 단계에서 다산에듀 측에서 이런 말씀을 하셨어요. "저희가 여러 교육 플랫폼을 둘러봤는데, A사의 이 기능은 참 좋고, B사의 저런 기능도 너무 마음에 들어요. 이걸 다 저희 플랫폼에 담아낼 수 있을까요?" 솔직히, PM으로서 가장 심장이 쫄깃해지는 순간 중 하나입니다. 고객의 '마음에 든다'는 한마디 뒤에는 보통 엄청난 개발 공수가 숨어있다는 것을 너무나 잘 알고 있으니까요. 특히, 단순히 '읽는' 것을 넘어 '능동적인 학습'을 위한 기능들이 계속 추가되기 시작했습니다. 밑줄, 형광펜, 메모는 기본이고, 여러 종류의 펜 설정 (두께, 색상, 불투명도), 심지어는 이미지 위에 그림을 그리거나 스티커를 붙이는 기능까지!
저희 기획팀 박범수 팀장님과 디자인팀 조수현 팀장님은 이 요구사항을 듣고 잠시 망연자실한 표정을 지었지만, 이내 특유의 '할 수 있다!' 마인드로 무장했습니다. 특히 가장 큰 난관은 '사용자 친화적인 인터페이스'로 이 모든 복잡한 기능을 담아내는 것이었죠. 보통 이런 기능이 많아지면 UI가 지저분해지거나 사용하기 어려워지는 경우가 많거든요.
***에피소드 1: "책 위에 연필로 그리는 그 느낌, 디지털로 구현해주세요!"***
어느 날, 고객 미팅 자리에서 다산에듀 담당자분이 손가락으로 허공에 뭔가를 쓱쓱 그으시며 말씀하셨어요. "저희가 원하는 건, 종이책에 직접 연필이나 형광펜으로 밑줄 긋고 메모하는 '그 느낌' 그대로입니다. 디지털이라고 해서 이 경험이 덜해서는 안 돼요. 특히, 필기감이 좋아야 합니다!"
이게 말처럼 쉬운 일이 아니거든요. 디지털 환경에서 실제 필기감을 구현한다는 건, 단순한 그래픽 처리 이상의 기술적인 깊이를 요구합니다. 디자인팀은 수십 개의 레퍼런스를 뒤지고, 실제 펜과 태블릿으로 그림을 그려보며 필기감을 연구했습니다. 필압 감지까지는 아니어도, 최소한 실제 펜으로 그리는 듯한 부드러운 곡선과 즉각적인 반응 속도를 만들어내기 위해 엄청난 시안을 쏟아냈죠.
-copy.webp)
초기 디자인 시안은 그야말로 전쟁터였습니다. 필기 도구 팔레트를 어디에 둘지, 펜 종류는 몇 개나 제공할지, 색상 팔레트는 어떻게 구성할지 등등. 조수현 팀장님은 밤늦게까지 "학습자가 필기하는 도중에 불편함을 느끼지 않으려면 어떻게 해야 할까?"를 고민하며 수십 번씩 UI를 갈아엎었습니다. 고객과의 수많은 피드백과정을 거쳐, 최소한의 터치로 최대한의 기능을 활용할 수 있도록 직관적인 '펜 설정' UI를 만들어냈습니다. 이미지에서 보셨겠지만, 펜 종류, 두께, 불투명도, 색상까지 세밀하게 조절할 수 있도록 아주 깔끔하게 정리되었죠. 이건 단순한 '디자인'이 아니라, '학습 경험 디자인'에 대한 RX SOFT의 집착에 가까웠습니다.
**2. '이게 된다고?' 기술적인 멘붕과 RX SOFT 베테랑들의 진가: 개발 과정의 리얼리티**
기획과 디자인이 어느 정도 윤곽을 잡아가자, 이제 개발본부의 장원찬 본부장님 지휘 아래 프론트팀 류현광 팀장님과 백엔드팀 박재현 팀장님, 그리고 100명이 넘는 저희 RX SOFT의 베테랑 개발자들이 투입될 차례였습니다. 프로젝트명 '다산에듀 e-Book 플랫폼'의 태그에 'Next.JS, React, 앱'이 명시되어 있듯이, 저희는 최신 기술 스택을 적극적으로 활용하여 최고의 퍼포먼스와 유연성을 확보하려 했습니다. Next.JS로 웹 기반의 강력한 플랫폼을 구축하고, React Native를 활용하여 iOS와 Android 앱을 동시에 개발하는 전략이었죠.
***에피소드 2: '수십 페이지 넘는 책에 자유자재 필기, 게다가 버벅이지 마세요!' 미션 임파서블?***
가장 큰 기술적 난관은 바로 '대용량 e-Book 콘텐츠 위에서 부드럽게 동작하는 필기 기능'을 구현하는 것이었습니다. 단순히 그림을 그리는 것에서 그치지 않고, 그 필기 내용이 페이지를 넘겨도 유지되고, 나중에 다시 접속했을 때도 완벽하게 복원되어야 했으며, 심지어 다른 기기에서 접속해도 동기화되어야 했으니까요. 프론트팀은 이 문제를 해결하기 위해 고군분투했습니다.
처음에는 웹 Canvas API를 직접 사용하여 필기 기능을 구현했는데, 몇 페이지 이상 넘어가거나 복잡한 필기가 쌓이면 미묘하게 딜레이가 생기는 문제가 발생했습니다. "고객은 연필의 부드러움을 원했는데, 이건 꼭 크레파스로 그리는 느낌이잖아!" 류현광 팀장님의 한탄이 들려왔죠. 특히 대용량 PDF 문서 위에 수많은 필기 데이터를 얹고, 그걸 실시간으로 랜더링하며 페이지를 전환하는 과정에서 메모리 사용량이 치솟아 앱이 버벅이는 현상까지 나타났습니다. 멘붕이었죠.
이때 저희 백엔드팀 박재현 팀장님은 데이터 처리 효율성에 주목했습니다. 필기 데이터를 이미지 파일로 저장할 것이냐, 벡터 데이터로 저장할 것이냐, 어떤 포맷으로 서버에 전송하고 클라이언트에서 불러올 것이냐. 이 작은 결정들이 엄청난 퍼포먼스 차이를 만들 수 있었거든요. 결국, 저희는 필기 데이터를 단순한 픽셀 정보가 아닌, SVG(Scalable Vector Graphics) 경로 데이터로 저장하고 관리하는 방식을 채택했습니다. 벡터 기반이라 확대/축소해도 깨지지 않고, 데이터 용량도 훨씬 효율적이었죠.
프론트팀은 React Native의 강력한 컴포넌트 생명주기와 최적화 기법을 활용하여 Canvas 렌더링을 획기적으로 개선했습니다. 불필요한 리렌더링을 최소화하고, 가상 돔(Virtual DOM)의 이점을 최대한 살렸습니다. 며칠 밤낮으로 디버깅하고 벤치마킹한 결과, 마침내 "오, 이거 진짜 연필로 그리는 것 같은데?"라는 감탄사가 터져 나올 정도의 부드러운 필기감을 구현해냈습니다. 이 순간의 희열이란! RX SOFT 개발자들이 괜히 '베테랑' 소리를 듣는 게 아니라고요. (자랑 좀 했습니다. 흐흐)

이 외에도, e-Book 내부에 영상 강의를 삽입하고 플레이어가 자연스럽게 작동하도록 만드는 것도 큰 과제였습니다. 단순히 영상을 임베드하는 것을 넘어, 영상 시청 중에도 필기가 가능하게 하고, 특정 구간으로 바로 이동하는 기능까지 구현해야 했으니까요. Next.JS의 서버사이드 렌더링(SSR)과 정적 페이지 생성(SSG) 기능을 적절히 활용하여 초기 로딩 속도를 최적화하고, 백엔드에서는 대용량 콘텐츠를 안정적으로 스트리밍할 수 있는 인프라를 구축했습니다.
**3. '버그는 우리의 친구... 일 리가 없지!' QA와 잦은 수정 요청 속에서 피어난 완성도**
개발이 어느 정도 완료되면, 이제 QA팀 안미려 팀장님의 눈빛이 매서워질 차례입니다. "개발팀, 당신들이 생각하는 완성은 완성 아니다!"라는 무언의 압박이 느껴지죠. (농담입니다만, 정말 무서워요!) 수많은 버그와 마주하고, 사용자 시나리오를 꼼꼼히 따라가며 예상치 못한 문제점을 발견해내는 과정은 언제나 치열합니다.
다산에듀 e-Book 플랫폼은 학습이라는 중요한 목적을 가지고 있기 때문에, 오류 하나하나가 학습자의 경험에 치명적일 수 있습니다. '필기 내용이 사라지는 버그', '페이지 전환 시 앱이 멈추는 버그', '특정 기기에서 영상이 재생되지 않는 버그' 등. QA팀은 마치 매의 눈처럼 작은 티끌 하나도 놓치지 않았습니다.

잦은 수정 요청은 개발팀의 일상입니다. "이 버튼은 여기에 있는 것보다 저기에 있는 게 더 직관적일 것 같아요.", "필기 색상이 너무 쨍해서 눈이 아파요, 채도를 조금만 낮춰주세요." 이런 디테일한 피드백들이 쏟아져 들어오면 개발팀은 다시 코드와 씨름하고, 디자인팀은 픽셀 단위로 색상을 조정합니다. 때로는 고객이 '이건 정말 안될까요?'라고 물어보는 경우도 있는데, RX SOFT는 웬만하면 '안 된다'는 말 대신 '더 좋은 방법은 없을까요?'를 고민합니다. 저희의 '컴퍼니빌더' 마인드가 여기서 빛을 발하는 거죠. 고객의 요구사항을 맹목적으로 따르기보다, 그들의 진짜 목적을 달성할 수 있는 최적의 솔루션을 함께 찾아나가는 겁니다.
저희는 Jira와 Slack을 활용하여 실시간으로 피드백을 주고받고, 주간 회의를 통해 진행 상황과 이슈를 공유하며 신속하게 문제를 해결했습니다. 100명이 넘는 베테랑 인력들이 각자의 전문성을 바탕으로 유기적으로 협력했기에 가능한 일이었습니다. 그렇게 수많은 시행착오와 개선 과정을 거쳐, 드디어 다산에듀 e-Book 플랫폼은 탄생의 빛을 보게 됩니다.
**4. 완성과 그 너머: RX SOFT의 지속가능한 파트너십**
다산에듀 e-Book 플랫폼이 성공적으로 런칭되었을 때의 뿌듯함은 말로 다 할 수 없습니다. 학습자들이 이 플랫폼을 통해 더 효율적으로 공부하고, 자신의 꿈에 한 발짝 더 다가설 수 있다고 생각하니, 그동안의 고생이 눈 녹듯 사라지는 기분이었죠. 고객사에서도 저희 RX SOFT의 기술력과 문제 해결 능력, 그리고 프로젝트에 대한 열정에 깊은 만족감을 표해주셨습니다.
저희 RX SOFT는 단순히 프로젝트를 개발하고 끝내는 것이 아니라, 그 이후의 유지보수팀 김성찬 팀장님을 중심으로 꾸려진 지속적인 업데이트와 개선을 통해 플랫폼이 끊임없이 진화할 수 있도록 지원합니다. 빠르게 변화하는 IT 환경과 사용자 요구에 발맞춰 항상 최신 기술을 도입하고, 더 나은 학습 경험을 제공하기 위한 고민을 멈추지 않을 겁니다.
다산에듀 e-Book 플랫폼은 '그냥 책 보는 앱'이 아니었습니다. 다산에듀의 교육 철학과 RX SOFT의 기술력이 만나 '살아있는 디지털 교실'을 만들어낸 여정이었죠. 이 프로젝트를 통해 우리는 또 한 번 성장했고, 불가능해 보이는 도전을 가능하게 만드는 RX SOFT만의 저력을 증명할 수 있었습니다.
다음번에는 또 어떤 흥미진진한 프로젝트 이야기로 여러분을 찾아올지 기대해주세요!
RX SOFT와 함께라면 여러분의 상상도 현실이 됩니다.
저희의 더 많은 포트폴리오와 함께 하고 싶은 이야기가 있다면, 언제든지 https://rxsoft.co.kr/ 로 방문해 주세요!