<?xml version="1.0" encoding="UTF-8"?>

<document xmlns="http://maven.apache.org/XDOC/2.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">

  <head>
    <title>Consulting</title>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"/>
    <script type="text/javascript" src="js/anchors.js"/>
    <script type="text/javascript" src="js/google-analytics.js"/>
    <link rel="icon" href="images/favicon.png" type="image/x-icon" />
    <link rel="shortcut icon" href="images/favicon.ico" type="image/ico" />
  </head>

  <body>

    <section name="Consulting or Professional Support">

      <p>
        If all materials on our web site, stackoverflow.com knowledge and mail-list do not help you.
        If there is something that could be improved in Checkstyle's documentation to make Checkstyle
        the easiest tool to use - please let our team know.
      </p>

      <p>
        If your company or organization requires:<br/>
          - personal consulting on how to introduce Checkstyle into your company process,<br/>
          - help in introducing Checkstyle to legacy projects,<br/>
          - help in developing company's personal code convention/style,<br/>
          - help in eliminating <a href="https://en.wikipedia.org/wiki/Job_security">Job security</a>
            by enforcing code standards/style and static code analysis,<br/>
          - prioritized handling of bugs/issues,<br/>
          - prioritized handling of enhancement requests,<br/>
          - ....<br/>
      </p>
      <p>
        Please do not hesitate to contact me (Roman Ivanov) by email "ivanov-jr['a']mail[dot]ru".
      </p>

    </section>

  </body>
</document>
