In this paper we target the verification of fault tolerant aspects of distributed applications written in the Erlang programming language. Erlang programmers mostly work with ready-made language components. Our approach to verification of fault tolerance is to verify systems built using a central component of most Erlang software, a generic server component with fault tolerance handling.To verify such Erlang programs we automatically translate them into processes of the µCRL process algebra, generate their state spaces, and use a model checker to determine whether they satisfy correctness properties specified in the µ-calculus.The key observation of this paper is that, due to the usage of these higher-level design patterns, the state space generated from a Erlang program, even with failures occurring, is relatively small, and can be generated automatically.