I often get requests for recommendations from budding embedded engineers. Finally, I have found a book I can recommend for novices, So You Wanna Be An Embedded Engineer. Edwards has done a good job at answering a rather generic question. The book will not be the answer to every potential engineer but it is a good start.
The book is a combination of answers to basic questions like How To Get The Job as well as A Typical Week. Any veteran will be nodding in agreement with much of the book and it is handy to have this info on paper. It will not turn you into an embedded engineer by the end of the book but it will give you plenty to think about.
The two chapters I especially like are about teaching yourself. One is from the bottom-up and the other is the top-down. Actually these are more about low versus high end microcontrollers but they are good reading none the less. The low end discussion includes microcontrollers from Intel (8051), Atmel (AVR), Microchip (PIC) and Texas Instruments (MSP430).
This book will be useful for a programmer looking to move into the embedded arena as well as hardware gurus looking at software. Edwards has put together a good starting point that should satisfy anyone with questions about embedded programming as a profession.