Han har gjennomgått handelsskole og Postskolen, og arbeidet i Posten 1969–1993. Hansen var butikkmedarbeider 1966–1967, sjømann 1967–1968, postbud i Oslo 1969–1970, postpakkemester i Oslo 1971–1978 og landpostbud i Treungen 1978–1993.
Hansen var leder i Nissedal Arbeiderparti 1981–1983 og 2000–2004, medlem av Nissedal kommunestyre 1984–1987, leder i Nissedal helse- og sosialutvalg 1984–1988, medlem av Telemark fylkesting 1984–1993, nestleder i Aust-Agder avdeling av Norsk Postforbund 1990–1993 samt leder i Telemark fylkesskolestyre 1992–1993. Han har vært medlem av Telemark Arbeiderpartis fylkesstyre siden 1989 og innvalgt på Stortinget fra Telemark siden 1993. Han søker ikke gjenvalg til Stortinget i 2013.[3]