Home Depot
Principal Software Engineer., Engineering Experience (Remote)
Home Depot, Atlanta, Georgia, United States, 30383
Position Purpose:
The Software Engineer Principal would be responsible for leading the continued design, implementation, and maintenance of our unified CI/CD pipeline. This role will be responsible for creating a seamless, secure, and efficient software delivery process that adheres to all attestation levels and supports deployment across multiple platforms, including cloud and edge environments as well as HD-managed devices. This role will partner with cyber, infrastructure, and application teams to provide continuity across the developer experience. This role will report to the existing senior software Engineer Principal of Engineering Experience.
Principals will help accelerate delivery speed and quality through technical expertise, technical leadership, and by communicating best practices within their assigned IT portfolios. They will be a key contact point across a large portfolio for sharing and engaging with principal software engineers to foster learning and adoption of new technologies. They will interface with our 3rd party vendors to ensure THD's technical needs are met and that we are driving interoperability within our existing technology landscape. The role will typically support 4-6 different teams (removed sentence). They will ensure that teams are making good use of resources, designing and refactoring systems to optimize costs, and will be responsible for identifying opportunities to streamline processes and optimize current infrastructure. They will work cross-portfolio in a transparent, collaborative fashion to establish enterprise standards around testing practices and tooling.
Key Responsibilities:
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 products 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
Direct Manager/Direct Reports:
Typically reports to the Software Engineer Manager or Sr. Manager, Technology Director or Sr. Director.
Travel Requirements:
Typically requires overnight travel less than 10% of the time.
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.
Working Conditions:
Located in a comfortable indoor area. Any unpleasant conditions would be infrequent and not objectionable.
Minimum Qualifications:
Must be eighteen years of age or older.
Must be legally permitted to work in the United States.
Mastery of an object-oriented programming language (preferably Java).
Strong understanding of continuous integration (CI) practices and experience with CI/CD pipelines.
Proficiency in GitHub Actions and YAML for pipeline configuration.
Solid experience with Linux environments and version control systems (preferably Git).
Ability to work collaboratively across teams, providing technical leadership and guidance.
Preferred Qualifications:
6-8 years of relevant work experience
Mastery of a modern scripting language (preferably Python)
Mastery of writing SQL queries against a relational database
Mastery of a version control system (preferably Git)
Proficient in a front-end technology and framework such as HTML, CSS, JavaScript, AngularJS, ReactJS, and JQuery (preferably React)
Mastery of CI/CD toolchain (preferably GitHub Actions)
Mastery of production systems design including High Availability, Disaster Recovery, Performance, Efficiency, and Security
Mastery of understanding business requirements and translating them into sound technical solutions.
Skilled in various CI/CD toolchain implementations (such as TeamCity, Jenkins, and Concourse)
Skilled in a cloud computing platform and the associated automation patterns they provide (preferably Google Cloud Platform)
Proficient in a Linux-based environment
Experience optimizing cloud costs and infrastructure
Capable of understanding complicated systems quickly
Minimum Education:
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.
Preferred Education:
No additional education
Minimum Years of Work Experience:
6
Preferred Years of Work Experience:
No additional years of experience
Minimum Leadership Experience:
None
Preferred Leadership Experience:
None
Certifications:
None
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.
Apply End Date: 11/22/2024
$150,000.00 - $200,000.00
The Software Engineer Principal would be responsible for leading the continued design, implementation, and maintenance of our unified CI/CD pipeline. This role will be responsible for creating a seamless, secure, and efficient software delivery process that adheres to all attestation levels and supports deployment across multiple platforms, including cloud and edge environments as well as HD-managed devices. This role will partner with cyber, infrastructure, and application teams to provide continuity across the developer experience. This role will report to the existing senior software Engineer Principal of Engineering Experience.
Principals will help accelerate delivery speed and quality through technical expertise, technical leadership, and by communicating best practices within their assigned IT portfolios. They will be a key contact point across a large portfolio for sharing and engaging with principal software engineers to foster learning and adoption of new technologies. They will interface with our 3rd party vendors to ensure THD's technical needs are met and that we are driving interoperability within our existing technology landscape. The role will typically support 4-6 different teams (removed sentence). They will ensure that teams are making good use of resources, designing and refactoring systems to optimize costs, and will be responsible for identifying opportunities to streamline processes and optimize current infrastructure. They will work cross-portfolio in a transparent, collaborative fashion to establish enterprise standards around testing practices and tooling.
Key Responsibilities:
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 products 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
Direct Manager/Direct Reports:
Typically reports to the Software Engineer Manager or Sr. Manager, Technology Director or Sr. Director.
Travel Requirements:
Typically requires overnight travel less than 10% of the time.
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.
Working Conditions:
Located in a comfortable indoor area. Any unpleasant conditions would be infrequent and not objectionable.
Minimum Qualifications:
Must be eighteen years of age or older.
Must be legally permitted to work in the United States.
Mastery of an object-oriented programming language (preferably Java).
Strong understanding of continuous integration (CI) practices and experience with CI/CD pipelines.
Proficiency in GitHub Actions and YAML for pipeline configuration.
Solid experience with Linux environments and version control systems (preferably Git).
Ability to work collaboratively across teams, providing technical leadership and guidance.
Preferred Qualifications:
6-8 years of relevant work experience
Mastery of a modern scripting language (preferably Python)
Mastery of writing SQL queries against a relational database
Mastery of a version control system (preferably Git)
Proficient in a front-end technology and framework such as HTML, CSS, JavaScript, AngularJS, ReactJS, and JQuery (preferably React)
Mastery of CI/CD toolchain (preferably GitHub Actions)
Mastery of production systems design including High Availability, Disaster Recovery, Performance, Efficiency, and Security
Mastery of understanding business requirements and translating them into sound technical solutions.
Skilled in various CI/CD toolchain implementations (such as TeamCity, Jenkins, and Concourse)
Skilled in a cloud computing platform and the associated automation patterns they provide (preferably Google Cloud Platform)
Proficient in a Linux-based environment
Experience optimizing cloud costs and infrastructure
Capable of understanding complicated systems quickly
Minimum Education:
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.
Preferred Education:
No additional education
Minimum Years of Work Experience:
6
Preferred Years of Work Experience:
No additional years of experience
Minimum Leadership Experience:
None
Preferred Leadership Experience:
None
Certifications:
None
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.
Apply End Date: 11/22/2024
$150,000.00 - $200,000.00