diff --git a/src/DrupalCI/Plugin/JobTypes/eslint/ESLintJob.php b/src/DrupalCI/Plugin/JobTypes/eslint/ESLintJob.php
new file mode 100644
index 0000000..7950e4d
--- /dev/null
+++ b/src/DrupalCI/Plugin/JobTypes/eslint/ESLintJob.php
@@ -0,0 +1,61 @@
+<?php
+
+/**
+ * @file
+ * Job class for ESLint jobs on DrupalCI.
+ */
+
+namespace DrupalCI\Plugin\JobTypes\eslint;
+
+use DrupalCI\Plugin\JobTypes\JobBase;
+
+/**
+ * Job for performing a coding standards check using ESLint.
+ *
+ * @PluginID("eslint")
+ */
+class ESLintJob extends JobBase {
+
+  /**
+   * {@inheritdoc}
+   */
+  public $jobType = 'eslint';
+
+  /**
+   * {@inheritdoc}
+   */
+  public $defaultArguments = array(
+    'DCI_PHPVersion' => '5.5',
+    'DCI_CoreRepository' => 'git://drupalcode.org/project/drupal.git',
+    'DCI_CoreBranch' => '8.0.x',
+    'DCI_GitCheckoutDepth' => '1',
+    'DCI_RunScript' => ".node_modules/eslint/bin/eslint.js",
+    'DCI_RunOptions' => ".",
+    'DCI_RunTarget' => "/var/www/html/core"
+  );
+
+  /**
+   * {@inheritdoc}
+   */
+  public $availableArguments = array(
+    // Variables available for any job type.
+    'DCI_UseLocalCodebase' => 'Used to define a local codebase to be cloned (instead of performing a Git checkout)',
+    'DCI_WorkingDir' => 'Defines the location to be used in creating the local copy of the codebase, to be mapped into the container as a container volume.  Default: /tmp/simpletest-[random string]',
+    'DCI_ResultsServer' => 'Specifies the url string of a DrupalCI results server for which to publish job results',
+    'DCI_ResultsServerConfig' => 'Specifies the location of a configuration file on the test runner containg a DrupalCI Results Server configuration to use in publishing results.',
+    'DCI_JobBuildId' => 'Specifies a unique build ID assigned to this job from an upstream server',
+    'DCI_JobId' => 'Specifies a unique results server node ID to use when publishing results for this job.',
+    'DCI_JobType' => 'Specifies a default job type to assume for a "drupalci run" command',
+    'DCI_EXCLUDE' => 'Specifies whether to exclude the .git directory during a clone of a local codebase.',  //TODO: Check logic, may be reversed.
+
+    // Default variables defined for every PHP CodeSniffer job.
+    'DCI_PHPVersion' => 'Defines the PHP Version used within the executable container for this job type.  Default: 5.4',
+    'DCI_CoreRepository' => 'Defines the primary repository to be checked out while building the codebase to test.  Default: git://drupalcode.org/project/drupal.git',
+    'DCI_CoreBranch' => 'Defines the branch on the primary repository to be checked out while building the codebase to test.  Default: 8.0.x',
+    'DCI_GitCheckoutDepth' => 'Defines the depth parameter passed to git clone while checking out the core repository.  Default: 1',
+    'DCI_RunScript' => 'Defines the default run script to be executed on the container.',
+    'DCI_RunOptions' => 'A string containing initial runScript options to append to the run script when performing a job.',
+    'DCI_RunTarget' => 'A string defining the initial runScript target to append to the run script when performing a job.',
+  );
+
+}
diff --git a/src/DrupalCI/Plugin/JobTypes/eslint/drupalci.yml b/src/DrupalCI/Plugin/JobTypes/eslint/drupalci.yml
new file mode 100644
index 0000000..6490692
--- /dev/null
+++ b/src/DrupalCI/Plugin/JobTypes/eslint/drupalci.yml
@@ -0,0 +1,26 @@
+# Job Definition Template for the DrupalCI 'ESLint' Job Type.
+environment:
+  web:
+    - %DCI_PHPVersion%
+setup:
+  checkout:
+    # DCI_UseLocalCodebase plugin can override the checkout array to look like:
+    # - protocol: local
+    #   source_dir: %DCI_SourceDirectory%
+    - protocol: git
+      repo: %DCI_CoreRepository%
+      branch: %DCI_CoreBranch%
+      depth: %DCI_GitCheckoutDepth%
+      checkout_dir: .
+  command:
+    - curl --silent --location https://deb.nodesource.com/setup_0.12 | sudo bash -
+    - sudo apt-get install --yes nodejs
+    - apt-get install --yes build-essential
+    - npm install npm -g
+  composer:
+    - --working-dir="/var/www/html/%DCI_CoderCheckoutDir%" install
+execute:
+  command:
+    - cd %DCI_RunTarget%
+    - npm install
+    - %DCI_RunScript% %DCI_RunOptions%
