Endurance is seeking a highly motivated Senior Software Engineer for our SLC, UT office. The Senior Software Engineer plays a key role within each phase of the software development lifecycle by applying their technical skills and experiences to improve Endurance software design and development methods. This individual will work cross-functionally with the company organization and groups which include security, operations, and other development teams. As a Senior Engineer, this individual will contribute to the success of our engineering teams through collaboration and mentoring.
As a Senior Software Engineer, you will:
ENGINEER QUALITY SOFTWARE. Deliver software applications that are engineered effectively and efficiently. Deliver software applications that meet customer needs, company objectives, and quality expectations. Contribute to the project discovery process, participate in the software development lifecycle, and lead the way in producing enterprise-class web applications.
MENTOR TEAMS. Mentor members of our engineering teams throughout the development lifecycle in the areas of process, tools, design, quality, and engineering competency to deliver high-quality software products on a consistent and effective timeline.
FACILITATE CONTINUOUS IMPROVEMENT. Collaborate with cross-functional teams to ensure continuous improvement in all software products. Assist with engineering project planning activities and participate in an enterprise-wide effort to share knowledge and improve our product.
- Write clean, well-formed, well-tested, and maintainable software following the accepted coding standards and using best software development practices.
- Architect, design, develop, maintain, and enhance extremely high-quality software products.
- Resolve problems of any scope and provide assistance to other team members on a consistent basis
- Identify, troubleshoot, debug, and resolve defects in software and related systems on a senior level.
- Direct the project discovery process to meet desired business outcomes.
- Understand and properly use current major programming paradigms (and associated styles) to meet desired business outcomes.
- Lead the way with impactful feedback to peers during code reviews and improvements to the code review process.
- Identify ways to optimize our software products to provide for the needs of our enterprise scale business.
- Identify feasibility and scope in work assignments on a senior level.
- Mentor other developers and improve the overall software product quality and team through effective mentorship.
- Create enterprise-class architectural proposals and contribute to a peer-review based process to evaluate how well they meet business needs and outcomes.
- Use a deep and comprehensive understanding of the hardware, protocols, and technologies used for internet infrastructure to meet objectives.
- Understand current advancements in web technologies and how they can be used to improve our software product.
- Demonstrate impeccable judgment in selecting methods and techniques for obtaining solutions.
- Collaborate on the introduction of new technologies with the leadership team.
- Address any development business need by creating a solution from concept to architecture to planning to development to deployment.
- Provide for the needs of our enterprise scale business with performant architectural decisions.
- Demonstrate experience in identifying, analyzing, and resolving performance related issues on a senior level.
- Communicate effectively with team members, stakeholders, and demand generators regarding technical details, requirements, goals, roadmaps, risks, and deliverables.
- Improve the process of engineering and deployment with a strong understanding of the software development lifecycle.
- Identify innovative solutions to important business problems.
- Act independently to determine methods and procedures on new or special assignments.
- Help to maintain the accepted coding standards and software development practices.
- Having broad expertise or unique knowledge uses skills to contribute to the development of company objectives and principles and to achieve goals in creative and effective ways.
- May supervise the activities of others.
- BA/BS degree or equivalent practical experience.
- 5 years of experience developing websites and applications.
- Fluency in at least one server-side computing language
- Experience with client-side scripting frameworks
- Strong level of comfort with the command line, Git, and development tools.
- Over 10 years of experience in software and system development.
- Strong attention to detail.
- Strong understanding in several server-side computing languages
- Strong understanding of several client-side scripting frameworks
- Experience with Agile Scrum SDLC
- Excellent communication, project management, and organizational skills.