The Software Engineer Sr. Principal is responsible for guiding software design and development across multiple engineering teams and principal software engineers. Sr. 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 work closely with Distinguished Engineers to set paved path technology choice direction for the whole portfolio. Sr. Principals 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 6-8 different development teams, which will span a variety of functioning products and/or APIs. They will ensure that teams are making good use of resources, designing and refactoring systems to optimize cloud costs, and will be responsible for identifying opportunities to streamline processes and optimize existing codebases.
8-10 years of relevant work experience
Expertise in developing large enterprise-scale systems using modern web application frameworks such as Java, Node.js, and cloud technologies
Experience with common business processes used in the retail industry
Experience in Agile/Lean development environments
Experience in integrating systems with ERP packages such as SAP
Mastery of a modern scripting language (preferably Python)
Mastery of writing SQL queries against a relational database
Mastery of a version control systems (preferably Git)
Proficient in a front-end technology and framework such as HTML, CSS, JavaScript, ReactJS, and AngularJS
Proficient in a Linux or Unix based environment
Proficient in a CI/CD toolchain
Proficient in destructive testing methodologies and tools
Proficient in a cloud computing platform and the associated automation patterns they provide (preferable Google Cloud Platform)
Proficient in production systems design including High Availability,
Disaster Recovery, Performance, Efficiency, and Security
Proficient in defensive coding practices and patterns for high-availability
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 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
Proficient in designing and implementing RESTful web services