Organogram Of Staff Roles & Salaries
Environment Agency
@ukgov.organogram_environment_agency
Environment Agency
@ukgov.organogram_environment_agency
Organogram (organisation chart) showing all staff roles. Names and salaries are also listed for the Senior Civil Servants. Organogram data is released by all central government departments and their agencies since 2010. Snapshots for 31st March, 30th June, 30th September and 31 December will be published. The published data is validated and released in CSV format and OGL-licensed for reuse. For more information about this series, see: http://guidance.data.gov.uk/organogram-data.html
Publisher name: Environment Agency
Last updated: 2025-04-30T04:00:21Z
CREATE TABLE n_2011_03_31_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" DOUBLE -- Payscale Minimum (£),
"payscale_maximum" DOUBLE -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2011_03_31_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" DOUBLE,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" VARCHAR -- Actual Pay Floor (£),
"actual_pay_ceiling" VARCHAR -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" VARCHAR -- Valid?
);CREATE TABLE n_2011_09_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" DOUBLE -- Payscale Minimum (£),
"payscale_maximum" DOUBLE -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2011_09_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" VARCHAR -- Valid?
);CREATE TABLE n_2012_03_31_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" DOUBLE -- Payscale Minimum (£),
"payscale_maximum" DOUBLE -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2012_03_31_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2012_09_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" DOUBLE -- Payscale Minimum (£),
"payscale_maximum" DOUBLE -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2012_09_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2013_09_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" DOUBLE -- Payscale Minimum (£),
"payscale_maximum" DOUBLE -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2013_09_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2015_03_31_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2015_03_31_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2016_03_31_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2016_03_31_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2016_09_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2016_09_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2017_03_31_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2017_03_31_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2017_09_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2017_09_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2018_03_31_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2018_03_31_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2018_09_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2018_09_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2019_03_31_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);Anyone who has the link will be able to view this.