Senior Software Engineer, Docker Desktop (East Coast)

DockerDocker·Remote(Canada)
Software Development
Excel

WFA Digital Insight

The demand for skilled software engineers with expertise in operating systems and backend development has grown significantly, with over 50% of companies adopting remote work. As a senior software engineer at Docker, you'll be working on a critical component of the company's suite, Docker Desktop, which has over 20 million monthly users. With a strong focus on innovation and great developer experiences, Docker is a great fit for those looking to make a real impact. Before applying, consider the required 6+ years of experience in building backend software, recent hands-on Go proficiency, and a strong understanding of operating systems.

Job Description

About the Role

Docker is seeking a highly skilled Senior Software Engineer to join the Docker Desktop team. As a member of this team, you will focus on the desktop and operating system layer of Docker Desktop, working on installers, updaters, system services, and OS-level integrations across macOS and Windows. Your goal will be to improve reliability, performance, and user experience across the full lifecycle of the product.

The Desktop Platform team is responsible for the core lifecycle of Docker Desktop, including installation, updates, startup, and key shared components used by every Docker Desktop feature team. The team's work ensures that Docker Desktop is reliable, easy to adopt, and provides the modular foundations that enable other teams to build and ship with confidence.

As a senior software engineer, you will operate with high ownership, communicate clearly through documentation, and be comfortable driving work in a highly autonomous environment.

What You Will Do

  • Design, develop, and maintain lifecycle components, including installation, update, startup, and system services.
  • Improve reliability and performance of Docker Desktop across macOS, Windows, and Linux environments.
  • Work on OS-level integrations, permissions models, and system behavior such as admin vs admin-less installs.
  • Debug and resolve complex issues related to startup, crashes, and system interactions.
  • Collaborate with platform and feature teams to ensure seamless integration with shared components.
  • Contribute to documentation, technical design discussions, and knowledge sharing across the Desktop ecosystem.
  • Write high-quality code with strong test coverage and support healthy engineering practices.
  • Participate in code reviews and ensure that the codebase is maintainable and scalable.
  • Stay up-to-date with the latest developments in the field and apply that knowledge to improve Docker Desktop.

What We Are Looking For

  • 6+ years of experience building backend software, with recent demonstrated hands-on Go (Golang) proficiency.
  • Strong understanding of operating systems (macOS, Windows, or Linux), including system APIs and behavior.
  • Demonstrated ability to design modular, maintainable system components that scale across teams.
  • Ability to debug complex system-level issues and improve reliability and performance.
  • Experience designing modular, maintainable components used by other teams.
  • Strong problem-solving skills and ability to work through ambiguity.
  • Excellent communication skills, including written documentation and technical design discussions.
  • Willingness to learn Go and contribute to a Go-based codebase.
  • Bachelor’s degree in Computer Science, Engineering, or a related field, or equivalent practical experience.

Nice to Have

  • Experience with containerization and Docker.
  • Knowledge of cloud computing platforms such as AWS or Azure.
  • Familiarity with agile development methodologies.

Benefits and Perks

  • Competitive salary and benefits package.
  • Opportunity to work on a critical component of Docker's suite.
  • Collaborative and dynamic work environment.
  • Professional development and growth opportunities.
  • Flexible working hours and remote work options.
  • Access to the latest technologies and tools.
  • recognition and rewards for outstanding performance.

How to Stand Out

  • Make sure to highlight your experience with operating systems, backend development, and Go programming language in your resume and cover letter.
  • Prepare to talk about your experience with complex system-level issues and how you debug and resolve them.
  • Show your ability to work independently and collaboratively as part of a distributed team.
  • Be ready to discuss your understanding of Docker and containerization, and how you can contribute to the Docker Desktop team.
  • Keep your portfolio up-to-date and be prepared to share examples of your work, particularly those that demonstrate your problem-solving skills and ability to design modular, maintainable system components.

This is a remote position listed on WFA Digital, the platform for professionals who work from anywhere. Browse more remote jobs across all categories.