There are two ways to wait: explicit and implicit wait.
The idea of explicit wait is
WebDriverWait.until(condition-that-finds-the-element);
The idea of implicit wait is
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
fluentWait function returns your found web element.