{
  "@context": "https://schema.org",
  "@type": "Person",
  "@id": "https://mozola.net/#person",
  "name": "Marek Mozola",
  "givenName": "Marek",
  "familyName": "Mozola",
  "url": "https://mozola.net/",
  "mainEntityOfPage": {
    "@id": "https://mozola.net/en/#webpage"
  },
  "email": "mailto:marek@mozola.net",
  "image": {
    "@type": "ImageObject",
    "@id": "https://mozola.net/#logo",
    "url": "https://mozola.net/icon-512.png",
    "contentUrl": "https://mozola.net/icon-512.png",
    "width": 512,
    "height": 512,
    "caption": "Marek Mozola"
  },
  "jobTitle": "Fullstack developer",
  "description": "Fullstack developer. Builds web and mobile products from the database up to the interface, and wires language models and automation into them.",
  "knowsLanguage": [
    {
      "@type": "Language",
      "name": "Czech",
      "alternateName": "cs"
    },
    {
      "@type": "Language",
      "name": "English",
      "alternateName": "en"
    }
  ],
  "knowsAbout": [
    "Fullstack development",
    "Node.js",
    "TypeScript",
    "JavaScript",
    "React",
    "React Native",
    "PHP",
    "REST API",
    "GraphQL",
    "PostgreSQL",
    "MySQL",
    "Redis",
    "ClickHouse",
    "Large language models",
    "Retrieval-augmented generation",
    "AI agents",
    "Process automation",
    "Docker",
    "Kubernetes",
    "CI/CD",
    "Cloudflare",
    "Amazon Web Services",
    "Google Cloud Platform",
    "Microsoft Azure",
    "Server-side rendering"
  ],
  "nationality": {
    "@type": "Country",
    "name": "Czechia"
  },
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "Chudenická 1059/30",
    "addressLocality": "Prague 10",
    "addressRegion": "Prague",
    "postalCode": "102 00",
    "addressCountry": "CZ"
  },
  "identifier": {
    "@type": "PropertyValue",
    "name": "Company ID",
    "value": "23388366",
    "description": "Czech Trade Licensing Register"
  },
  "contactPoint": {
    "@type": "ContactPoint",
    "contactType": "business enquiries",
    "email": "marek@mozola.net",
    "availableLanguage": [
      {
        "@type": "Language",
        "name": "Czech",
        "alternateName": "cs"
      },
      {
        "@type": "Language",
        "name": "English",
        "alternateName": "en"
      }
    ]
  },
  "hasOccupation": {
    "@type": "Occupation",
    "name": "Fullstack developer",
    "occupationalCategory": {
      "@type": "CategoryCode",
      "codeValue": "15-1252.00",
      "name": "Software Developers",
      "inCodeSet": {
        "@type": "CategoryCodeSet",
        "name": "O*NET-SOC"
      }
    },
    "skills": "Fullstack development, Node.js, TypeScript, JavaScript, React, React Native, PHP, REST API, GraphQL, PostgreSQL, MySQL, Redis, ClickHouse, Large language models, Retrieval-augmented generation, AI agents, Process automation, Docker, Kubernetes, CI/CD, Cloudflare, Amazon Web Services, Google Cloud Platform, Microsoft Azure, Server-side rendering"
  },
  "hasOfferCatalog": {
    "@type": "OfferCatalog",
    "name": "What I do",
    "itemListElement": [
      {
        "@type": "Offer",
        "position": 1,
        "itemOffered": {
          "@type": "Service",
          "@id": "https://mozola.net/en/#service-1",
          "name": "Web applications",
          "description": "Backend and frontend in one place. I design the data model, build the API and ship an interface that is good to use.",
          "serviceType": "Web applications",
          "provider": {
            "@id": "https://mozola.net/#person"
          },
          "areaServed": [
            {
              "@type": "Country",
              "name": "Czechia"
            },
            {
              "@type": "Place",
              "name": "Worldwide"
            }
          ]
        }
      },
      {
        "@type": "Offer",
        "position": 2,
        "itemOffered": {
          "@type": "Service",
          "@id": "https://mozola.net/en/#service-2",
          "name": "AI and automation",
          "description": "I connect language models to your data and processes, find the manual work worth automating and replace it.",
          "serviceType": "AI and automation",
          "provider": {
            "@id": "https://mozola.net/#person"
          },
          "areaServed": [
            {
              "@type": "Country",
              "name": "Czechia"
            },
            {
              "@type": "Place",
              "name": "Worldwide"
            }
          ]
        }
      },
      {
        "@type": "Offer",
        "position": 3,
        "itemOffered": {
          "@type": "Service",
          "@id": "https://mozola.net/en/#service-3",
          "name": "Mobile applications",
          "description": "iOS and Android from a single codebase, wired to a backend I built myself.",
          "serviceType": "Mobile applications",
          "provider": {
            "@id": "https://mozola.net/#person"
          },
          "areaServed": [
            {
              "@type": "Country",
              "name": "Czechia"
            },
            {
              "@type": "Place",
              "name": "Worldwide"
            }
          ]
        }
      },
      {
        "@type": "Offer",
        "position": 4,
        "itemOffered": {
          "@type": "Service",
          "@id": "https://mozola.net/en/#service-4",
          "name": "Infrastructure and data",
          "description": "Containers, CI/CD, caching and databases for large volumes. So it holds under load and deploys the same way every time.",
          "serviceType": "Infrastructure and data",
          "provider": {
            "@id": "https://mozola.net/#person"
          },
          "areaServed": [
            {
              "@type": "Country",
              "name": "Czechia"
            },
            {
              "@type": "Place",
              "name": "Worldwide"
            }
          ]
        }
      }
    ]
  },
  "sameAs": [
    "https://github.com/Mozolas",
    "https://www.linkedin.com/in/marek-mozola/"
  ]
}