Pregunta de entrevista de Klarna

Take existing code, point issues and refactor it