Being one of the most popular persistence frameworks for Java, Hibernate provides an easy-to-use, object-oriented access to relational databases, enabling developers to focus on business logic rather than writing tons of JDBC statements. While this easy-to-use approach allows rapid application development, it comes with its own pitfalls. We are using Hibernate in all of our Spring Boot projects in a variety of scenaris, from classic web applications to long-running batch processes. On the way we made design decisions we regret now, discovered cool features, and found out a lot about how (and how not to) use Hibernate. In the following session, we will give a brief introduction to Hibernate and discuss some of our learnings.