def METHOD_NAME(cmd, workspace_name, spark_pool_name, job_name, executor_size, executors,
                             reference_files=None, configuration=None, tags=None):
    client = cf_synapse_spark_session(cmd.cli_ctx, workspace_name, spark_pool_name)
    files = None
    jars = None
    if reference_files:
        files, jars = categorized_files(reference_files)
    driver_cores = EXECUTOR_SIZE[executor_size]['Cores']
    driver_memory = EXECUTOR_SIZE[executor_size]['Memory']
    executor_cores = EXECUTOR_SIZE[executor_size]['Cores']
    executor_memory = EXECUTOR_SIZE[executor_size]['Memory']
    spark_session_options = SparkSessionOptions(
        tags=tags,
        name=job_name,
        jars=jars,
        files=files,
        conf=configuration,
        driver_memory=driver_memory,
        driver_cores=driver_cores,
        executor_memory=executor_memory,
        executor_cores=executor_cores,
        executor_count=executors)
    return client.create_spark_session(spark_session_options, detailed=True)