I've been programming ever since I was in grade 6. Starting out with a TRS-80 CoCo2. Against the pressures of the Commodore 64 that friends had, I decided to take my chances.
I guess it paid off. By grade 9, I was able to not only learn BASIC, OS9 and assembly, but to also tinker on the hardware side. Building expander and I/O boards, and interfacing to the real world.
The first official project for a company that I developed was based on a Motorola 68HC11 processor. I've always been a fan of Motorola/Freescale micros.
I detoured from embedded design once I went to college and made my way into a professional broadcast company. Started with testing and repairing boards that came back from manufacturing, I moved up to production engineering and worked on projects to aid in automated testing.
I finally graduated from college (So I took a year off to work, no big deal). I gained great practical experience, not only on the technology side, but the also the business side of the real world.
I received an offer to do some contracting on the side, once again afer 4 years, in the embedded hardware field. This time it was using a ColdFire microcontroller. The only tools that were given to me were links to GCC, an open-source compiler and the evaluation board that I was tinkering with on the side. The goal was to develop software to control an FPGA in order to process HDTV signals in various ways. The base product was a "universal" design were the functionality could be changed to match functional demand.
I moved over to this company on a full-time basis. Continuing to do embedded programming, and starting multimedia programming under MS Windows using Directshow and Windows Media Technology.
As time went on, I met up with some old co-workers from the first company that I worked at. They required someone with experience in low-end embedded programming. First the Microchip PIC, then the Atmel AVR, and then the flexability of the Cypress PSoC family. They had their challanges, not necessarily the development aspect, but the cramming of feature-creep into something that was originally spec'ed to do very basic functions. Now they're moving on to an ARM9 based system. Wow, talk about feature-creep!
That's me in a nutshell.