Senior Software Engineer, Backend Systems (US East Coast)

This listing is synced directly from the company ATS.

Role Overview

As a Senior Software Engineer at Docker, you will design, build, and maintain backend systems and APIs primarily using Clojure and Go. You will lead small feature teams, mentor junior engineers, and make architectural decisions that enhance system reliability and performance. Your work will directly impact the developer experience for millions of users, contributing to the overall success of Docker's offerings.

Perks & Benefits

Docker offers a remote-first work environment with flexibility to balance work and life. Employees enjoy designated quarterly Whaleness Days, a home office setup stipend, and 16 weeks of paid parental leave. The company also provides a training stipend for professional development, equity options, and encourages participation in quarterly hackathons, fostering a culture of innovation and collaboration.

Full Job Description

At Docker, we make app development easier so developers can focus on what matters. Our remote-first team spans the globe, united by a passion for innovation and great developer experiences. With over 20 million monthly users and 20 billion image pulls, Docker is the #1 tool for building, sharing, and running apps—trusted by startups and Fortune 100s alike. We’re growing fast and just getting started. Come join us for a whale of a ride!

The Developer Experience (DevEx) team builds the systems and experiences that help millions of developers build, secure, and ship software with confidence. We power critical parts of Docker Scout and Hardened Images, enabling developers and enterprises to understand and improve their software supply chains.

We're expanding our backend engineering group to strengthen the systems behind Docker's proprietary content and security capabilities. DevEx operates a polyglot backend infrastructure with significant systems in both Clojure and Go. We're actively evolving our technology strategy: while we maintain sophisticated Clojure-based architecture serving 20M+ users, we're working to consolidate around Go where it makes strategic sense and building new ownership capabilities in Go.

What this means for you: In the immediate term, you'll likely work more in Clojure than Go, and this may continue for a sustained period. Over time, the balance will shift. We need engineers who are genuinely excited about working across both languages - learning deeply where you have gaps and contributing to thoughtful evolution of our platform.

As a Senior Software Engineer, you'll guide technical design, lead feature delivery, mentor engineers, and help shape our engineering culture through this transition. You'll work with event-driven patterns, distributed systems, and cloud-native infrastructure while helping us evolve our stack pragmatically.

This role suits someone who enjoys solving deep technical problems, values working across multiple technologies, and wants to grow their expertise while supporting others through change.

Success in This Role Looks Like

You'll thrive here if you enjoy leading by example and are genuinely curious about different programming paradigms. Success means you've improved system reliability across both Clojure and Go, contributed to architectural decisions, mentored engineers, grown your expertise in new languages, and helped shape a strong technical culture while keeping delivery front and center.

Responsibilities

  • Design, build, and maintain backend systems and APIs in both Clojure and Go

  • Lead small feature teams through planning, execution, and delivery

  • Mentor engineers and share knowledge across the team, particularly during technology transitions

  • Make pragmatic architectural decisions and contribute to long-term technical direction

  • Work closely with Product, Design, and other engineering teams to deliver end-to-end value

  • Improve observability, performance, and security of backend services

  • Raise operational standards and take part in the paid on-call rotation

  • Champion clear communication, documentation, and technical excellence

Qualifications

Required:

  • Significant experience building and operating backend systems in production

  • Strong programming skills in either Clojure or Go with demonstrated willingness and ability to learn the other

  • Experience designing and maintaining distributed systems or microservices

  • Strong understanding of cloud-native systems (AWS or GCP), APIs, and data stores

  • Proven experience mentoring engineers and guiding projects from design to delivery

  • Excellent communication skills in a remote, async-first environment

  • A grounded, practical approach to balancing technical depth with business outcomes

  • Bachelor’s degree in Computer Science, Engineering, or a related field, or equivalent practical experience.

Strong Plus:

  • Production experience with both Clojure and Go

  • Experience with Datomic, event-driven architectures, or Kafka

  • Experience working through technology migrations or in polyglot environments

  • Functional programming background (if coming from Go) or systems programming background (if coming from Clojure)

Critical mindset: You're genuinely enthusiastic about working in whichever language you have less experience with. If you're primarily a Go engineer, you're excited to dive into Clojure and functional programming (potentially for an extended period). If you're primarily a Clojure engineer, you're eager to build Go expertise and expand your systems programming skills. We're looking for engineers who see learning new languages as an exciting opportunity.

What to Expect

First 30 Days

  • Learn our architecture, services, and workflows in both Clojure and Go

  • Pair with engineers across both stacks

  • Ship your first changes to production

  • Get comfortable with our CI/CD, tooling, and deployment practices

  • Understand our technology evolution strategy

First 90 Days

  • Own a small project end-to-end

  • Lead a feature delivery or reliability improvement initiative

  • Contribute meaningfully in both Clojure and Go codebases

  • Contribute to documentation, designs, and mentoring

  • Build strong working relationships across Product, Design, and Engineering

One Year Outlook

  • You're a trusted technical leader in DevEx

  • You're comfortable and productive in both Clojure and Go

  • You've improved backend reliability, performance, and delivery velocity

  • You've mentored multiple engineers and shaped team-level architecture

  • You're leading significant projects and contributing to our platform evolution strategy

Docker considers sponsorship on a case-by-case basis based on business needs.

We use Covey as part of our hiring and / or promotional process for jobs in NYC and certain features may qualify it as an AEDT. As part of the evaluation process we provide Covey with job requirements and candidate submitted applications. We began using Covey Scout for Inbound on April 13, 2024.

Please see the independent bias audit report covering our use of Covey here.

Perks

  • Freedom & flexibility; fit your work around your life

  • Designated quarterly Whaleness Days plus end of year Whaleness break

  • Home office setup; we want you comfortable while you work

  • 16 weeks of paid Parental leave

  • Technology stipend equivalent to $100 net/month

  • PTO plan that encourages you to take time to do the things you enjoy

  • Training stipend for conferences, courses and classes

  • Equity; we are a growing start-up and want all employees to have a share in the success of the company

  • Docker Swag

  • Medical benefits, retirement and holidays vary by country

  • Remote-first culture, with offices in Seattle and Paris

Docker embraces diversity and equal opportunity. We are committed to building a team that represents a variety of backgrounds, perspectives, and skills. The more inclusive we are, the better our company will be.

#LI-REMOTE

Similar jobs

Found 6 similar jobs

Browse more jobs in: