Senior Linguistics Developer at Luminoso
I have always known exactly what I wanted! I mean, obviously setting aside "astronaut" and "zookeeper" when I was five. I went to college ready to major in Art History, because I really loved that subject, and wanted to teach it. (I was 18.)
And that was true until I found out how much I hated Art History in college. Also, I dropped out of college for four years. But when I went back, I was ready to major in English, because that was the subject I actually loved, and wanted to teach it. (I was 23.)
Though it turned out that while I loved reading, I didn't really want to do the kind of analysis of books that an English major required. Also, on a whim, I took a linguistics class and thought it was the best thing ever, so I changed my major to linguistics, so that I could go to graduate school and be a college professor. (I was 24.)
I did go to graduate school. I was even a college professor for three years afterwards. But at some point it just became too difficult to keep accepting one-year jobs in different cities, moving every year, so I stopped looking and had no idea what I was going to do. (I was 38.)
At that point, a friend of mine found a job listing for a language developer/computer programmer, and I'd been practicing programming in my free time since college. So I applied, and got that job, which I've had since. I'm quite happy in it and am unlikely to change careers again! (I'm 43.)
...though of course, I've thought that before...
The upshot is this: at no point, ever, in your life do you have to know what you'll be doing for the rest of it! Sometimes there will be a "catalyzing event" (as when I took that linguistics course) but sometimes it's just a matter of finding over time that you do or don't enjoy something (as with programming, for me). Experiment, try things out, totally be prepared to decide that something you're trying isn't working and you should try something different.