Skip Navigation
Job Details

Software Engineer Principal – Machine Learning Engineering (REMOTE) (163770)

USA - Virtual

  • Date Posted: May 27, 2022
  • Company: HOME DEPOT EMPLOYMENT MANAGEMENT
  • Travel: 0-10%
  • Functional Area: Technology
  • Position Type: Full Time
  • Relocation Provided: No



Email a Friend

Position Description:
Position Purpose:

The Software Engineer Principal is responsible for joining a product team and contributing to the software design, software development, and overall product lifecycle for a product that our users love. The engineering process is highly collaborative. In addition to pairing, Software Engineer Principals field questions from other product teams and encourage cross-team collaboration. They also play an active role in working with 3rd party vendors as well as the open-source community.

Software Engineer Principals create foundational code elements that can be reused as well as architectural diagrams and other product-related documentation. They also define service level objectives for products. In addition, Software Engineer Principals may be involved in product configuration, performance tuning, and testing as well as production monitoring. This position may be involved in designing and implementing AI/ML algorithms to embed directly into software products. The role could interface with Data Science, Business Stakeholders, Technology Infrastructure teams, and Development teams to ensure that business requirements are properly met within a machine learning solution. Other responsibilities may include performing customer outreach, designing ML educational material, and data engineering.

As a Software Engineer Principal, you will be an extremely knowledgeable Engineer on the product team and are expected to build and grow the skillsets of the more junior engineers. There is also an expectation that the Software Engineer Principal will demonstrate expertise in modern software design and development, as well as drive multiple ML initiatives by directing algorithm and technology product design.

Major Tasks, Responsibilities & Key Accountabilities:
70% - Delivery & Execution
Collaborates and pairs with other product team members (UX, engineering, and product management) to create secure, reliable, scalable software solutions
Documents, reviews and ensures that all quality and change control standards are met
Writes custom code or scripts to automate infrastructure, monitoring services, and test cases
Writes custom code or scripts to do destructive testing to ensure adequate resiliency in production
Creates meaningful dashboards, logging, alerting, and responses to ensure that issues are captured and addressed proactively
Contributes to enterprise-wide tools to drive destructive testing, automation, or engineering empowerment
Identifies product enhancements (client-facing or technical) to create a better experience for the end users
Identifies unsecured code areas and implements fixes as they are discovered with or without tooling
Identifies, implements, and shares technical solutions that can be used across the organization
Creates and architects foundational code elements that can be reused many times by a product
Creates meaningful architecture diagrams and other documentation needed for security reviews or other interested parties
Defines Service Level Objectives for product to constantly measure their reliability in production and help prioritize backlog work

20% - Support & Enablement:
Fields questions from other product teams or support teams
Monitors tools and participates in conversations to encourage collaboration across product teams
Provides application support for software running in production
Proactively monitors production Service Level Objectives for products
Works with vendors and the open-source community to help identify and implement feature enhancements in software products
Works with other product teams to create API specifications and contracts for shared data
Proactively reviews the performance and capacity of all aspects of production: code, infrastructure, data, and message processing
Triages high priority issues and outages as they arise

10% - Learning:
Participates in and leads learning activities around modern software design and development core practices (communities of practice)
Learns, through reading, tutorials, and videos, new technologies and best practices being used within other technology organizations
Attends conferences and learns how to apply new technologies where appropriate

Nature and Scope:
Typically reports to the Software Engineer Manager or Sr. Manager, Technology Director or Sr. Director.

For Colorado, Connecticut, Nevada, and New York City residents: The pay range for this position is between $140K and $240K.  Starting salary may vary based on a number of factors including, but not limited to, the position being offered, location, education, training, and/or experience. The Home Depot offers additional competitive financial and non-financial benefits, which may include a performance-based bonus program or a profit-sharing program depending on the position.

Environmental Job Requirements:
Environment:
1. Located in a comfortable indoor area. Any unpleasant conditions would be infrequent and not objectionable.
Travel:
Typically requires overnight travel less than 10% of the time.

Additional Environmental Job Requirements:


