Software Engineer, Backend - Distributed Compute

Apply Here

Countries
USA
Job Types
software & tech
Experience
mid
Organization Types
climate & sustainability, startups
Location
Austin
Posted Date
Company
Base Power

AI Summary

Job Description

Design and build application software running on deployed battery devices: device-to-cloud communication protocols, telemetry, safe OTA deployment tooling, and reliable operation under hardware and network constraints. Collaborate with hardware, infrastructure, and product teams to keep thousands of edge devices reliable, secure, and performant.

Hard Requirements

  • 3+ years production software experience on physical devices, IoT, or embedded systems (not firmware)
  • Strong experience in C, C++, Rust, Go, or equivalent systems languages
  • Deep understanding of networking, HTTP/REST APIs, and device communication protocols
  • Experience handling unreliable networks, offline states, and eventual sync
  • Familiarity with Linux at system level
  • Understanding of battery life, memory constraints, and optimization on resource-constrained hardware
  • Comfort owning backend device software end-to-end

Soft Requirements

  • Real-time or safety-critical systems experience
  • Automotive, robotics, industrial IoT, or energy/utilities background
  • OTA updates and device management platforms
  • Containerization or lightweight runtimes (Docker, systemd)
  • gRPC or other RPC frameworks
  • Cryptography and secure device communication
  • Distributed tracing at edge scale

Browse all urbanism jobs