Football/Sports Data Scientist

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Full Time

SALARY

$500-$800

HOURS PER WEEK

40

DATE UPDATED

Jan 15, 2026

JOB OVERVIEW

We’re Hiring: Football Sports Data Scientist
Company: GameChanger Sports (Part of The Converters Group)

About GameChanger Sports
GameChanger Sports is a forward-thinking football data and digital intelligence company working with clubs across the UK. We build AI-powered tools to help clubs with player recruitment, match analysis, commercial growth, and fan engagement.

We’re now hiring a Football Sports Data Scientist to help us turn data into actionable insights – for both internal club performance and fan-facing platforms.

About the Role
You’ll be responsible for gathering, cleaning, analysing, and visualising football data from multiple sources (including Wyscout, FBref, and club data feeds). Your insights will power:

Performance dashboards for club coaches and analysts

Scouting tools to aid recruitment decisions

Automated match preview and review reports for fans

AI-driven insights for our GameChanger AI platform

Business intelligence to support commercial and sales teams

What You'll Be Doing
Working with data from Wyscout, StatsBomb, FBref, Transfermarkt, and other sources

Cleaning and structuring match, player, and team datasets

Building predictive models for match outcomes, player impact, and performance trends

Creating visual reports (heatmaps, radars, pass networks, etc.)

Supporting weekly automated reporting workflows

Collaborating with developers and product teams on data integrations

Producing club-branded insights for board-level and coaching use

Skills & Experience Required
2+ years working in data science, analytics, or football-specific roles

Proficient in Python (pandas, numpy, matplotlib, seaborn, scikit-learn)

Solid understanding of football metrics (xG, PPDA, xA, possession value models)

Experience with SQL or MongoDB

Strong skills in data visualisation and storytelling

Ability to interpret complex datasets into simple, actionable insights

Familiarity with Wyscout/StatsBomb/FotMob APIs or similar tools

Excellent English communication (written + verbal)

Bonus Points If You Have:
Experience with Tableau, Power BI, or Looker Studio

Experience creating fan-facing content or dashboards

Understanding of football scouting models or recruitment processes

Interest in machine learning, AI automation, or chatbot integrations

Past work with UK or European football clubs

What You’ll Get:

Opportunity to work with professional clubs and coaches

Support from design, marketing, and development teams

Access to tools, APIs, and coaching to help you grow

Be part of building the future of football data from the ground up

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0010
Controller Execution Time ( Jobseekers / Job )  0.0163
Total Execution Time  0.0182
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,510,520 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/FootballSports-Data-Scientist-1356982
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0067 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0004   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1356982
 LIMIT 1 
0.0004   SELECT *
FROM `employers`
WHERE `employer_id` = 799117
 LIMIT 1 
