Java Software Engineer - Payments (Toronto) at Gamesys Group (Toronto, ON, Canada)
Location: Toronto, ON, Canada
Type: Full Time
Created: 2021-05-06 05:00:21
Gamesys Group is one of the world’s leading gaming operators, with millions of players and 1500+ employees. We believe passionately in what we do. Quite simply, we craft entertainment with care, building trusted brands and creating great experiences that always put the player first.
Our award-winning ventures – including Virgin, Jackpotjoy, Monopoly, Heart and Vera&John – are some of the best known in the industry. Join us and you’ll be joining a big, international group with some great brands and an exciting future. You’ll feel part of one global family, working with smart people, and delivering a great experience for our players. There’s one thing we expect from you, over and above everything else. Be yourself. One of the values in our DNA is ‘stay wonderfully weird’ – and that applies to all of us.
Gamesysplans to expand into new markets across North America.Wearebuilding a newtechnologyteamin Toronto toacceleratethe development ofGamesys’sinternal Excitegaming platform, whichwilldriveourgrowthacross the USA and Canada.
We are building 3 agiledevelopmentteams focusing on our Front End web experience, Payments and game wallet, and our Member administration/Responsible gaming tools. You will be responsible for delivering featuresfortheNorth American marketsandcollaborating with other functions/product areasacross the company – including Architecture, UX Design, ProductandGames tohelp deliver world class gaming products onweb and mobile.
We care deeply about customer experience, high quality software engineering principles,and meeting challenging delivery goals.
The Cashier area is responsible for the flow of money through our systems and is currently comprised of two teams in the UK, one in Ukraine and now one in Canada. We use the Scrum process to manage our workloads, and embrace the three pillars of Scrum Theory by continuously inspecting and adapting, and being transparent about progress and outcomes. We build APIs that need to handle thousands of requests a second in a reliable and performant way to support the gaming side of our business as well as the full payment stack from the frontend pages to the integrations with providers. We are currently undertaking major projects to re-architect parts of our software stack away from Monoliths and towards containerised Microservices.
The tech stack includes Java 11/12, Spring Boot 2.x, Kafka, Docker, Kubernetes, React, and Google Cloud Platform however experience in all these areas is not required. We are looking for an experienced Senior Developer to promote best practises, new and effective ways of working, positively disrupt the team and area and mentor fellow team members to help support our goal of high performance engineering teams.
How You Will Meet The Challenge
Your approach to solutions involves alot of collaboration; you understand that the team is greater than the sum of its parts. By working closely with your fellow team members, you understand that great teamwork leads to a highly efficient team. You have an insatiable curiosity - always learning and asking questions to understand why we are doing what we're doing, and the tenacity to get to the root of things. You prefer to approach challenges in a calm, methodical manner, and can explain your thinking and solutions with clarity.
You are able to mentor and positively challenge your fellow team members, and understand how to foster the levels of trust that make these interactions rewarding for both you and the person you are mentoring. This role is a fantastic opportunity to bring fresh ideas to the team and area and to help raise the bar - one of the responsibilities of the role is to influence and encourage those around you to be the best they can be.
- Solve challenging technical problems within distributed environments.
- Actively participate in design and code reviews
- Using agile methodologies, work together to meet sprint forecast
- Collaborates effectively with other team members by mentoring, coaching, involvement with estimation as a team effort.
- Knowledge of software best practices like Refactoring, Clean Code, Domain Driven Design, SOLID, Enterprise Integration.
- Core server side Java development.
- Experience working with high volume, low latency web applications.
- Relational databases and SQL.
- Experience working with Agile, Lean and/or Continuous Delivery approaches and best practices, such as Continuous Integration, TDD, BDD, Infrastructure as Code etc.
Desirable - any of these are a plus!
- To embrace and learn the best practices with dev-ops, such as Kubernetes, Docker & GO CD.
- Experience with distributed messaging systems such as Kafka.