I'm still working on building mine. I've found at least one (coding) that fits into the picture somehow, being that I've been doing it since I was a kid. Some others are more recent interests that I want to spend a few years diving deeper into before rendering a verdict.
Cal Newport wrote a whole book refuting the "follow your passion" hypothesis in 2012: So Good They Can't Ignore You .
And more recently, there's a Stanford study out that makes the same claim .
It's a fantastic book by a now tenured CS professor that provides a good framework for how to think about your career / career satisfaction. He encourages working backwards from the lifestyle you want to the skills you need to master to where you are right now. His framework provides a lot of clarity and helps you ignore the roller coaster of announcements, updates, and new "things" you FEEL like you need to stay on top of.
You can also just read some of his blog posts - calnewport.com/blog - if you don't feel like buying the book. Or check out some of his interviews, etc.
My choice was almost entirely pragmatic, and was heavily influenced by the book So Good They Can't Ignore You by Deep Work author and Georgetown CS professor Cal Newport.
As for the bootcamp experience - I have trouble focusing for long classes, and would have benefited from a couple or more months of pre-study. (Classmates who did the best during the course had the most prior knowledge.)
However, the camp was a great launching point. I did work my ass off, staying up all night to work on individual and group projects in the lobby of the Ace hotel. If anything, the bootcamp helped solidify my own internal identify shift.
3.5 years later, I'm happy with my choice. I'm currently working remote for a startup and teaching evening intro to coding classes (yeah, at a bootcamp, so take my account with however many grains of salt). I really like teaching, and enjoy the intellectual challenge, salary and freedom provided by my day job.
Most of my classmates who I am in touch with are working as developers and seem to be doing alright also.
I'm going to go against the grain of most of what's being said in this thread and say that the best way to get through adversity is to discard a goal-based mentality entirely, in favor of a system-based mentality. Figure out the stuff you have to do every day. Get disciplined about doing that stuff. The 'small wins' you get from just executing the loop over and over again build up a lot of momentum over time.
I started with making my bed as soon as I got up every day, and just built on that. When there's something new I want to do, I set up a system for it. When the system isn't working, I change the system. Rather than deciding whether I wanted to do something or not before doing it, I'd just do it, then reflect afterward if that made things better or worse.
This approach got me through some really really bad times, helped me get fit, got me through tough, stressful workloads, calmed me down in times of chaos and helped me make the right long-term choices. I'm overall happier.
Here's some resources:
edit: oh and one other thing I got out of this approach. People absolutely can change, it just takes a lot longer than people usually put on. I'm a different person from who I was ~4 years ago, mostly in a positive way.
Book - https://www.amazon.com/Good-They-Cant-Ignore-You/dp/14555091...
Talk - https://www.youtube.com/watch?v=IIMu1PGbG-0
Edit: Grammar / formatting
Viktor Frankl's Man's Search for Meaning: http://amzn.to/1UwCEy6 and
Cal Newport's So Good They Can't Ignore You: http://amzn.to/1fkHSNF (blog: http://calnewport.com/blog/about/)
have really helped me navigate these issues.
(Not related to author / book at all, just read it recently and found it very useful)
Particularly of interest might be his discussion of Self-Determination theory . According to SDT, motivation requires autonomy, competence, and relatedness. In the workplace, this translates to have control over your work, being good at your work, and being connected to co-workers.
1) Take a deep breath and relax. What you are going through is normal. Your whole life up to a few months ago has basically been spent working towards this ultimate goal of getting a college degree. It is normal to feel a bit of a let down coming off this achievement high.
2) Realize that developing an elite skill set is the key to finding exciting and meaningful work. For more on this check out this book: http://www.amazon.com/Good-They-Cant-Ignore-You/dp/145550912...
3) Get to work honing your craft.
So Good They Can't Ignore You calls this the Passion Hypothesis, and argues (very well) that this is the wrong way to think about finding a career.
Instead, create a craftsman-like mentality and work ethic, and then use deliberate practice to get very, very good skills. With great skills, you will enjoy your work much more.
I believe this advice aligns with the rest of the blog entry very well. Creating value (and doing it well) requires an advanced skill set.
 This is an arguable point, since caring about something could be different than being passionate about it.
The idea is that you create a framework of good habits that keeps you focused on a task at hand, and that also forms as a mental safety-net in case of failure (thus, not pushing you off the wagon). Using a habitual process, you can make incremental progress overall (keep improving the framework) and you keep adding or removing features (goals) depending on the demands from your system. This is in contrast to having a goal-based approach where your entire framework is hinging on one goal/feature.
> For example, you often hear them say that you should "follow your passion." That sounds perfectly reasonable the first time you hear it. Passion will presumably give you high energy, high resistance to rejection and high determination. Passionate people are more persuasive, too. Those are all good things, right?
Related to this is a great book by Cal Newport "So Good They Can't Ignore You" (http://www.amazon.com/Good-They-Cant-Ignore-You/dp/145550912...) where he lays the case against "follow your passion" in a very methodical way. Here is a talk he gave at Google: http://www.youtube.com/watch?v=qwOdU02SE0w
Most people give the advice of "Do what you love and get most excited about" and this is, to some extent, the advice I would have given as well. However, when I think back to the work I've done and that has made me most proud in life, a bit chunk of it is simply doing new things, and pushing myself further than ever before. Cal Newport's advice is more along the lines of "Do what you're really good at, rather than only what you love."
Of course, this assumes you don't hate what you're doing. Food for thought.
It lays out a clever mental model for turning interests into skills into control over your career.
Cal Newport wrote a book on this. The short answer is "acquire rare and valuable skills."
If you have a track record of applying NLP to massive data sets today, that makes you extremely valuable. Combine two or more valuable, but not necessarily complementary, skills and it makes you a unicorn.
You'll almost never acquire rare & valuable skills by doing your assigned work. That's because entry level employees do commodity work. You might acquire valuable skills that way, but not rare ones.
My preferred method: survey the land. Try to figure out what skills are one notch above where you are today. Come up with a side project that's beneficial to your employer and would teach you those skills. Depending on the level of autonomy you have, you might be able to get that project approved as part of your official work. A few iterations of this should put you in a position to get a promotion or a better job.
The danger in doing something purely on the side, and not as part of the company, is that you don't have concrete results you can show at your next job. You might have mastered Hadoop/NLP/Machine Learning on your own, but all things being equal I'd hire the guy who used NLP to earn his company millions of dollars.
By the way, one of the easiest ways to get a rare and valuable skill is to aim to be 80th percentile at two things, as opposed to 95th percentile at one thing. My current aspiration is a strong understanding of user interaction/psychology + a strong understanding of Machine Learning. The combination of the two will put me in a very unique position when designing analytic software, even if I'm not the best at either individual skill.
Get dozens of book recommendations delivered straight to your inbox every Thursday.