Front End Principal Software Engineer - TrainingPeaks
At TrainingPeaks, we are passionate about helping our customers achieve their fitness goals. TrainingPeaks creates smart and effective endurance training solutions, including web and mobile apps. Our products help athletes commit to a clear goal, structure their training to work out smarter, and monitor their progress as they work toward their event or goal.
Some of our partners include USA Triathlon, USA Cycling, British Cycling, British Triathlon, Triathlon Australia, US Rowing, and many more!
Our software engineers are responsible for creating and supporting sites and services that power our products. Our work is critical to the TrainingPeaks mission:
“Bringing coaches and athletes together, and helping them get better at what they love to do.”
See our blog for some of what we do
As Principal Software Engineer, you will quickly learn the fundamentals of the organization’s product technology stack, successfully identifying positive patterns and opportunities in the code base.
Throughout, you will spend time learning the development team’s collaborative dynamics, get to know individual contributors, and mentor developers in best practices and code design.
Long term, you will continue to help the entire product development organization become more efficient and innovative by making pragmatic technology decisions. You will continuously balance long-term engineering needs with short-term business drivers and help teams choose the right technologies and architectural patterns for the circumstance. Lastly, you will promote a culture of shared learning and drive these goals by promoting a high performance engineering hiring process.
You will sit directly with the Engineering Team, work in close collaboration with product, marketing, sales, and customer teams, and report to the Engineering Manager.
Core Functions:
- Solve our most complex engineering challenges, lead our decision-making process on the most relevant technical solutions for complex business problems.
- Evaluate and make decisions around the use of new or existing technologies and tools, influence other Engineers and stakeholders to build the right systems that can scale to the needs of the business.
- Provide strategic leadership of technology road-map, collaborating with Engineering and Product leadership to define resourcing and prioritization.
- Provide leadership and definition of software engineering best practices, by staying up to date with and continuously exploring and evaluating new software development approaches.
- Consult on technology and product initiatives at early stages (initiation, planning) to provide risk, complexity, systems, and time estimate analysis of efforts.
- Embed in teams to provide strategic architectural and best-practices guidance on day-to-day execution of product road maps. This includes regular hands-on coding with the teams on product initiatives.
- Rapidly learn and evaluate new languages, frameworks, and solutions that support the technical strategy.
- Assist Engineering leadership with hiring effort, providing primary guidance on code test and technology skills evaluation as well as culture fit and best practices vetting.
- Perform other duties as assigned.
Requirements
Required Qualifications:
- 8-15+ years of software engineering experience.
- 2+ years of experience proving success driving pragmatic architecture decisions
- Extensive experience writing operational, production code in a SaaS environment.
- Deep knowledge of at least two programming languages, each ideally within fundamentally different programming paradigms (e.g., object-oriented + functional)
- Proven ability to lead delivery of large-scale high-quality systems
- Proven ability to lead strategic and day-to-day improvements to existing and growing systems using architecture, infrastructure, operations, and software best practices for teams and products.
- Ability to clearly communicate technology strategy to executive leadership, product management, and development teams.
- Focus on servant leadership, with the ability to influence team members without direct reporting lines by creating open, collaborative relationships with other technologists across the department and leading by example through clean, methodical implementations.
Our Tech Stack:
- Cloud architecture: AWS compute & cloud native services (EC2, Lambda, SQS, Fargate, Amplify)
- Databases: SQL Server, ElasticSearch, DynamoDb, S3, Redis
- Back end languages: C#, .NET, .NET core, Python
- Front end languages: JavaScript, React, TypeScript, Web Components, SCSS
- Mobile languages: iOS (Swift, Objective-C), Android (Kotlin, Java), Dart, Flutter
- CI/CD: TeamCity, CodeBuild, CodePipeline
- Automated testing (unit & TDD, integration, end to end): NUnit, Moq, Pytest, Jest, Cypress
- Other tools: GitHub, TargetProcess
Desired Qualifications:
- Experience shipping software in an agile environment with multiple teams and responsibilities.
- Experience with architecture and design of large scale distributed systems built for reliability and scaling.
- Experience with networking protocols, web technologies.
- Experience with large data storage architecture, design patterns, tools, and techniques
- Experience with service-oriented and event-driven architectures and messaging technologies.
- Experience applying clean architecture and sound engineering principles to create modular, maintainable front end systems that outlast the rapidly changing trends in front end patterns, libraries, frameworks, and tools.
Benefits
Compensation:
Peaksware/TrainingPeaks is committed to fair and equitable compensation practices. The salary range for this role is $115,966 - $193,277. Final compensation for this role will be determined by various factors such as a candidate's relevant work experience, skills, and certifications.
This role is eligible for variable compensation including bonus.
Benefits and Perks:
Health
- 100% company-paid Medical for employees with buy-up options
- Dental
- Vision
- Health Savings Account
- Flexible Spending Account
- Dependent Care Flexible Spending Account
- Paid Parental Leave
- Teladoc
- Employee Assistance Program (EAP)
- Additional coverage options such as accident and critical illness insurance and hospital indemnity
Disability and Life
- Company-paid Short Term Disability
- Company-paid Long Term Disability
- Company-paid Basic Life Insurance and AD&D
- Employee-paid Supplemental Life Insurance for Employee, Spouse, and/or Child
Additional*
- 401(K)
- 401(K) Matching
- Pet Insurance
- 9 paid holidays annually and unlimited Flexible Time Off (FTO)
- Free TrainingPeaks, TrainHeroic, MakeMusic accounts, and Alfred Music product
- Access to the Performance and Recovery Center (PARC), our on-site fitness facility
- Employee only access to on-site locker rooms and showers
- Employee only access to secure, indoor bike storage
- Access to our onsite Music Studio
- An assortment of “grab’n go” fruit and snacks as well as on tap cold brew, kombucha, and beer.
- Beautiful onsite cafe that includes indoor and outdoor seating and lounge areas.
- Access to e-bikes available exclusively to Peaksware employees
- Significant investment in resources for employee growth and development
- Corporate discounts on select gym memberships and top brand gear
- Flexible work schedule in a culture of trust
Please contact [email protected] if you require a reasonable accommodation to review our website or to apply online.
---
TrainingPeaks is a member of the Peaksware family of companies including Alfred Publishing, MakeMusic, TrainingPeaks, and TrainHeroic. Peaksware was recognized as #15 on Built in Colorado's "Best Places to Work" list and five times by Outside Magazine's "Best Places to Work"! Through our unique approach to deliberate practice, each company within Peaksware develops software solutions to help users on their individual journeys of skill development and improvement.