Principal Engineer
About Snap! Mobile, Inc:
Snap! Mobile is the essential technology platform for school athletics and activities. To date, Snap! Raise, our industry-leading fundraising solution, has raised more than $700 million dollars for over 100,000 groups and teams through over 12.5 million participants and donors. In addition to the Snap! Raise fundraising platform, Snap! Mobile further supports schools, groups, and teams with its other solutions: FanX (communication and fan engagement in a custom app), Snap! Spend (full-service money management), Snap! Store (year-round access to spirit wear), Snap! Manage (integrated scheduling, rostering, and registration), Snap! Insights (dashboard for custom financial reporting and fundraising oversight), and Snap! Sponsor (marketplace for local sponsors).
About Us
Our applications are built primarily using Node.js, TypeScript (Vue.js), and Postgres, with some legacy systems on Ruby on Rails, PHP, Python, and MySQL (RDS). We utilize AWS and deploy to production on average 10 times per day. We are focused on Continuous Delivery and CI/CD pipelines. We value being agile over doing "Agile."
This is a Full-Time, Remote position.
Our Team Values:
Team Work: We support and help one another to achieve our goals together
Curiosity: We push ourselves to always learn and improve
Initiative: We take ownership of our work from start to finish
Drive and Urgency: We motivate ourselves and those around us to push forward
Honesty: We value direct, open, and respectful communication
Integrity: We do as we say; We keep our commitments
Principal Software Engineer:
The Principal Software Engineer will help build out our vision through the development and ownership of our frontend and backend systems for our Snap! products. The frontend system is built using React and GraphQL and connects to the backend via our API Gateway. The backend system provides an internal API within the platform. This role requires understanding of both Front End to Back End development. 60% of the time is dedicated to building and improving customer interactions with our product. 30% of the time is dedicated to planning, documenting, and working with various domains. 10% of the time will be dedicated to helping other developers and strengthening a positive team culture.
Responsibilities:
- Build high performing UIs
- Build unit tests to ensure quality of work
- Build GraphQL APIs within the product layer and integrate with our API gateway
- Build unit tests to ensure quality of work
- Contribute to product documentation with product managers
- Document endpoints as needed, including writing self documenting code
- Support existing APIs
- Provide suggestions on roadmap priorities and improvements
- Work with developers from across the organization to understand and document their challenges
- Estimate internally in the dev pod to develop a timeline the pod is able to commit to
- Support service change management and uptime
- Provide technical and architectural guidance to more junior developers
- Pair program with more junior developers to help drive projects across the finish line
- Collaborate and build architectural diagrams with the Engineering Manager
- Setting best practices and standards to the team
- Maintain a positive and respectful culture
Qualifications:
- 10+ years of professional experience building software applications in any of our tech stack languages
- 8+ years professional experience working in a team to achieve goals together
- 5+ years experience working with Jira to document and break down development work
- 2+ years of professional experience building GraphQL APIs
- Associates Degree in Computer Science or similar field OR equivalent work experience
- Clear understanding of the full lifecycle of software development
- Strong understanding of security best practices, and the ability to deliver quality development work
- Strong communication and writing skills
- Understanding of event driven systems a plus
- PHP and Magento experience a plus
Our Primary Tech Stack:
- NodeJS, JavaScript, TypeScript
- ReactJS frontends and VueJS frontends
- WebComponents via StencilJS
- GraphQL APIs + GraphQL Federation via API Gateway
- Kubernetes, Docker, Helm
- Github CI/CD with a Continuous Delivery Model
- Postgres, Redis, DynamoDB, Kafka
- AWS Cloud Services
- Distributed Service and Frontend Architecture
Compensation depending on the level of experience: Range $140k - $150k
Snap! Mobile, Inc. is proud to offer the following benefits:
- Medical, Dental, Vision
- 401K with a 4% match from the company
- 13 Paid Holidays
- Unlimited PTO
CA Residents click here for privacy policy
We use E-verify to onboard new hires. Please click here to learn more.