ESSENTIAL SKILLS:
Standard Minimum Qualifications:
Must be eighteen years of age or older.
Must be legally permitted to work in the United States.

Additional Minimum Qualifications:
Mastery of an object oriented programming language (preferably Java)
Must be legally permitted to work in the United States

Education Required:
The knowledge, skills and abilities typically acquired through the completion of a bachelor's degree program or equivalent degree in a field of study related to the job.

Years of Relevant Work Experience:
6 years

Certifications & Licenses:

Physical Requirements:
Most of the time is spent sitting in a comfortable position and there is frequent opportunity to move about. On rare occasions there may be a need to move or lift light articles.

Additional Qualifications:

Preferred Qualifications:

  • 6-8 years of relevant work experience
  • Experience in Google Cloud Platform and AI/ML related components such as Vertex AI, BigQueryML, and AutoML
  • Experience in effective data engineering practices and big data platforms such as BigQuery, Datastore, DataFlow, spark, etc
  • Experience in Feature Engineering and Feature Stores
  • Experience in algorithms such as clustering, forecasting, anomaly detection, and neural networks
  • Experience in basic statistics and regression algorithms
  • Experience in advanced machine learning techniques such as NLP, convolutional neural networks, autoencoders, and embeddings generation and utilization
  • Experience in training machine learning models with extremely large datasets
  • Experience with Data Analysis and Machine Learning Tools and Libraries like Jupyter Notebooks, Pandas, Scikit-learn, tensorflow, pytorch, keras, etc.
  • Experience with GPU acceleration (i.e. CUDA and cuDNN)
  • Experience with knowledge graph technologies and techniques
  • Experience in a modern scripting language (preferably Python)
  • Experience in production systems design including High Availability, Disaster Recovery, Performance, Efficiency, and Security
  • Experience in defensive coding practices and patterns for high availability
  • Experience in A/B and/or multi-armed bandit testing
  • Experience in writing SQL queries against a relational database
  • Experience in NoSQL databases
  • Experience in version control systems (preferable Git)
  • Experience in a Linux or Unix based environment
  • Experience in a CI/CD toolchain
  • Experience in REST and effective web service design
  • Familiarity with advanced machine learning architectures GANs, GRU, LSTMs, RNNs, CNNs, style transfer
  • Proficient in modern microservice-based architectures and methodologies
  • Proficient in successful application of design patterns
  • Proficient in test-driven development and effective unit test creation
  • Proficient in query optimization and troubleshooting
  • Proficient in effective data modeling within both SQL and NoSQL databases
  • Experience in working with 12-factor methodology and understanding its benefits, and able to demonstrate appropriate patterns to more junior team members.
Knowledge, Skills, Abilities and Competencies:
Action Oriented: Taking on new opportunities and tough challenges with a sense of urgency, high energy and enthusiasm
Business Insight: Applying knowledge of business and the marketplace to advance the organization's goals
Collaborates: Building partnerships and working collaboratively with others to meet shared objectives
Communicates Effectively: Developing and delivering multi-mode communications that convey a clear understanding of the unique needs of different audiences
Cultivates Innovation: Creating new and better ways for the organization to be successful
Drives Results: Consistently achieving results, even under tough circumstances
Global Perspective: Taking a broad view when approaching issues; using a global lens
Interpersonal Savvy: Relating openly and comfortably with diverse groups of people
Manages Ambiguity: Operating effectively, even when things are not certain or the way forward is not clear
Manages Complexity: Making sense of complex, high quantity, and sometimes contradictory information to effectively solve problems
Nimble Learning: Actively learning through experimentation when tackling new problems, using both successes and failures as learning fodder
Optimizes Work Processes: Knowing the most effective and efficient processes to get things done, with a focus on continuous improvement
Self-Development: Actively seeking new ways to grow and be challenged using both formal and informal development channels
Situational Adaptability: Adapting approach and demeanor in real time to match the shifting demands of different situations


We are an Equal Opportunity Employer and do not discriminate against any employee or applicant for employment because of race, color, sex, age, national origin, religion, sexual orientation, gender identity, status as a veteran, and basis of disability or any other federal, state or local protected class.