[미리캔버스] 백엔드 개발자 (NestJS)
직군
개발
경력사항
경력 3~6년
고용형태
정규직
근무지
미리디대한민국 서울특별시 구로구 디지털로31길 12, 8층 미리디

|미리캔버스 ​합성팀이 해결하려는 ​문제

  • 프론트엔드 팀과 백엔드 팀 ​간의 ​효율적인 협업
  • 합성팀은 ​BFF(Backend For Frontend) ​역할을 수행하며, ​프론트엔드에서만 ​필요한 데이터를 ​백엔드를 ​거치지 ​않고 직접 가공하고 ​제공합니다. ​반대로 백엔드 전용 ​리소스는 ​자동화된 ​시스템을 통해 일괄 ​처리하여, 전체 ​시스템의 ​연결 비용을 ​낮추고 생산성을 ​향상시키는 ​데 집중합니다.
  • 고속 렌더링 ​파이프라인 구축과 ​성능 병목 해소
  • 합성’이란 사용자의 디자인 결과물을 기반으로 이미지, 문서, 영상 등의 출력물을 서버에서 렌더링하는 작업을 의미합니다. 이 과정은 Puppeteer 기반의 브라우저 자동화, FFmpeg 기반의 동영상 처리, Apache POI/PDFBox 기반의 문서 렌더링 등을 포함하며, 성능 병목 해소와 병렬 처리 최적화가 핵심 과제입니다.
  • 매일 수십만 건에 달하는 실시간 렌더링 요청(이미지·PDF·동영상 등)을 처리하기 위해, 대용량 병렬 처리 시스템, 결과 캐싱, 효율적인 작업 큐 아키텍처가 요구됩니다.
  • 렌더링 정합성 검증
  • 단순히 결과물을 빠르게 생성하는 것을 넘어, 실제 미리캔버스 에디터와의 출력 정합성을 확인하고, 배포 전 자동화된 합성 테스트를 통해 정확한 사용자 경험을 보장해야 합니다.
  • 비즈하우스 인쇄출력
  • 비즈하우스 개발팀과 협업하여 100종 이상의 인쇄 상품별 스펙에 맞는 출력물을 제작하며, 각 업체의 출력 사양(해상도, 포맷, 레이아웃 등)에 정합한 이미지를 자동으로 생성합니다. 이는 대량 맞춤형 출력을 지원하는 중요한 백엔드 기능입니다.



| 주요 업무

"미리디에서 이런 일들을 함께 하고 싶어요"

  • 백엔드 시스템 및 API 개발
  • Node.js 기반의 NestJS 프레임워크를 활용하여 도메인 기반으로 아키텍처를 모듈화하고 분리함으로써, 유지 보수성과 확장성을 높이는 구조 설계에 기여합니다.
  • DocumentDB와 Mongoose를 기반으로 성능 중심의 데이터 스키마 설계와 인덱스 최적화를 수행하여, 대용량 데이터에서도 빠르고 정확한 응답을 보장합니다.
  • 비동기 처리 및 렌더링 파이프라인
  • BullMQ, ElastiCache, AWS SQS 기반의 고성능 작업 큐 시스템을 구성 및 운영하여, 수십만 건의 합성 요청을 안정적으로 처리합니다.
  • Puppeteer 기반의 이미지 렌더링 서버를 운영하며, 사용자의 시각적 기대에 부합하는 고품질 결과물을 제공합니다.
  • FFmpeg를 활용한 동영상 렌더링 및 변환 기능을 통해, 애니메이션 움직임을 효과적으로 전달할 수 있는 동적 콘텐츠 생성을 지원합니다.
  • Apache POI / PDFBox 기반의 문서 생성 기능을 구현하여, PDF 뷰어 및 Microsoft PowerPoint에 호환되는 PDF, PPTX 등의 문서 기반 출력물을 제공합니다.
  • 인프라/운영 자동화
  • AWS S3, ECS를 연동하여 출력물 저장부터 배포까지의 과정을 자동화하고, 신뢰할 수 있는 인프라 운영 환경을 구축합니다.
  • 장애 감지 및 대응, 재처리 로직, 로깅 체계를 설계함으로써, 문제 발생 시 빠르게 복구 가능한 시스템 안정성을 확보합니다.
  • 품질 및 테스트
  • Datadog 기반 APM 및 분산 트레이싱을 통해, 병목 지점을 실시간으로 파악하고 시스템 성능을 지속적으로 개선합니다.
  • 단위 테스트 및 합성 정합성 테스트를 자동화하여, 배포 전 품질 검증을 체계적으로 수행하고 신뢰도 높은 결과물 제공에 기여합니다.
  • 팀워크와 성장 문화
  • 코드 리뷰와 기술 토론을 통해 개인의 코드 품질을 높이고, 팀의 기술 역량을 함께 성장시킵니다.
  • 기술 방향성과 표준을 논의하고 문서화하여, 지속 가능한 개발 환경과 팀의 장기적 성장을 뒷받침합니다.



