He has worked in a wide range of areas in the company: including learning based personalization systems, warehouse control systems, and hardware simulations. He uses simulation as a test harness for production systems; to predict the KPIs of future technologies, such as new innovations in automated warehousing; and as an optimization tool for the algorithms that run these technologies. Gareth primarily codes in Java 8 and python, but has done work in other areas such as connecting C code to a Java simulation.