Senior Software Engineer, Backend Platform

Instacart Instacart · Consumer · Canada · Remote · Software Engineering

Instacart's Backend Platform team builds the shared Go-based foundation that powers services across their marketplace, advertising, partner, and fulfillment domains. They create frameworks, libraries, tooling, and standards to help product teams ship reliable, secure, and high-performance services at scale. This Senior Software Engineer role will design and deliver the next-generation platform enabling their future service architecture in Go, partnering with SRE, Security, Infra, and product engineering teams to define best practices, accelerate developer productivity, and raise the reliability and performance bar across the company.

What you'd actually do

  1. Design, build, and evolve Go platform components (frameworks, libraries, service templates, and tooling) that are adopted across many product teams.
  2. Define and socialize engineering standards for APIs, RPC/gRPC, configuration, observability, security, and resiliency to improve service quality and consistency.
  3. Improve developer productivity through better build/test pipelines, reproducible local dev, CI/CD workflows, and automation that reduces toil.
  4. Advance reliability and performance by enabling robust telemetry (OpenTelemetry), profiling, load testing, and capacity planning baked into the platform.
  5. Lead migrations and modernization efforts (e.g., Go runtime upgrades, service mesh adoption, framework consolidation) with clear rollout and deprecation plans.

Skills

Required

  • backend software engineering
  • distributed systems
  • Go
  • production experience with Go
  • service-oriented architectures
  • gRPC
  • REST
  • API design
  • versioning
  • backward compatibility
  • cloud platforms (AWS, GCP, or Azure)
  • containerization
  • deployment
  • runtime configuration
  • reliability
  • performance
  • observability (metrics, logs, traces)
  • profiling
  • benchmarking
  • incident/on-call experience
  • owning platform components
  • documentation
  • rollout
  • CI/CD
  • build systems
  • Go modules
  • build caching
  • automated testing
  • service security best practices
  • authN/Z
  • secrets management
  • transport security
  • resilient patterns (timeouts, retries, circuit breaking)
  • Bachelor’s degree in Computer Science or related field, or equivalent practical experience

Nice to have

  • service mesh
  • traffic management (Envoy, Istio)
  • progressive delivery (canary, blue/green)
  • Go performance tuning (pprof, memory/CPU optimization)
  • runtime upgrades
  • dependency management at scale
  • OpenTelemetry
  • distributed tracing
  • building opinionated observability into frameworks
  • internal developer platforms
  • golden paths
  • service templates
  • scaffolding tools
  • self-serve documentation/portals
  • data streaming
  • async systems (Kafka, Pub/Sub)
  • idempotency
  • exactly-once/at-least-once semantics
  • API gateways
  • rate limiting
  • multi-region or high-availability architectures
  • cross-functional initiatives
  • influence standards
  • mentor engineers

What the JD emphasized

  • 5+ years of experience in backend software engineering building distributed systems or platforms.
  • 3+ years of hands-on production experience with Go (designing, coding, testing, and operating Go services or libraries).
  • Track record of owning platform components (frameworks, SDKs, or shared libraries) used by multiple teams, including documentation and rollout.