Cozinhe o bacalhau por cerca de 10 minutos após levantar fervura. Escorra, deixe amornar e desfie.
Em uma frigideira, aqueça o azeite e refogue a cebola. Adicione o alho e refogue por mais 1 minuto.
Acrescente o bacalhau e as azeitonas. Misture bem e tempere com pimenta. Reserve.
Cozinhe as batatas até ficarem macias. Escorra e amasse. Misture a manteiga e o leite até formar um purê liso. Ajuste o sal.
Em uma assadeira, espalhe o bacalhau refogado no fundo. Cubra com o purê de batatas, nivelando com uma espátula.
Polvilhe queijo ralado, se desejar.
Leve ao forno preaquecido a 200°C por cerca de 20 minutos ou até aquecer e dourar levemente.