| 자격요건

"이런 분이라면 목표 달성에 확신을 얻을 것 같아요"

  • NestJS 기반의 백엔드 서버를 설계 및 개발한 실무 경험이 있으신 분
  • RESTful API 설계 및 요청/응답 스펙 설계 경험이 있으신 분
  • MongoDB/DocumentDB 등 NoSQL 데이터베이스에 대한 설계 및 최적화 경험이 있으신 분
  • BullMQ, ElastiCache/Redis, 또는 SQS 등의 큐 시스템을 활용한 비동기 작업 처리 경험이 있으신 분
  • APM(DataDog, NewRelic 등)을 활용한 서비스 성능 모니터링 및 지표 분석 경험이 있으신 분
  • 자료구조, 운영체제, OOP, 네트워크 등 핵심 CS 지식에 대한 탄탄한 기반을 보유하신 분
  • AWS 클라우드 환경에서의 서비스 운영 및 배포 경험이 있으신 분


| 우대 사항

"이런 분이라면 장기적으로 서로에게 더 긍정적일 것 같아요!"

  • Puppeteer, FFmpeg, Apache POI, Apache PDFBox 등 미디어·문서 렌더링 라이브러리를 실무에 활용해보신 분
  • 라이브러리의 내부 구조를 파악하고, 코드 레벨로 문제를 추적하고 해결하는 역량을 갖추신 분
  • Node.js 애플리케이션의 CPU/메모리 사용량 측정, 병목 분석, 성능 최적화에 대한 경험이 있으신 분
  • 로그 집계, 장애 대응, CI/CD 파이프라인 등의 운영 자동화 또는 DevOps 환경을 직접 설계·구축·운영한 경험이 있으신 분
  • 복잡한 문제 상황에서도 근본 원인을 파악하고, 구조적인 개선 방안을 도출할 수 있는 분
  • 클린 코드, OOP, SOLID 원칙, GoF 디자인 패턴 등을 실무 코드에 적용한 경험이 있고, 팀 차원의 코드 일관성 유지에 기여하신 분
  • 코드 리뷰를 통해 동료와 지식과 인사이트를 나누고, 리팩토링을 지속적으로 실천하시는 분
  • 기획, 디자인, 운영 등 비개발 직군과의 커뮤니케이션에 적극적으로 임하고, 문제 해결 중심으로 협업할 수 있으신 분



| 미리디에서 활용하는 기술 스택

미리캔버스 합성팀은 최신 기술을 적극적으로 도입하며, 팀원들과 함께 최적의 스택을 고민하고 적용합니다.

  • 코어: JavaScript/Typescript, Node.js, NestJS
  • 미디어 렌더링: Puppeteer, FFmpeg, Apache POI, Apache PDFBox
  • 큐 시스템: BullMQ(ElastiCache 기반), AWS SQS
  • DB: DocumentDB
  • 빌드: Webpack
  • CI/CD: GitHub Actions
  • 배포/운영: AWS ECS (EC2, Fargate), S3, CloudFront, Datadog
  • 테스트: Jest(Unit & E2E), 합성 정합성 테스트 시스템



