How to redirect user page to front page for specific roles
Solved using EventSubscriber like this:

services:
  my_module.event_subscriber:
    class: Drupal\my_module\EventSubscriber\MyModuleSubscriber
    tags:
       - {name: event_subscriber}


And MyModuleSubscriber:

namespace Drupal\my_module\EventSubscriber;

use Symfony\Component\HttpFoundation\RedirectResponse;
use Symfony\Component\HttpKernel\KernelEvents;
use Symfony\Component\HttpKernel\Event\GetResponseEvent;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Drupal\views\Views;
use Drupal\views\ViewExecutable;
use Drupal\user\Entity\User;
use Drupal\Core\Url;

class MyModuleSubscriber implements EventSubscriberInterface {

  /**
   * {@inheritdoc}
   */
  public function checkForRedirection(GetResponseEvent $event) {
    $request = \Drupal::request();
    $requestUrl = $request-&gt;server-&gt;get('REQUEST_URI', NULL);
    $userID = \Drupal::currentUser()-&gt;id();
    $user = User::load($userID);
    $uid = $user-&gt;get('uid')-&gt;value;
    $roles = $user-&gt;getRoles();
    $userPage = "/user/" . $userID;
    if (
      $userID !== '1' &amp;&amp; 
      !in_array('administrator', $roles) &amp;&amp;
      $requestUrl == $userPage
    ) {
        $path =  \Drupal::service('path.alias_manager')-&gt;getAliasByPath('/');
      $event-&gt;setResponse(new RedirectResponse($path, 301));
    }
  }

  /**
   * {@inheritdoc}
   */
  public static function getSubscribedEvents() {
    $events[KernelEvents::REQUEST][] = array('checkForRedirection');
    return $events;
  }

}


I don't know if it is the correct way to do this but it solves my problem.