Bergman kernels play a central role in complex analysis and operator theory of function spaces. They are building blocks of many central operators and extremal functions. In this talk we discuss basic properties of these kernels, and show how they can be used to solve optimisation problems in Bergman spaces. In particular, we are interested in their zeroes, and how they can appear from weights and domains.