diff --git a/jenkins/gerrit-bazel-test.sh b/jenkins/gerrit-bazel-test.sh
index 5f2aebf..a826e52 100644
--- a/jenkins/gerrit-bazel-test.sh
+++ b/jenkins/gerrit-bazel-test.sh
@@ -15,7 +15,7 @@
 
 echo 'Test in Note DB mode'
 echo '----------------------------------------------'
-GERRIT_ENABLE_NOTEDB=TRUE bazel test $BAZEL_OPTS //...
+bazel test --test_env=GERRIT_NOTEDB=READ_WRITE $BAZEL_OPTS //...
 
 echo 'Test PolyGerrit locally'
 echo '----------------------------------------------'
diff --git a/jenkins/gerrit-bazel-verifier-test.sh b/jenkins/gerrit-bazel-verifier-test.sh
index 01e7f86..759765b 100644
--- a/jenkins/gerrit-bazel-verifier-test.sh
+++ b/jenkins/gerrit-bazel-verifier-test.sh
@@ -7,24 +7,25 @@
 echo "Test with mode=$MODE"
 echo '----------------------------------------------'
 
-if [ "$MODE" == "notedb" ]
+export BAZEL_OPTS="--spawn_strategy=standalone --genrule_strategy=standalone \
+                 --test_output errors \
+                 --test_summary detailed --flaky_test_attempts 3 \
+                 --test_verbose_timeout_warnings --build_tests_only \
+                 --nocache_test_results \
+                 --test_tag_filters=-elastic,-flaky"
+
+if [[ "$MODE" == *"reviewdb"* ]]
 then
-  GERRIT_NOTEDB="--test_env=GERRIT_NOTEDB=READ_WRITE"
+  bazel test $BAZEL_OPTS //...
 fi
 
-if [ "$MODE" == "default" ] || [ "$MODE" == "notedb" ]
+if [[ "$MODE" == *"notedbReadWrite"* ]]
 then
-  export BAZEL_OPTS="--spawn_strategy=standalone --genrule_strategy=standalone \
-                   --test_output errors \
-                   --test_summary detailed --flaky_test_attempts 3 \
-                   --test_verbose_timeout_warnings --build_tests_only \
-                   --nocache_test_results \
-                   --test_tag_filters=-elastic,-flaky"
-
+  GERRIT_NOTEDB="--test_env=GERRIT_NOTEDB=READ_WRITE"
   bazel test $GERRIT_NOTEDB $BAZEL_OPTS //...
 fi
 
-if [ "$MODE" == "polygerrit" ]
+if [[ "$MODE" == *"polygerrit"* ]]
 then
   if [ -z "$DISPLAY" ]
   then
diff --git a/jenkins/gerrit-buck-test.sh b/jenkins/gerrit-buck-test.sh
index c691157..38f4c74 100644
--- a/jenkins/gerrit-buck-test.sh
+++ b/jenkins/gerrit-buck-test.sh
@@ -18,7 +18,8 @@
 
   echo 'Test in Node DB mode'
   echo '----------------------------------------------'
-  GERRIT_ENABLE_NOTEDB=TRUE buck test --no-results-cache --exclude flaky
+  export GERRIT_NOTEDB=READ_WRITE
+  buck test --no-results-cache --exclude flaky
 
   if [ ! -d polygerrit-ui ]
   then
diff --git a/jenkins/gerrit-buck-verifier-test.sh b/jenkins/gerrit-buck-verifier-test.sh
index 4c74ddf..b0d5813 100644
--- a/jenkins/gerrit-buck-verifier-test.sh
+++ b/jenkins/gerrit-buck-verifier-test.sh
@@ -11,17 +11,18 @@
   echo "Test with mode=$MODE"
   echo '----------------------------------------------'
 
-  if [ "$MODE" == "notedb" ]
-  then
-    export GERRIT_NOTEDB=READ_WRITE
-  fi
-
-  if [ "$MODE" == "default" ] || [ "$MODE" == "notedb" ]
+  if [[ "$MODE" == *"reviewdb"* ]]
   then
     buck test --no-results-cache --exclude flaky
   fi
 
