A hackathon is an event in which you have to design and develop a solution to a problem. The problems in such events are based around technology and software, and participants have to provide innovative solutions to the problems that are posed.
There is a time limit that has to be adhered to, so there is a lot of pressure on each team. As mentioned before, a hackathon team consists of more than just engineers. A lot of them have marketing managers and product managers, etc. too.