Well, I have too little experience to tell you anything about domain knowledge. So, I am making myself clear that whatever I am saying is my opinion.
I think that initially one should try and get into developement not because it's fun but you will get to know a lot of stuffs. You have to constantly read about software engineering methodologies, writing quality code, good designing, Object Oriented Programming (which isn't actually just extending and making subclasses) and a lot of other things. So, I would prefer developement initially and I consider myself very lucky to be involved in doing 3 products right from scratch.
If you got yourself into support, fine... You will gain a different kind of experience which I may not be able to gain in developement ---like analyzing the log files, tracking client's issues, handling phone calls and stuff like that which is also a very good experience.
But on the other hand, domain knowledge definetly helps and my boss keeps saying me that after a period of time (say 10 years) from now it's only the domain knowledge which will be more important than your developement skills.
But having said that, I would like to try atleast 3 or 4 domains before choosing one and shaping the rest my career on that. If at all that domain vanishes for some reason, I will have the knowledge of the other domains on which I have worked in the past.
Don't think too much about what you are going to do after 10 years or 7 years because you will come to know automatically when you gain some experience and you will make the best decision for you. Till then, concentrate on your present, that is programming...
This is what I tell myself, hope this helps you too
Correct me if my notion is wrong somewhere or if I am missing something....
Thank you!
[ November 14, 2006: Message edited by: Srikanth Raghavan ]