Google Job Search Developer's Cheat Sheet
Tags: tutorial, career, webdev
Published: 2020-08-14 12:43:56

Google Job Search, aka Google for Jobs, has been around a couple of years now as the fancy-pants AI powered official job search platform for Google.

![Google Jobs](https://i.imgur.com/jUFCxbP.gif)

Demand for jobs, in particular work-from-home jobs is off the charts right now (see the graph below), so I thought I would put together a **Google Job Search Developer's Cheat Sheet**.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/ek4tglg2ri1tr1n8gvqb.png)

## Table Of Contents
* [Getting Started](/colinmcdermott/google-job-search-developer-s-cheat-sheet-i06#Getting-Started)
* [Eligibility](/colinmcdermott/google-job-search-developer-s-cheat-sheet-i06#Eligibility)
* [Hosting requirements](/colinmcdermott/google-job-search-developer-s-cheat-sheet-i06#Hosting-requirements)
* [JobPosting Structured Data](/colinmcdermott/google-job-search-developer-s-cheat-sheet-i06#JobPosting-Structured-Data)
* [Required properties](/colinmcdermott/google-job-search-developer-s-cheat-sheet-i06#Required-properties)
* [Recommended properties](/colinmcdermott/google-job-search-developer-s-cheat-sheet-i06#Recommended-properties)
* [Indexing API](/colinmcdermott/google-job-search-developer-s-cheat-sheet-i06#Indexing-API)
* [XML Sitemap](/colinmcdermott/google-job-search-developer-s-cheat-sheet-i06#XML-Sitemap)
* [Example](/colinmcdermott/google-job-search-developer-s-cheat-sheet-i06#Example)
* [Full Google Job Search Guide](/colinmcdermott/google-job-search-developer-s-cheat-sheet-i06#Full)

## Getting Started <a name="Getting-Started"></a>

### Eligibility <a name="Eligibility"></a>

Only sites containing job postings (and video live-streaming) sites can currently use the Google Indexing API.

### Hosting requirements <a name="Hosting-requirements"></a>

Hosting must be capable of regular crawling from Google. Low-end shared hosting may not be good enough.

## JobPosting Structured Data <a name="JobPosting-Structured-Data"></a>

To get job postings listed you need to use <a href="https://developers.google.com/search/docs/data-types/job-posting">JobPosting</a> structured data.

### Required properties <a name="Required-properties"></a>

* datePosted
* description
* hiringOrganization
* jobLocation
* title
* validThrough

### Recommended properties <a name="Recommended-properties"></a>

* applicantLocationRequirements
* baseSalary
* employmentType
* identifier
* jobLocationType

### Example (using JSON-LD) <a name="Example"></a>

```javascript
{
      "@context" : "https://schema.org/",
      "@type" : "JobPosting",
      "title" : "Software Engineer",
      "description" : "<p>Google aspires to be an organization that reflects the globally diverse audience that our products and technology serve. We believe that in addition to hiring the best talent, a diversity of perspectives, ideas and cultures leads to the creation of better products and services.</p>",
      "identifier": {
        "@type": "PropertyValue",
        "name": "Google",
        "value": "1234567"
      },
      "datePosted" : "2017-01-18",
      "validThrough" : "2017-03-18T00:00",
      "employmentType" : "CONTRACTOR",
      "hiringOrganization" : {
        "@type" : "Organization",
        "name" : "Google",
        "sameAs" : "http://www.google.com",
        "logo" : "http://www.example.com/images/logo.png"
      },
      "jobLocation": {
      "@type": "Place",
        "address": {
        "@type": "PostalAddress",
        "streetAddress": "1600 Amphitheatre Pkwy",
        "addressLocality": ", Mountain View",
        "addressRegion": "CA",
        "postalCode": "94043",
        "addressCountry": "US"
        }
      },
     "baseSalary": {
        "@type": "MonetaryAmount",
        "currency": "USD",
        "value": {
          "@type": "QuantitativeValue",
          "value": 40.00,
          "unitText": "HOUR"
        }
      }
    }
```

## Indexing API <a name="Indexing-API"></a>

Step 1: <a href="https://developers.google.com/search/apis/indexing-api/v3/prereqs">Complete prerequisites</a>:

* Create a service account
* Verify site ownership in Search Console
* Get an access token

Step 2: <a href="https://developers.google.com/search/apis/indexing-api/v3/using-api">Send requests to Google</a>:

* Update a URL
* Remove a URL
* Get the status of a request
* Send batch indexing requests

Step 3: <a href="https://developers.google.com/search/apis/indexing-api/v3/quota">Check, and if necessary request more quota</a>

## XML Sitemap <a name="XML-Sitemap"></a>

You can also ping Google to let them know about new jobs using an XML sitemap and a GET request as follows - replacing the example URL with your own sitemap:

`http://www.google.com/ping?sitemap=https://www.example.co.uk/example-sitemap.xml`

## Full Google Job Search Guide <a name="Full"></a>

I'm building out a full guide to Google Job Search that you can view it here: <a href="https://www.searchcandy.uk/seo/recruitment-hr/google-job-search/">full/expanded guide to Google Job Search here</a>.