Golang backend developer
Upwork
About the role
About
We are looking for an experienced Golang backend developer to design and build a scalable, production‑grade backend system that:
- Manages render jobs end‑to‑end
- Integrates with rendering infrastructure (Deadline + VMs)
- Handles large file workflows (200 GB uploads)
- Provides MCP‑ready APIs (AI‑friendly, structured, deterministic)
Important:
You are NOT building chatbot logic or MCP server.
You ARE building everything MCP will call.
Core Responsibilities
Authentication & Access Layer
- JWT‑based user authentication
- API key system for MCP server access
- Middleware for secure request validation
User & Wallet System
- User profiles
- Wallet balance management
- Credit deduction per render job
Large File Upload System (200 GB+)
- Chunked upload system
- Upload session tracking
- Pre‑signed URL handling
Render Job Engine (Core System)
- Design and implement the central job system:
- Create, update, and cancel jobs
- Track job lifecycle
- Maintain job logs, steps, and statuses
- Key APIs:
POST /jobsGET /jobs/idGET /jobsPOST /jobs/id/test-renderPOST /jobs/id/cancel
- Design and implement the central job system:
Scene Processing Orchestration
- Trigger Python workers (scene checker, repathing, settings)
- Track step‑level progress
- Manage queue via Redis
Test Render System (10‑minute SLA)
- Priority job handling
- Limited frame rendering
- Trigger VM → Submit to Deadline → Track status
Deadline Integration
- Submit jobs to Deadline
- Monitor job progress
- Retry failed jobs
SkyPilot Auto Scaling
- Spin up/down VMs dynamically
- Queue‑based scaling logic
- Optimize cost vs performance
Cost Engine (Critical)
- Pre‑render cost estimation
- Live cost tracking
- APIs:
POST /cost/estimateGET /jobs/id/cost
Payment Integration (Razorpay)
- Order creation
- Payment verification
- Transaction logging
Output Delivery
- Secure storage (up to 100 GB output)
- Signed download URLs
- Expiry‑based access
Notifications System
- Event‑driven notifications:
- Test render ready
- Render completed
- Payment status
- Event‑driven notifications:
Admin APIs
- Monitor jobs
- Approve users
- Kill jobs
- Track VM usage
MCP (AI Integration) Requirements
APIs must be AI‑agent friendly: deterministic outputs, no vague responses. Always return:
- Job status
- IDs
- ETA
- Cost info
MCP‑Critical Endpoints
POST /jobsGET /jobs/idGET /jobsPOST /jobs/id/test-renderPOST /cost/estimate
MCP Auth Support
- API key system for the MCP server
- User mapping via API keys
Action Logging
- Log every API‑triggered action
- Ensure full traceability
Safety Layer
- Rate limiting
- Job limits per user
- Cost protection checks
Tech Stack
- Golang (Gin / Fibre preferred)
- PostgreSQL
- Redis (queue + caching)
- Object storage (S3‑compatible)
- Deadline (render manager)
- SkyPilot (infra orchestration)
- Razorpay (payments)
Ideal Candidate
- Strong experience in Golang backend systems
- Experience with distributed systems / job queues
- Familiar with cloud infra (AWS/GCP, VM orchestration)
- Experience with large file handling / storage systems
- Bonus: Experience with render pipelines / VFX / 3D workflows
Deliverables (V1)
By the end of this project, the backend should:
- Create and manage render jobs
- Run test render within 10 minutes
- Auto‑scale infrastructure
- Track cost in real‑time
- Support 200 GB uploads
- Deliver outputs securely
- Provide clean MCP‑ready APIs
Requirements
- JWT-based user authentication
- API key system for MCP server access
- Middleware for secure request validation
- User profiles
- Wallet balance management
- Credit deduction per render job
- Chunked upload system
- Upload session tracking
- Pre-signed URL handling
- Priority job handling
- Limited frame rendering
- Trigger VM → Submit to Deadline
- Track status
- Cost Engine (Critical)
- Payment Integration (Razorpay)
- MCP (AI Integration) Requirements
- Your APIs must be AI-agent friendly: Deterministic Outputs
- No vague responses. Always return: Job status, IDs, ETA, Cost info
- MCP Auth Support
- API key system for the MCP server
- User mapping via API keys
- Action Logging
- Log every API-triggered action
- Ensure full traceability
- Safety Layer
- Rate limiting
- Job limits per user
- Cost protection checks
- Strong experience in Golang backend systems
- Experience with distributed systems/job queues
- Familiar with cloud infra (AWS/GCP, VM orchestration)
- Experience with large file handling/storage systems
Responsibilities
- Design and implement the central job system
- Create, update, and cancel jobs
- Track job lifecycle
- Maintain job logs, steps, and statuses
- Trigger Python workers (scene checker, repathing, settings)
- Track step-level progress
- Manage queue via Redis
- Submit jobs to Deadline
- Monitor job progress
- Retry failed jobs
- Spin up/down VMs dynamically
- Queue-based scaling logic
- Optimize cost vs performance
- Pre-render cost estimation
- Live cost tracking
- Order creation
- Payment verification
- Transaction logging
- Secure storage (up to 100GB output)
- Signed download URLs
- Expiry-based access
- Event-driven notifications: Test render ready, Render completed, Payment status
- Monitor jobs
- Approve users
- Kill jobs
- Track VM usage
Skills
Don't send a generic resume
Paste this job description into Mimi and get a resume tailored to exactly what the hiring team is looking for.
Get started free