THE JOB
As a Senior Software Engineer, you will apply your passion for technology and live experiences as we work together to build a world-class Sales Platform platform. In this deeply technical position, you'll work closely with the team to build reliable and scalable solutions to tough technical challenges. You'll deliver great quality code and innovative solutions while growing your skills as both a technical contributor and leader through code reviews, pairing sessions, mentorship opportunities, and both learning and teaching skills to the team. We're a relatively small team which means you will play a significant and impactful role in contributing to our most important tech systems., informing our culture, and establishing and maintain the high technical bar we've established across our product.
Our clients, who include some of the world's biggest musicians and most sought-after events, rely on us to provide a stable, performant, and reliable solution that can scale quickly to handle unpredictable demand and large volumes of traffic and data. You'll get your hands dirty writing code, architecting solutions, and contributing directly to these systems. Through continuous deployment, you'll ship frequently and have measurable impact on our product that you can feel proud of. You'll collaborate with talented developers, designers, and product manager, using your deep technical insight to ensure we're not only building the best software but also building the right software in the best way possible.
TECK STACK
We primarily uses Ruby on Rails to serve our application data via a combination of REST and GraphQL APIs to a variety of React front-end clients. We're constantly adopting and testing new tools and technologies within our service-based architecture, so you'll see some Elixir, Java, and Rust sprinkled in there too.
Our primary datastores are MongoDB, Postgres, and Elastic, though we also use BigQuery. We deploy to GCP and manage our systems with Kubernetes and maintain a continuous deployment pipeline that allows us to ship quickly. Hundreds of thousands of people can come to our site vying for thousands of tickets, so we need to scale quickly and intelligently to handle this demand and prevent conflicts.
WHAT YOU WILL BE DOING
• Writing new React components with our GraphQL API, building new features, and maintaining existing ones
• Architecting new back-end data models and services in Ruby on Rails and Elixir Phoenix
• Testing your code with automation
• Working closely with Product Managers and Designers to find the best solutions
• Pair-programming with talented developers
• Providing mentorship and career guidance to other developers
Our job descriptions evolve with our business needs and priorities. In addition to the description above, your role may include additional projects and team support as needed.
WHAT YOU NEED TO KNOW (or TECHNICAL SKILLS)
• 5+ years of experience working with productive software engineering teams and writing high-quality software
• Experience with Ruby on Rails and React is a must and will enable you to hit the ground running!
• Effective communicator, written and oral, as this role will be working closely with people from all over the organization
• An independent, fast-learning, self-starter who takes ownership over solving hard problems
• Empathy and interest in supporting and growing your teammates and yourself via feedback, pairing, and code reviews
• Experience with any of the following technologies is a bonus: Elixir, GraphQL. Mongo, Postgres, Elastic, Redis, Java, and Kafka (or similar)
• COVID-19 vaccination will be required for this position, subject to legally entitled accommodations
YOU (BEHAVIOURAL SKILLS)
• Business Acumen – You understand and can apply general business concepts, using external networks to understand market situations and industry.
• Passionate – A love for your craft that pushes you to strive for elegance and quality in your work.
- Winning Teamwork – Collaborating with others in a respectful manner and openly sharing information amongst the team to assist in achieving Corporate goals and objectives. Taking the time to empathize and understand where others are coming from, along with showing recognition and appreciation for the contribution of others.
• Inquisitive – A forever student, always seeking to learn and grow with and from your peers.
- Problem Solving and Innovation – Gathering appropriate perspectives and insights and seeking win-win solutions by remaining open to alternative approaches and being proactive in generating new ideas. Ability to maintain a balanced perspective and see all sides of an issue and manage problems in a timely and effective manner. A free and independent thinker, open to new ideas and concepts.
- Organizational Skills – Manages competing priorities of several teams/departments/locations. Tasks and project management orientation (with the ability to hold others accountable).