Ubiquiti Inc.
Cloud Software Developer (Firmware Update Service)
Employment
Not statedLevel
Not statedTeam
400-Research and DevelopmentCountry assessment
Not doable from Austria because the employer's own board marks it as not remote.
Our assessment is guidance. Confirm arrangements with the employer.
Skills mentioned in this posting
Job description
About Ubiquiti
At Ubiquiti Inc., we create technology platforms for Businesses, Smart Homes, and Internet Service Providers, driven by our goal to connect everyone, everywhere. To date, Ubiquiti has shipped over 100 million devices worldwide, from ISP networking products to next generation of IT solutions. Our growth is made possible by the dedicated team of hundreds behind the scenes. From software developers and product managers to designers and strategists, Team UI is driven to achieve our common goal: Rethinking IT. At Ubiquiti, you’ll heighten your potential and broaden your horizons - all while shaping the future of connectivity.
Role Summary
We are looking for a Cloud Service Developer with strong experience in AWS and Node.js to join our backend team, focusing on firmware update services. In this role, you will design, develop, and operate scalable cloud systems responsible for secure, reliable, and efficient firmware distribution to millions of devices.
You will work closely with firmware engineers, SREs, and product teams to build end-to-end update pipelines, ensuring high availability, integrity, and performance of device updates across diverse environments.
Responsibilities (What he/she will do after joining UI)
- Design, implement, and maintain cloud-native services for firmware update orchestration and delivery.
- Build and manage scalable APIs and backend systems using Node.js to support firmware lifecycle management (upload, validation, rollout, rollback).
- Develop mechanisms for secure firmware distribution, including authentication, authorization, and artifact integrity verification.
- Collaborate with firmware, SRE, and platform teams to ensure smooth integration between cloud services and device-side update agents.
- Optimize large-scale file delivery using AWS services (e.g., S3, CloudFront, CDN strategies) to ensure efficient global distribution.
- Implement rollout strategies (phased rollout, canary deployments, regional targeting) to minimize risk during firmware updates.
- Ensure system reliability through monitoring, alerting, and automated recovery mechanisms.
- Write clean, testable code and participate in code reviews and design discussions.
- Continuously improve system scalability, performance, and cost efficiency.
Requirement (Must-Haves)
- Bachelor’s degree in Computer Science, Software Engineering, or a related field.
- 3+ years of experience developing backend services or cloud applications.
- Strong proficiency in Node.js and RESTful API design.
- Hands-on experience with AWS services (e.g., S3, CloudFront, ECS, SQS, SNS, DynamoDB or RDS).
- Experience designing systems for large-scale file distribution or high-throughput data delivery.
- Solid understanding of CI/CD, containerization (Docker), and microservice architecture.
- Knowledge of secure software delivery practices (e.g., artifact signing, checksum validation, secure download mechanisms).
- Familiarity with rollout strategies such as canary deployments, staged rollouts, or feature gating.
- Strong debugging, problem-solving, and communication skills.
- Proficiency in AI development environments (e.g., Cursor, Claude Code) and experience with AI-assisted development workflows (e.g., spec-driven development).
Preferred Qualifications
- Experience building or maintaining firmware update systems, OTA (Over-the-Air) update platforms, or device management services.
- Familiarity with CDN optimization and edge delivery strategies for large binary distribution.
- Knowledge of device communication protocols (e.g., MQTT, WebSockets, HTTP long polling).
- Experience with observability tools such as CloudWatch, Datadog, or Prometheus.
- Understanding of distributed systems challenges such as consistency, fault tolerance, and rate limiting.
- Experience with TypeScript or serverless architectures.
- Exposure to IoT ecosystems or embedded systems is a plus.
- Passion for improving developer experience and system reliability at scale.