| 이력서에 이런 내용을 함께 공유해주시면 좋아요!

"지원자님의 이야기를 통해 더 깊이 이해하고 싶습니다."

  • 단순히 어떠한 기술을 사용할 줄 아는지 에 대한 내용보다, 다양한 기술을 어떻게 활용하여 어떠한 문제를 해결했는지 경험에 기반하여 서술해주시면 좋아요.
  • 지원자님의 경력 중 가장 임팩트 있었던 경험이나, 큰 실패를 극복한 과정에 대해 공유해 주세요.
  • 오픈소스 라이브러리 기여 경험이나, 코드 분석 후 적용 경험이 있다면 알려 주세요.
  • 팀의 생산성을 저하시키는 문제를 발굴하고 개선한 경험이 있다면 서술해주시면 좋아요.



| 기타 사항

  • [서류 전형] - [1차 인터뷰] - [2차 인터뷰] - [처우 협의] - [입사] 의 프로세스로 진행됩니다.
  • 서류는 원활한 검토를 위해 PDF 형식으로 제출 부탁 드립니다.
  • 1차 인터뷰 안내
  • 백엔드 개발자의 기본 역량을 확인할 수 있는 간단한 라이브 코딩 테스트가 진행됩니다. (50분 내외)
  • 직급에 따라 인터뷰 후 레퍼런스 체크 전형이 추가될 수 있습니다.
  • 입사 후 3개월의 수습 기간 및 수습 평가가 진행됩니다. (급여 100%)
  • 서류 전형 결과 안내까지는 최대 2주, 인터뷰 결과 안내까지는 최대 3주가 소요됩니다.
  • 여러 포지션에 동시에 지원해주시는 것은 가능하지만 동일한 포지션의 경우 최종 결과 안내를 받은 시점으로부터 6개월 후에 재지원이 가능합니다.
공유하기
[미리캔버스] 백엔드 개발자 (NestJS)

|미리캔버스 ​합성팀이 해결하려는 ​문제

  • 프론트엔드 팀과 백엔드 팀 ​간의 ​효율적인 협업
  • 합성팀은 ​BFF(Backend For Frontend) ​역할을 수행하며, ​프론트엔드에서만 ​필요한 데이터를 ​백엔드를 ​거치지 ​않고 직접 가공하고 ​제공합니다. ​반대로 백엔드 전용 ​리소스는 ​자동화된 ​시스템을 통해 일괄 ​처리하여, 전체 ​시스템의 ​연결 비용을 ​낮추고 생산성을 ​향상시키는 ​데 집중합니다.
  • 고속 렌더링 ​파이프라인 구축과 ​성능 병목 해소
  • 합성’이란 사용자의 디자인 결과물을 기반으로 이미지, 문서, 영상 등의 출력물을 서버에서 렌더링하는 작업을 의미합니다. 이 과정은 Puppeteer 기반의 브라우저 자동화, FFmpeg 기반의 동영상 처리, Apache POI/PDFBox 기반의 문서 렌더링 등을 포함하며, 성능 병목 해소와 병렬 처리 최적화가 핵심 과제입니다.
  • 매일 수십만 건에 달하는 실시간 렌더링 요청(이미지·PDF·동영상 등)을 처리하기 위해, 대용량 병렬 처리 시스템, 결과 캐싱, 효율적인 작업 큐 아키텍처가 요구됩니다.
  • 렌더링 정합성 검증
  • 단순히 결과물을 빠르게 생성하는 것을 넘어, 실제 미리캔버스 에디터와의 출력 정합성을 확인하고, 배포 전 자동화된 합성 테스트를 통해 정확한 사용자 경험을 보장해야 합니다.
  • 비즈하우스 인쇄출력
  • 비즈하우스 개발팀과 협업하여 100종 이상의 인쇄 상품별 스펙에 맞는 출력물을 제작하며, 각 업체의 출력 사양(해상도, 포맷, 레이아웃 등)에 정합한 이미지를 자동으로 생성합니다. 이는 대량 맞춤형 출력을 지원하는 중요한 백엔드 기능입니다.