-  if [ "$MODE" == "polygerrit" ]
+  if [[ "$MODE" == *"notedbReadWrite"* ]]
+  then
+    export GERRIT_NOTEDB=READ_WRITE
+    buck test --no-results-cache --exclude flaky
+  fi
+
+  if [[ "$MODE" == *"polygerrit"* ]]
   then
     if [ -z "$DISPLAY" ]
     then
diff --git a/jenkins/gerrit-verifier-change.groovy b/jenkins/gerrit-verifier-change.groovy
index 80b9422..6fd540a 100644
--- a/jenkins/gerrit-verifier-change.groovy
+++ b/jenkins/gerrit-verifier-change.groovy
@@ -32,8 +32,10 @@
   static int numRetryBuilds = 3
   static int myAccountId = 1022687
   static int waitForResultTimeout = 10000
+  static Map buildsList = [:]
 }
 
+
 def gerritPost(url, jsonPayload) {
   def gerritPostUrl = Globals.gerrit + url
   def curl = ['curl', '-n', '-s', '-S',
@@ -87,31 +89,32 @@
                     "{\"message\": \"$msgPrefix Gerrit-CI Flow: $buildUrl\", \"notify\" : \"NONE\" }")
 }
 
-def waitForResult(build) {
-  def result = null
+def waitForResult(b) {
+  def res = null
   def startWait = System.currentTimeMillis()
-  while(result == null && (System.currentTimeMillis() - startWait) < Globals.waitForResultTimeout) {
-    result = build.getResult()
-    if(result == null) {
+  while(res == null && (System.currentTimeMillis() - startWait) < Globals.waitForResultTimeout) {
+    res = b.getResult()
+    if(res == null) {
       Thread.sleep(100) {
       }
     }
   }
-  return result == null ? Result.FAILURE : result
+  return res == null ? Result.FAILURE : res
 }
 
-def getVerified(result) {
-  if(result == null) {
-    return 0;
-  }
-
-  switch(result) {
-    case Result.SUCCESS:
-      return +1;
-    case Result.FAILURE:
-      return -1;
-    default:
-      return 0;
+def getVerified(acc, res) {
+  switch(acc) {
+        case 0: return 0
+        case 1:
+          if(res == null) {
+            return 0;
+          }
+          switch(res) {
+            case Result.SUCCESS: return +1;
+            case Result.FAILURE: return -1;
+            default: return 0;
+          }
+        case -1: return -1
   }
 }
 
@@ -127,6 +130,26 @@
   } != null
 }
 
+def buildsForMode(refspec,sha1,changeUrl,mode,tools) {
+    def builds = []
+    for (tool in tools) {
+      def buildName = "Gerrit-verifier-$tool"
+      def key = "$tool/$mode"
+      builds += {
+                  retry ( Globals.numRetryBuilds ) {
+                    Globals.buildsList.put(key, 
+                      build(buildName, REFSPEC: refspec, BRANCH: sha1,
+                            CHANGE_URL: changeUrl, MODE: mode))
+                    println "Builds status:"
+                    Globals.buildsList.each {
+                      n, v -> println "  $n : ${v.getResult()}\n    (${v.getBuildUrl() + "console"})"
+                    }
+                  }
+                }
+    }
+    return builds
+}
+
 def buildChange(change) {
   def sha1 = change.current_revision
   def changeNum = change._number
@@ -136,42 +159,42 @@
   def branch = change.branch
   def changeUrl = Globals.gerrit + "#/c/" + changeNum + "/" + patchNum
   def refspec = "+" + ref + ":" + ref.replaceAll('ref/', 'ref/remotes/origin/')
+  def tools = ["buck"]
+  def modes = ["reviewdb"]
+
+  if(branch == "master") {
+    tools += ["bazel"]
+  }
 
   println "Building Change " + changeUrl
 
-  def b
+  if(branch == "master") {
+    modes += "notedbReadWrite"
+
+    if(polygerritTouched(changeNum, sha1)) {
+      modes += " polygerrit"
+    }
+  }
+
+  def builds = []
+  modes.collect { buildsForMode(refspec,sha1,changeUrl,it,tools,branch) }.each { builds += it }
+
   ignore(FAILURE) {
-    retry ( Globals.numRetryBuilds ) {
-      b = build("Gerrit-verifier", REFSPEC: refspec, BRANCH: sha1,
-                CHANGE_URL: changeUrl, MODE: "default")
-    }
-  }
-  def result = waitForResult(b)
-  gerritReview(b.getBuildUrl() + "consoleText",changeNum,sha1,getVerified(result), "")
-
-  if (result == Result.SUCCESS && polygerritTouched(changeNum, sha1)) {
-    ignore(FAILURE) {
-      retry(Globals.numRetryBuilds) {
-        b = build("Gerrit-verifier", REFSPEC: refspec, BRANCH: sha1,
-            CHANGE_URL: changeUrl, MODE: "polygerrit")
-      }
-    }
-
-    result = waitForResult(b)
-    gerritReview(b.getBuildUrl() + "consoleText", changeNum, sha1,
-        getVerified(result), "PolyGerrit - ")
+    parallel (builds)
   }
 
-  if(result == Result.SUCCESS && branch=="master") {
-    ignore(FAILURE) {
-      retry ( Globals.numRetryBuilds ) {
-        b = build("Gerrit-verifier", REFSPEC: refspec, BRANCH: sha1,
-                  CHANGE_URL: changeUrl, MODE: "notedb")
-      }
-    }
+  def results = Globals.buildsList.values().collect { waitForResult(it) }
+  def res = results.inject(1) { acc, buildResult -> getVerified(acc, buildResult) }
 
-    result = waitForResult(b)
-    gerritReview(b.getBuildUrl() + "consoleText",changeNum,sha1, getVerified(result), "NoteDB - ")
+  gerritReview(build.startJob.getBuildUrl() + "console", changeNum, sha1, res, "")
+
+  switch(res) {
+    case 0: build.state.result = ABORTED
+            break
+    case 1: build.state.result = SUCCESS
+            break
+    case -1: build.state.result = FAILURE
+             break
   }
 }
 
diff --git a/jenkins/gerrit-verifier.yaml b/jenkins/gerrit-verifier.yaml
index f5cb7ad..5138b9b 100644
--- a/jenkins/gerrit-verifier.yaml
+++ b/jenkins/gerrit-verifier.yaml
@@ -23,9 +23,8 @@
           echo "Updating all submodules ..."
           git submodule update || ( fetch_submodules && git submodule update )
 
-- job:
-    name: Gerrit-verifier
-    description: "Gerrit build of open change with BUCK\n"
+- defaults:
+    name: verifier-defaults
     concurrent: true
     parameters:
       - string:
@@ -40,15 +39,13 @@
       - choice:
           name: MODE
           choices:
-            - default
-            - notedb
+            - reviewdb
+            - notedbReadWrite
             - polygerrit
           description: "Type of verification to execute"
-
     logrotate:
       numToKeep: 256
       artifactNumToKeep: 1
-
     properties:
        - authorization:
            anonymous:
@@ -64,18 +61,6 @@
          disable-submodules: true
          skip-tag: true
          basedir: gerrit
-
-    builders:
-      - fetch-all-submodules
-      - shell:
-         !include-raw-escape: gerrit-buck-build.sh
-      - shell:
-         !include-raw-escape: gerrit-buck-verifier-test.sh
-      - shell:
-         !include-raw-escape: gerrit-bazel-build.sh
-      - shell:
-         !include-raw-escape: gerrit-bazel-verifier-test.sh
-
     wrappers:
       - xvfb:
           installation-name: Xvfb
@@ -97,6 +82,32 @@
       - groovy-postbuild:
           script: "manager.logContains('timed out') ? manager.buildAborted() : false"
 
+
+- job:
+    name: Gerrit-verifier-buck
+    description: "Gerrit build of open change with BUCK\n"
+    defaults: verifier-defaults
+
+    builders:
+      - fetch-all-submodules
+      - shell:
+         !include-raw-escape: gerrit-buck-build.sh
+      - shell:
+         !include-raw-escape: gerrit-buck-verifier-test.sh
+
+- job:
+    name: Gerrit-verifier-bazel
+    description: "Gerrit build of open change with BUCK\n"
+    defaults: verifier-defaults
+    node: bazel
+
+    builders:
+      - fetch-all-submodules
+      - shell:
+         !include-raw-escape: gerrit-bazel-build.sh
+      - shell:
+         !include-raw-escape: gerrit-bazel-verifier-test.sh
+
 - job:
     name: 'Gerrit-verifier-change'
     project-type: flow
