Principal Software Engineer
Cleveland, TN - USA
Job Summary
The Principal Software Engineer plays a strategic role in designing and enhancing softwareapplications products websites and digital products across the role will be responsible forproviding technical leadership designing developing and testing highly complex software systems orapplications for software enhancements and new products including cloud-based or internet-related tools forinternal and external consumption. The incumbent will provide technical solutions to enable the company to meetits strategic objectives through effective collaboration with business analysts quality assurance testers andproject managers. The incumbent will lead others to ensure successful teamwork effective development anddelivery of high-quality software solutions.
This is a remote position.
This position is not eligible for sponsorship for work authorization now or in the future including conversion to H1-B visa.
Job duties include contact with other employees and access confidential and proprietary information and/or other items of value and such access may be supervised or unsupervised. The Company therefore has determined that a review of criminal history is necessary to protect the business and its operations and reputation and is necessary to protect the safety of the Companys staff employees and business relationships.
Responsibilities
- Provide technical expertise in software planning cycles and connect with the team to provide feedback onproduct/project estimates and guiding the team in aligning with business goals andtimelines
- Develop strategies to solve highly complex business requirements and analyze technical specifications toimplement the requirements ensuring optimal solutions for complexprojects
- Design and architect software applications and database enhancements or new products in alignment withbusiness requirements and technical specifications defined while considering scalability performance andmaintainability of thesystems
- Strategically guide the process of developing building and testing software systems or applications to meetbusiness requirements enabling the delivery of high-quality and timelysolutions
- Drive high-quality maintainable and scalable code in various programming languages provide guidance andmentoring to less experienced teammembers
- Lead the team responsible for conducting bug fixes to identify and remediate defects in software solutions andensuring the overall stability and reliability of thesoftware
- Supervise the technical documentation including code comments design documents and user manuals whilesetting documentation standards for theteam
- Provide technical leadership and guidance to business analysts quality assurance testers and project managersto ensure that software solutions meet business requirements. Share relevantpast experienceand best practicesto deliver thebest.
- Provide high-level technical support to end-users and make recommendations for enhancement orimprovements to ensure the proper usage and adoption of softwaresolutions
#LI-DNP #NP
Qualifications
POSITION REQUIREMENTS
Required:
- Bachelors Degree in Computer Science Computer Engineering or a related lieu of a degree at least 11 years of experience in software development
- 8 years of experience in software development in the software development industry
- Extensive expertise and knowledge of software development life cycle (SDLC) methodologies and best practices
- Expertise and knowledge of software development tools platforms and languages
- Proven end to end experience in leading the development integration testing and deployment of highly complex cloud-based software solutions or internet-related tools
- Proven experience in working with highly complex relational databases and advanced SQL techniques.
- Proven experience in developing and leading the development of highly scalable and complex Microservices and in-depth knowledge of various integration patterns
- Extensive experience in software architecture and design principles
Preferred:
- Certified Software Development Professional (CSDP) or equivalent certification
- One of the following certifications: Professional Scrum Developer (PSD) and Certified Scrum Developer (CSD)
- Expertise in distributed cloud-based application systems multi-partner and multi-functional software systems.
- Experience in digital roofing configuration and estimation applications including industry leaders their tools available APIs and integrations.
- Understanding of metal roofing installation principles:
- The relationship between the specific installation parts (ridge hip valley) as well as for the panels themselves
- Roofing geometry including the relationship between rise run slope and panel lengths.
TECHNICAL SKILLS
- Database Management Systems
- Programming Languages
- Code Prompt Engineering
- Cloud Technologies & Platforms
- Software Development Lifecycle (SDLC) Methodology
- Continuous Integration and Continuous Deployment (CI/CD)
- Project Management Methodology
- Front-End Coding Languages
- Web Services & APIs
- Systems Integration
- Source Control Systems
- Build Tools and Compilers
- Software Testing & Quality Assurance Methodologies & Tools
- Automated Testing Tools
- Solution Architecture Patterns
- Containerization
Required Experience:
Staff IC
About Company
At Sherwin-Williams, our purpose is to inspire and improve the world by coloring and protecting what matters. Our paints, coatings and innovative solutions make the places and spaces in our world brighter and stronger. Your skills, talent and passion make it possible to live this purp ... View more