| 주요 업무

"미리디에서 이런 일들을 함께 하고 싶어요"

  • 백엔드 시스템 및 API 개발
  • Node.js 기반의 NestJS 프레임워크를 활용하여 도메인 기반으로 아키텍처를 모듈화하고 분리함으로써, 유지 보수성과 확장성을 높이는 구조 설계에 기여합니다.
  • DocumentDB와 Mongoose를 기반으로 성능 중심의 데이터 스키마 설계와 인덱스 최적화를 수행하여, 대용량 데이터에서도 빠르고 정확한 응답을 보장합니다.
  • 비동기 처리 및 렌더링 파이프라인
  • BullMQ, ElastiCache, AWS SQS 기반의 고성능 작업 큐 시스템을 구성 및 운영하여, 수십만 건의 합성 요청을 안정적으로 처리합니다.
  • Puppeteer 기반의 이미지 렌더링 서버를 운영하며, 사용자의 시각적 기대에 부합하는 고품질 결과물을 제공합니다.
  • FFmpeg를 활용한 동영상 렌더링 및 변환 기능을 통해, 애니메이션 움직임을 효과적으로 전달할 수 있는 동적 콘텐츠 생성을 지원합니다.
  • Apache POI / PDFBox 기반의 문서 생성 기능을 구현하여, PDF 뷰어 및 Microsoft PowerPoint에 호환되는 PDF, PPTX 등의 문서 기반 출력물을 제공합니다.
  • 인프라/운영 자동화
  • AWS S3, ECS를 연동하여 출력물 저장부터 배포까지의 과정을 자동화하고, 신뢰할 수 있는 인프라 운영 환경을 구축합니다.
  • 장애 감지 및 대응, 재처리 로직, 로깅 체계를 설계함으로써, 문제 발생 시 빠르게 복구 가능한 시스템 안정성을 확보합니다.
  • 품질 및 테스트
  • Datadog 기반 APM 및 분산 트레이싱을 통해, 병목 지점을 실시간으로 파악하고 시스템 성능을 지속적으로 개선합니다.
  • 단위 테스트 및 합성 정합성 테스트를 자동화하여, 배포 전 품질 검증을 체계적으로 수행하고 신뢰도 높은 결과물 제공에 기여합니다.
  • 팀워크와 성장 문화
  • 코드 리뷰와 기술 토론을 통해 개인의 코드 품질을 높이고, 팀의 기술 역량을 함께 성장시킵니다.
  • 기술 방향성과 표준을 논의하고 문서화하여, 지속 가능한 개발 환경과 팀의 장기적 성장을 뒷받침합니다.



| 자격요건

"이런 분이라면 목표 달성에 확신을 얻을 것 같아요"

  • NestJS 기반의 백엔드 서버를 설계 및 개발한 실무 경험이 있으신 분
  • RESTful API 설계 및 요청/응답 스펙 설계 경험이 있으신 분
  • MongoDB/DocumentDB 등 NoSQL 데이터베이스에 대한 설계 및 최적화 경험이 있으신 분
  • BullMQ, ElastiCache/Redis, 또는 SQS 등의 큐 시스템을 활용한 비동기 작업 처리 경험이 있으신 분
  • APM(DataDog, NewRelic 등)을 활용한 서비스 성능 모니터링 및 지표 분석 경험이 있으신 분
  • 자료구조, 운영체제, OOP, 네트워크 등 핵심 CS 지식에 대한 탄탄한 기반을 보유하신 분
  • AWS 클라우드 환경에서의 서비스 운영 및 배포 경험이 있으신 분


| 우대 사항

