Senior Software Developer

theScore Logo

theScore

πŸ“Remote - Canada

Summary

Join PENN Entertainment's digital team and contribute to the development and enhancement of cutting-edge online gaming and sports media products. As a key member of the Sports Modeling Automation Team, you will work with a distributed team of engineers, product managers, and designers to build and improve services that integrate game data from multiple sources. You will develop event-driven distributed systems, build internal tools and libraries, and work with data science and data engineering teams. The role requires strong computer science fundamentals, experience with Java and related technologies, and excellent communication skills. PENN Entertainment offers a competitive compensation package, a fun work environment, and opportunities for career progression.

Requirements

  • Strong Computer Science Foundation: Solid understanding of data structures, distributed systems, and software design
  • Passionate About Clean Code: Commitment to clean architecture and software craftsmanship
  • Versatile Developer: Experience with modern web frameworks and API development
  • Adaptable Learner: Proficiency in Java with a willingness to learn new technologies and frameworks (Quarkus)
  • Database Proficiency: Strong experience with relational databases such as PostgreSQL and MySQL
  • Comfortable with Command Line: Proficient in terminal operations
  • Familiar with Containerization: Knowledge of Kubernetes and container orchestration
  • Caching Knowledge: Understanding of caching strategies and tools
  • Problem-Solving Skills: Excellent analytical abilities and independent troubleshooting
  • Strong Communicator: Ability to convey complex technical concepts to both technical and non-technical stakeholders

Responsibilities

  • Develop and Enhance the Game State Services: Work primarily with Java and the Quarkus framework to build and improve services that will integrate game data from multiple sources and manage its state
  • Develop event-driven distributed systems that process large amounts of data and integrate with downstream back end services
  • Build internal tools and libraries to help accelerate other backend teams
  • Build streaming data pipelines
  • Work with data science and data engineering teams to build best-in-class SDLC processes
  • Oversee the design and maintenance of data systems and contribute to the continual enhancement of the data platform
  • Collaborate with the team to define, track, and meet SLOs
  • Maintain and expand existing systems, tooling and infrastructure
  • Other duties as required
  • Ensure System Reliability: Implement robust monitoring and alerting mechanisms using tools like DataDog
  • Participate in Agile Processes: Engage in the design, architecture, and delivery of new features within a collaborative agile/scrum environment
  • Deploy to Cloud Infrastructure: Manage deployments of services and applications to our cloud platforms
  • Strategic Partnership: Work closely with the tech lead and engineering manager to help set the team's direction
  • Demonstrate Technical Proficiency: Showcase expertise in the team's tech stack, tooling, and architecture to lead wide-ranging projects effectively
  • On-Call Rotation: Participate in our on-call rotation to address critical issues during off-business hours

Preferred Qualifications

  • Knowledge of other programming language (e.g, Elixir, Python, GO)
  • Reactive programming
  • Experience with Quarkus framework

Benefits

  • Competitive Compensation Package
  • Fun, Relaxed Work Environment
  • Education and Conference Reimbursements
  • Parental Leave Top-Up
  • Career Progression Opportunities and Mentorship

Share this job:

Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.