0.0009   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1356982
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-04-19',ej.date_added) duration_daysDATEDIFF('2026-04-19',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-04-19',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1356982' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1356982 
0.0016   UPDATE employer_jobs SET hit_counts '***Apr-15-2025=97***Apr-16-2025=36***Apr-17-2025=15***Apr-18-2025=3***Apr-19-2025=8***Apr-20-2025=1***Apr-21-2025=9***Apr-22-2025=11***Apr-23-2025=5***Apr-24-2025=5***Apr-25-2025=5***Apr-26-2025=1***Apr-27-2025=2***Apr-29-2025=3***Apr-30-2025=2***May-01-2025=4***May-02-2025=4***May-03-2025=3***May-05-2025=4***May-06-2025=5***May-07-2025=2***May-08-2025=1***May-09-2025=1***May-10-2025=2***May-11-2025=2***May-14-2025=3***May-15-2025=1***May-16-2025=3***May-17-2025=3***May-20-2025=5***May-21-2025=1***May-23-2025=1***May-24-2025=3***May-25-2025=5***May-27-2025=1***May-28-2025=1***May-29-2025=2***Jun-01-2025=1***Jun-02-2025=3***Jun-03-2025=2***Jun-04-2025=2***Jun-06-2025=1***Jun-09-2025=1***Jun-10-2025=3***Jun-11-2025=2***Jun-14-2025=3***Jun-16-2025=4***Jun-17-2025=1***Jun-18-2025=2***Jun-21-2025=1***Jun-22-2025=3***Jun-25-2025=1***Jun-27-2025=2***Jun-28-2025=3***Jun-29-2025=2***Jun-30-2025=1***Jul-01-2025=1***Jul-02-2025=1***Jul-03-2025=1***Jul-04-2025=2***Jul-05-2025=2***Jul-06-2025=3***Jul-07-2025=1***Jul-10-2025=4***Jul-12-2025=2***Jul-14-2025=2***Jul-15-2025=1***Jul-17-2025=4***Jul-19-2025=2***Jul-21-2025=1***Jul-23-2025=1***Jul-24-2025=3***Jul-26-2025=2***Jul-29-2025=3***Jul-30-2025=2***Aug-01-2025=2***Aug-03-2025=1***Aug-04-2025=1***Aug-05-2025=3***Aug-06-2025=3***Aug-07-2025=2***Aug-08-2025=1***Aug-10-2025=1***Aug-11-2025=1***Aug-12-2025=2***Aug-13-2025=2***Aug-18-2025=3***Aug-20-2025=1***Aug-21-2025=2***Aug-22-2025=3***Aug-23-2025=2***Aug-25-2025=1***Aug-26-2025=1***Aug-27-2025=1***Sep-01-2025=2***Sep-02-2025=2***Sep-04-2025=2***Sep-05-2025=3***Sep-06-2025=2***Sep-10-2025=2***Sep-11-2025=2***Sep-12-2025=1***Sep-16-2025=2***Sep-17-2025=3***Sep-18-2025=4***Sep-19-2025=1***Sep-20-2025=3***Sep-21-2025=1***Sep-22-2025=2***Sep-23-2025=3***Sep-24-2025=2***Sep-25-2025=1***Sep-26-2025=10***Sep-28-2025=2***Sep-29-2025=2***Oct-03-2025=2***Oct-04-2025=2***Oct-05-2025=2***Oct-07-2025=3***Oct-08-2025=1***Oct-09-2025=1***Oct-13-2025=2***Oct-15-2025=2***Oct-17-2025=1***Oct-18-2025=1***Oct-21-2025=2***Oct-22-2025=1***Oct-23-2025=2***Oct-28-2025=4***Oct-31-2025=1***Nov-01-2025=1***Nov-02-2025=2***Nov-04-2025=3***Nov-06-2025=2***Nov-07-2025=2***Nov-08-2025=4***Nov-10-2025=5***Nov-12-2025=1***Nov-16-2025=1***Nov-18-2025=2***Nov-19-2025=1***Nov-21-2025=1***Nov-22-2025=1***Nov-23-2025=1***Nov-24-2025=2***Nov-27-2025=1***Nov-30-2025=2***Dec-01-2025=1***Dec-03-2025=1***Dec-04-2025=1***Dec-05-2025=4***Dec-07-2025=1***Dec-09-2025=3***Dec-10-2025=3***Dec-14-2025=1***Dec-16-2025=2***Dec-18-2025=1***Dec-19-2025=1***Dec-20-2025=3***Dec-21-2025=2***Dec-22-2025=1***Dec-23-2025=3***Dec-26-2025=1***Dec-28-2025=1***Jan-02-2026=1***Jan-04-2026=2***Jan-05-2026=2***Jan-06-2026=3***Jan-07-2026=1***Jan-08-2026=2***Jan-09-2026=1***Jan-10-2026=1***Jan-11-2026=4***Jan-13-2026=1***Jan-15-2026=16***Jan-16-2026=29***Jan-17-2026=13***Jan-18-2026=4***Jan-19-2026=15***Jan-20-2026=9***Jan-21-2026=10***Jan-22-2026=8***Jan-23-2026=11***Jan-24-2026=7***Jan-25-2026=6***Jan-26-2026=14***Jan-27-2026=4***Jan-28-2026=4***Jan-29-2026=6***Jan-30-2026=3***Jan-31-2026=2***Feb-01-2026=6***Feb-02-2026=4***Feb-03-2026=6***Feb-04-2026=2***Feb-05-2026=2***Feb-06-2026=1***Feb-07-2026=1***Feb-08-2026=1***Feb-09-2026=1***Feb-10-2026=2***Feb-13-2026=1***Feb-14-2026=1***Feb-15-2026=1***Feb-16-2026=1***Feb-17-2026=2***Feb-19-2026=2***Feb-21-2026=1***Feb-22-2026=1***Feb-23-2026=2***Feb-25-2026=1***Feb-26-2026=3***Feb-27-2026=4***Feb-28-2026=3***Mar-01-2026=5***Mar-03-2026=3***Mar-04-2026=1***Mar-05-2026=2***Mar-06-2026=3***Mar-07-2026=2***Mar-10-2026=1***Mar-12-2026=2***Mar-16-2026=11***Mar-17-2026=2***Mar-21-2026=6***Mar-23-2026=1***Mar-24-2026=1***Mar-25-2026=3***Mar-26-2026=5***Mar-27-2026=2***Mar-28-2026=5***Mar-29-2026=9***Apr-03-2026=1***Apr-04-2026=2***Apr-07-2026=14***Apr-09-2026=2***Apr-18-2026=1***Apr-19-2026=1' WHERE job_id'1356982'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Apr-2025=203***May-2025=57***Jun-2025=38***Jul-2025=38***Aug-2025=33***Sep-2025=52***Oct-2025=27***Nov-2025=32***Dec-2025=30***Jan-2026=179***Feb-2026=49***Mar-2026=64***Apr-2026=21' WHERE job_id'1356982'  
0.0008   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1356982' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1356982 
0.0004   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '799117'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)