Software engineers write programs to design and develop computer software. Interviews are highly technical, so come ready to work through coding problems and math brainteasers. The specific questions you are asked will depend on what type of programming position you are looking for. Try researching a specific software discipline such as web development, application development, or system development.
How would you explain to your friend, who does not know nothing about software engineering, what exactly a Software Engineer does?
Software engineering is like being a master painter. You find out what the customer wants in terms of colours and shading and what items need to be in the painting, and then, from a blank canvas, you include all the details they asked for and some that they didn't (but YOU know that without those little twiddly bits, their painting won't work as a piece of art). Like a masterpiece, something that looks simple from the outside, can contain layers and layers of work that are never seen and are covered over by the things that the customer will see. In the same way the Leonardo Da Vinci didn't do all of the Sistine Chapel himself, large projects require people of differing skills and levels of ability. There will be people who put up the scaffolding, who order in the paint before it runs out, as well as the people who actually paint. Some days, programmers will have coloured in a small square of colour, sometimes they have to whitewash it all and start a section again because the customer changed their mind about something.