Senior Principle Performance Engineer

IT Toronto, Ontario

Position at PokerStars

The position requires a passion for technology and engineering to provide technical leadership and professional expertise related to performance testing architecture, design and implementation with detail focus on overall system’s reliability, capacity, and scalability.

Why we need you: -

You will be responsible for building a Performance Testing Center of Enablement that will look at defining and implementing standards, best practices, tools and technologies for the various performance tests and scenarios (Load, Stress, Endurance and Spike), providing a Performance test framework as a service to the organisation and to ensure the efficient utilization of testing resources leading and facilitating the move for cross functional teams and delivery units to adopt and inject tests as part of their delivery pipelines or scheduled production releases.

This role will provide proven experience of performance tools and methodologies and own test strategy and test plans for both generic and release-specific performance testing, whilst also improving Non-Functional Testing skills in a highly sophisticated technical environment based in multiple geographic locations and will bring unparalleled technical acumen and know-how with regards focus on the improvement experience and knowledge of how to integrate and run technically challenging, highly visible Performance testing engagements.

Bringing a Shift Left approach mindset and a focus to engage early in the software development process, the role will champion and drive effective ways to reduce working time (and therefore costs) by avoiding bottlenecks reaching production environments, collecting data analysis and coupling with performance driven metrics and goals.

Who are we looking for: -

You’ll be a performance specialist who understands how features should work in various loads and scale situations and the impact on the rest of the system. You will also craft, develop and implement modular and reusable performance testing solution and framework that will satisfy performance testing requirements and scenarios using industry standard and best of breed tooling. You will ensure performance test scripts and test cases are developed according to the identified test scenarios and test objectives that are in line with the quality goals specified in non-functional requirements document(s). You will be responsible for selecting/maintaining and integrating the appropriate set of tools, processes, and procedures to ensure overall testing efficiency and effectiveness in the operations.

You will analyze performance results and identify performance bottlenecks and reliability concerns, providing insight and identifying optimizations in hardware and software to the responsible development and infrastructure teams. Integrate performance testing into CI/CD practices and scheduled release pipelines and champion, train and mentor developers and engineers to adopt a culture of performance testing. Participate in upfront application and technology requirements, design and functionality reviews and represent performance and scaling needs in product and feature design with developers, usability specialists, user interface designers, and product managers.

Your day to day tasks will involve:

  • Leading all aspects of system performance life-cycle and identify Key Performance Indicators (KPIs) for performance improvements, Produce and maintain KPIs around the testing performed.
  • Consulting with cross functional teams of developers, system engineers, DBAs, architects, and app owners to identify, document, recommend and to define performance testing plans, load profiles, data models, environment specifications etc.
  • Defining standard methodologies related to dependency handling, scalability, and performance monitoring. Collaborate with the Software Development teams to ensure best practices are part of the architecture, design, and development
  • Designing and implementing dashboards and alerts to assist with systems scaling and performance evaluation
  • Generating periodic performance reports for management and team review
  • Creating and executing performance test scripts, cases, and scenarios that will validate system performance according to workflow and load specifications as well as lead trouble shooting and tuning exercises
  • Strategizing, planning, and estimating the assigned work pipeline as well as create and communicate reports and documentation for all performance testing efforts and results
  • Collaborating with the Development, QA, DevOps, SRE and Product Management teams to review and document requirements, execute performance tests and troubleshoot/resolve issues
  • Designing and conducting tests with sophisticated workloads and complex simulated customer contracts to expose potential bottlenecks and failure points.
  • Analyzing performance results to identify system inefficiencies and suggest optimizations to address the same.
  • Analyzing metrics and trends to glean opportunities for optimization
  • Conducting technical presentations to customer-facing and internal teams on how to improve system performance.
  • Innovating solutions to improve performance engineering effectiveness.

As the ideal candidate, you will have:

A minimum of 7+ years of experience in performance testing along with solid software development/scripting experience like Python, C, JAVA, or Scala, and etc along with in-depth knowledge of software system architecture, including front tier, mid-tier, messaging tier, back-end tier etc. as well as practical knowledge and experience with Windows, Linux, macOS, file systems, environmental utilities, etc.

Exposure to large scale software development lifecycle, e.g., collaborating among multiple teams, including Product, Devs, QA, DevOps, Support, etc. is important as is hands on performance engineering experience in large-scale software products, including requirements capturing, analysis, scripting, workload construction, test execution, results analysis, environment troubleshooting, performance optimization/tuning, CPU/memory profiling, etc.

The following is also essential:

  • Proven experience with development and maintenance of performance tests in large-scale multi-tenant web applications
  • Knowledge and experience working with Cloud computing services and frameworks
  • Knowledge and experience in using Visualization Tools to create dashboards for performance analysis
  • Excellent understanding of protocols like Http/Https, SOAP/ XML, REST, ODBC, JDBC, etc.
  • Experience with one or more workload modeling tools like LoadRunner, NeoLoad, JMeter, Gatling, Grinder, Locust, PBench, Siege, ApacheBenchmark, Tsung, etc.
  • Good programming skills with either Python or Java and SQL as well as experience with source control technologies like GitHub, SVN etc.
  • Experience with various software development methodologies as well as with tools like JIRA or HP-ALM
  • Deliverable conscious, self-initiated, independent decision making, dependable and trustworthy

What's in it for you?

The salary for this job is based on experience, so whilst we are not able to go into detail at this stage, we can say that we offer great salary packages and a discretionary annual performance bonus.

We offer health and dental insurance for you and your dependents plus you can join our company pension scheme.

Our in-house training and development team deliver fantastic support to develop your skills and support you in progressing your career.

We have on-site yoga a few times a week and lunch is on us. We also have fresh fruit, snacks and drinks in the office so you won’t go hungry.

What happens next?

We will aim to get back to you as soon as possible. If you meet the criteria, then we’ll invite you to a phone interview and if that goes well we’ll meet you for a face-to-face interview.

The Group

The Stars Group owns or licenses gaming and related consumer businesses and brands, including PokerStars, PokerStars Casino, BetStars, Full Tilt, FOX Bet, BetEasy, Sky Bet, Sky Vegas, Sky Casino, Sky Bingo, Sky Poker, and Oddschecker, as well as live poker tour and events brands. Collectively, these and other brands of The Stars Group have millions of registered customers globally, forming one of the world’s largest and most licensed publicly listed online gaming companies. This role is in the Group’s Richmond Hill, Toronto service office in the IT service management department.

At The Stars Group, we encourage applications from all sections of the community. If you are an applicant with a disability and you require accommodations at any point in our recruitment process, please let our talent acquisition team know when they contact you to invite for interview.