People are motivated when they have a stake and a say. For that, they need to understand why they're doing what they're doing. So keep them informed. Not about every minute business detail, but also not about the end decisions (the what/how). Rather, share why decisions were made, why they matter, why they make a difference. And address their feedback.
Also, make sure you hire the right people. Look for passion and self-directed individuals.
If you're making decisions without engineering input (implied in Assaf's "share why decisions were made" suggestion), it is the quickest way to build an engineering organization based on transactions that feels will feel more like a service provider and less like a partner. We involve the engineering team in the problem solving process hand-in-hand with the product and UX folk. With more and more varied "eyes on the problem" (to steal a phrase from Michael Lopp) you're going to end up with a much better solution overall and a much more engaged engineering team.
I am assuming your question is more pertaining to empowering and motivating (rather than hiring).
I can outline some of the practices I have seen really result in high motivation and sense of ownership among engineering teams:
* Empathize - Your engineering team will work well and be more motivated if they see you as one of them rather than a person who doesn't understand their function. Show your geeky side to them, and show that you understand their thought process and drivers.
* Pick their brain on big and small decisions (roadmap, usability, whatever it is) - Product teams value being heard. The more you position yourself as someone who is WANTS to listen, is keen to have their inputs, you will be surprised at how involved they can get, and also how you can actually tap into a lot of smart ideas/thoughts from them that you can develop on.
* Take care to explain - show how you arrive at decisions. Share your research, competitive analysis, and even your thought process on arriving at a feature set or list of things for a release. Its stuff you would have worked on anyway - so no harm sharing with more eyes!
* Share customer feedback - nothing motivates your engineers than a positive interaction with a customer. Get them to see customer feedback. Have them sit in and observe some of the usability studies. (B2B - have them see you do some demos or do a successful sales pitch)
* Send out interesting articles, insights, business and tech articles with your comments/highlights to them on a regular basis (maybe twice a week?) - maybe even some analysis you did on competition or customer feedback
* Engineers like working with people they feel are competent and complement the work they are doing to build a great product. So make sure they see how everyone else around them is also doing a good job and adding value and contributing to the success of the product.
* Be transparent about the product/business - Make them feel they are responsible and involved in the business, not just technology. I've seen engineering teams happy about their annual goals having components relating to making revenues, keeping customers happy, or reducing costs. If they are enthused about the business as a whole, they will be more motivated with their engineering efforts
* Have a mix of little experiments, R&D, attending to engineering debt, in addition to bug fixes and new features that each engineer gets to spend some time on (based on their interest)
* Finally get to know each of your engineers personally, and be aware of what their priorities are. Each of us has different motivations in life, so there is no silver bullet to motivate people. When they know you care for them, they are more motivated :).