def METHOD_NAME(self, job, dependencies=frozenset()):
    """
    Add a job to the queue.
    :param dependencies: jobs on which this job depends.
    """
    submit_cmd = 'sbatch'
    if dependencies:
        job.job_specs['dependency'] = self.job_deps_type + ':' + ':'.join(str(d.jobid) for d in dependencies)
        # make sure job that has invalid dependencies doesn't remain queued indefinitely
        submit_cmd += " --kill-on-invalid-dep=yes"
    # submit job with hold in place
    job.job_specs['hold'] = True
    self.log.info("Submitting job with following specs: %s", job.job_specs)
    for key in sorted(job.job_specs):
        if key in ['hold']:
            if job.job_specs[key]:
                submit_cmd += " --%s" % key
        else:
            submit_cmd += ' --%s "%s"' % (key, job.job_specs[key])
    (out, _) = run_cmd(submit_cmd, trace=False)
    jobid_regex = re.compile("^Submitted batch job (?P<jobid>[0-9]+)")
    res = jobid_regex.search(out)
    if res:
        job.jobid = res.group('jobid')
        self.log.info("Job submitted, got job ID %s", job.jobid)
    else:
        raise EasyBuildError("Failed to determine job ID from output of submission command: %s", out)
    self._submitted.append(job)