Software Engineer Principal (Remote)

The Home Depot•GEORGIA - VIRTUAL - GA01, GA
•$140,000 - $240,000•Remote

About The Position

The Software Engineer Principal for store selling systems joins a product team and contributes to the software design, development, and overall product lifecycle. The role involves collaborative engineering, pairing with team members, answering questions from other product teams, encouraging cross-team collaboration, and working with third-party vendors and the open-source community. The role creates reusable foundational code, architectural diagrams, and product documentation, and defines service level objectives. It may also involve product configuration, performance tuning, testing, and production monitoring. The Principal Engineer is expected to demonstrate expertise in modern software design and development, serve as a highly knowledgeable engineer on the product team, and help build the skills of more junior engineers. The position focuses on delivery and execution, production support and enablement, and continued learning. It typically requires overnight travel less than 10% of the time. Work is performed in a comfortable indoor area, primarily seated, with opportunities to move around and only rare need to move or lift light articles.

Requirements

  • Must be at least 18 years of age.
  • Must be legally permitted to work in the United States.
  • At least 6 years of work experience.
  • Bachelor’s degree or equivalent in a field of study related to the job, or the knowledge, skills, and abilities typically acquired through completion of such a program.
  • Mastery of a modern programming language; Java is preferred.
  • Mastery of a modern web application framework such as Spring MVC or Quarkus.
  • Data engineering experience at scale.
  • Proficiency in data modeling across SQL and NoSQL databases.
  • Proficiency in modern microservice-based architectures and methodologies, such as Event Driven Design.
  • Mastery of a version control system; Git is preferred.
  • Proficiency in a Linux- or Unix-based environment.
  • Proficiency in a CI/CD toolchain.
  • Proficiency in destructive testing methodologies and tools.
  • Proficiency in a cloud computing platform and its automation patterns.
  • Proficiency in production systems design, including high availability, disaster recovery, performance, efficiency, and security.
  • Proficiency in defensive coding practices and patterns for high availability.
  • Proficiency in applying design patterns.
  • Proficiency in test-driven development and effective unit test creation.
  • Proficiency in query optimization and troubleshooting.
  • Experience working with 12-factor methodology, understanding its benefits, and demonstrating appropriate patterns to junior team members.
  • Proficiency in designing and implementing RESTful web services.

Nice To Haves

  • Mastery of Java is preferred.
  • Experience with modern web application frameworks such as Spring MVC and Quarkus is preferred.
  • Mastery of Git is preferred.

Responsibilities

  • Collaborate and pair with UX, engineering, and product management team members to create secure, reliable, scalable software solutions.
  • Document and review work, ensuring quality and change-control standards are met.
  • Write custom code or scripts to automate infrastructure, monitoring services, and test cases.
  • Write custom code or scripts for destructive testing to verify production resiliency.
  • Create dashboards, logging, alerting, and responses to proactively capture and address issues.
  • Contribute to enterprise-wide tools for destructive testing, automation, and engineering empowerment.
  • Identify client-facing or technical product enhancements that improve the end-user experience.
  • Identify unsecured code and implement fixes, with or without tooling.
  • Identify, implement, and share technical solutions for use across the organization.
  • Create and architect reusable foundational code elements for products.
  • Create architecture diagrams and other documentation for security reviews and interested parties.
  • Define product Service Level Objectives to measure production reliability and help prioritize backlog work.
  • Answer questions from other product or support teams.
  • Monitor tools and participate in conversations that encourage collaboration across product teams.
  • Provide application support for software running in production.
  • Proactively monitor production Service Level Objectives.
  • Work with vendors and the open-source community to identify and implement product feature enhancements.
  • Work with other product teams to create API specifications and contracts for shared data.
  • Proactively review production performance and capacity across code, infrastructure, data, and message processing.
  • Triage high-priority issues and outages as they arise.
  • Participate in and lead learning activities on modern software design and development practices, including communities of practice.
  • Learn new technologies and best practices used by other technology organizations through reading, tutorials, and videos.
  • Attend conferences and learn how to apply new technologies where appropriate.
  • Build and grow the skillsets of more junior engineers.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service