I have been wrestling with my next career move recently and wondered what the HN community thought about a person without a specialized skill set.
About 18 months ago at 26 years old I decided to leave my studied profession (music) and pursue my rival passion for technology. Fast forward 18 months and I now work as a repair technician/customer-liaison/troubleshooter(amongst many other things) for end-users for a major consumer electronics manufacturer.
During this time I have been moonlighting as a web developer, implementing projects in Flash, PHP and MySQL, Ruby on Rails ...etc. I am no expert in any one language or framework, but teach myself skills as I need them (I like to learn new things). I don't produce anything complicated, just what the job requires. I maintain both jobs working around 20 hours a day catching up on sleep when there is time between projects. I have no foundation in programming, but a broad "just-below-the-surface" understanding of a massive list of software/languages/hardware/and more . . . my question is: What's next?
A cursory glance at Craigslist reveals openings for "PHP Wizards, Sr Ruby on Rails Devs, and Flash Guru's" of which it is clear I am under-qualified for... yet I continue to receive freelance work companies like these.
Are there jobs for a driven individual with excellent communication/interaction skills but a non-focused skill-set? Should I start focusing on one specific development area?
If you want to develop knowledge in depth, this is a good place to start:
http://www.amazon.com/Elements-Computing-Systems-Building-Pr...
Buy the book, download the courseware for free, and learn how computers work from NAND gates up. Implement your own OO language on the hardware you've built and write your own OS in it. Then write games for the resulting system. This will put you ahead of most coders out there.