Categories
Job Descriptions

Lead Software Engineer

Lead Software Engineer

Location: Remote Based
Company and Opportunity
The leading company for youth-sports experiences and path-to-college solutions provider in the U.S. With a history of strong double-digit organic growth, sustained by the acquisition and integration of several complementary companies, and occupies a commanding position at the center of a growing $25 billion U.S. youth athletics market. The portfolio of businesses are some of the most innovative and best known in the youth sports and path-to-college industry. Our leadership is actively investing in the growth of the organization. With the recent hire of its first Chief Technology Officer, we continue to grow our technology team and platform in pursuit of our youth athletics and path-to-college vision.
Position Overview
The Lead Software Engineer will be responsible for leading and implementing the technical direction of an individual Software Engineering team. The Software Engineering discipline, consisting of both Product-focused and Platform-focused teams, is responsible for the design development and maintenance of secure, highly available platform components, applications, and services. This role is a management track engineering role combining architecture and system design with mentoring and technical leadership. Given the growth-stage nature of the team and platform, the Director will provide occasional, episodic opportunities for hands-on coding of a strategic nature. This position reports to the VP Platform Development and is remote based.

This is a management-track engineering role combining architecture and system design with mentoring and technical leadership. The position’s direct reports include a team of software engineers ranging in seniority from entry-level to senior. Given the growth-stage nature of the team and platform, the Lead Software Engineer will perform a meaningful amount of hands-on coding while reviewing and overseeing the work of other team members. The position reports to the Director, Software Engineering and partners with other senior technical staff, including leadership in Software Engineering, Infrastructure, and Platform Development. It is a remote-based role.

The ideal candidate should have experience leading software engineering teams, sustaining mission-critical systems and applications, and be highly proficient in managing technical operations. They should be comfortable working to develop a technical roadmap for a product or platform component in collaboration with peers and stakeholders. They should demonstrate technical skills in architecture and distributed systems design at Internet-scale. Above all else, they should be a servant leader who understands their primary role to be supporting and enabling their team by maintaining a healthy, supportive culture.

Responsibilities
• Support the career development of software engineering managers and individual contributors on a team building and delivering Internet-scale software applications.
• Provide leadership and guidance to an individual engineering team and its members, offering thoughtful and timely coaching and effective feedback.
• Help define the vision, strategy, architecture and implementation for a product or platform component and formalizing them as part of the broader Platform or Product roadmap.
• Chart a course towards delivering core functionality in a reusable, scalable and performant fashion using SOLID and 12-Factor Application design principles.
• Align individual efforts, team initiatives, and higher-level plans to platform and product strategies driven by the company’s strategic goals.
• Work directly with Platform Development, Product, and other stakeholders to help improve the technology.
• Ensure the resiliency, reliability and performance of software through a sustainable development methodology paired with thoughtful testing and release practices.
• Own the full lifecycle of system, application and feature development from needs assessment, through design, testing and release.
• Contribute to overall technical leadership through mentoring, guidance, development of a collegial engineering environment and culture.
Required Skills
• Experience developing a vision for a product or platform, encompassing both business and technical concerns, communicating that that vision to a team, and engaging their willing participation in its realization.
• Experience in software architecture, systems design, development and optimization.
• Ability to think critically about trade-offs in software architecture, design and implementation and explain them to both technical and non-technical audiences.
• Ability to actively coach engineering teams to greater health and performance.
• Ability to develop junior and mid-level talent in engineering roles.
• Experience with proven Software Engineering methods, including distributed source control, test-driven development, code review, and modular, domain-driven design.
• Expertise with patterns for managing large and complex data sets in a variety of datastores and formats for both operational, analytical and data science use cases.
• Experience and understanding of how modern applications are developed and deployed in distributed Cloud-based platforms, infrastructure and distributed systems, particularly AWS.
• Demonstrated technical acumen and grasp of constraints and opportunities for scale.
• Expertise in a programming language such as JavaScript, Python, Ruby, C#, Rust or Go.
• Expertise designing, building, and improving API frameworks using REST and GraphQL.
• Deep expertise in at least one category of frameworks, e.g. Front-End (React, Vue), Data Processing (Spark, Airflow, Kafka), Infrastructure (Consul, Ansible, Terraform) or equivalent.
• Excellent visual, verbal, and textual communication, presentation and storytelling skills.
Experience
• 7+ years’ experience in Data Engineering, Infrastructure Engineering, or Software Development
• 5+ years’ experience managing engineering teams to deliver Internet-scale products
• 3+ years’ experience with primary responsibility for a significant product, platform component or system across the growth and scaling lifecycle