"이런 분이라면 장기적으로 서로에게 더 긍정적일 것 같아요!"

  • Puppeteer, FFmpeg, Apache POI, Apache PDFBox 등 미디어·문서 렌더링 라이브러리를 실무에 활용해보신 분
  • 라이브러리의 내부 구조를 파악하고, 코드 레벨로 문제를 추적하고 해결하는 역량을 갖추신 분
  • Node.js 애플리케이션의 CPU/메모리 사용량 측정, 병목 분석, 성능 최적화에 대한 경험이 있으신 분
  • 로그 집계, 장애 대응, CI/CD 파이프라인 등의 운영 자동화 또는 DevOps 환경을 직접 설계·구축·운영한 경험이 있으신 분
  • 복잡한 문제 상황에서도 근본 원인을 파악하고, 구조적인 개선 방안을 도출할 수 있는 분
  • 클린 코드, OOP, SOLID 원칙, GoF 디자인 패턴 등을 실무 코드에 적용한 경험이 있고, 팀 차원의 코드 일관성 유지에 기여하신 분
  • 코드 리뷰를 통해 동료와 지식과 인사이트를 나누고, 리팩토링을 지속적으로 실천하시는 분
  • 기획, 디자인, 운영 등 비개발 직군과의 커뮤니케이션에 적극적으로 임하고, 문제 해결 중심으로 협업할 수 있으신 분



| 미리디에서 활용하는 기술 스택

미리캔버스 합성팀은 최신 기술을 적극적으로 도입하며, 팀원들과 함께 최적의 스택을 고민하고 적용합니다.

  • 코어: JavaScript/Typescript, Node.js, NestJS
  • 미디어 렌더링: Puppeteer, FFmpeg, Apache POI, Apache PDFBox
  • 큐 시스템: BullMQ(ElastiCache 기반), AWS SQS
  • DB: DocumentDB
  • 빌드: Webpack
  • CI/CD: GitHub Actions
  • 배포/운영: AWS ECS (EC2, Fargate), S3, CloudFront, Datadog
  • 테스트: Jest(Unit & E2E), 합성 정합성 테스트 시스템



| 이력서에 이런 내용을 함께 공유해주시면 좋아요!

"지원자님의 이야기를 통해 더 깊이 이해하고 싶습니다."

  • 단순히 어떠한 기술을 사용할 줄 아는지 에 대한 내용보다, 다양한 기술을 어떻게 활용하여 어떠한 문제를 해결했는지 경험에 기반하여 서술해주시면 좋아요.
  • 지원자님의 경력 중 가장 임팩트 있었던 경험이나, 큰 실패를 극복한 과정에 대해 공유해 주세요.
  • 오픈소스 라이브러리 기여 경험이나, 코드 분석 후 적용 경험이 있다면 알려 주세요.
  • 팀의 생산성을 저하시키는 문제를 발굴하고 개선한 경험이 있다면 서술해주시면 좋아요.



| 기타 사항

  • [서류 전형] - [1차 인터뷰] - [2차 인터뷰] - [처우 협의] - [입사] 의 프로세스로 진행됩니다.
  • 서류는 원활한 검토를 위해 PDF 형식으로 제출 부탁 드립니다.
  • 1차 인터뷰 안내
  • 백엔드 개발자의 기본 역량을 확인할 수 있는 간단한 라이브 코딩 테스트가 진행됩니다. (50분 내외)
  • 직급에 따라 인터뷰 후 레퍼런스 체크 전형이 추가될 수 있습니다.
  • 입사 후 3개월의 수습 기간 및 수습 평가가 진행됩니다. (급여 100%)
  • 서류 전형 결과 안내까지는 최대 2주, 인터뷰 결과 안내까지는 최대 3주가 소요됩니다.
  • 여러 포지션에 동시에 지원해주시는 것은 가능하지만 동일한 포지션의 경우 최종 결과 안내를 받은 시점으로부터 6개월 후에 재지원이 가능합니다.