I am currently working in one of the top MNC company in India and my dream is to become Techincal Architect in Java/J2ee filed. I have 2 years, 3 months of experience. I have worked and have good understanding on Servlets/JSP, Spring, Hibernate and other java/j2ee frameworks.. One thing which is worrying me is, i dont have any exposure to EJB's and also dont see any oppurtunity in my current company in the near future.. Experts here, please suggest me what i should do and what are all the areas/fields i need to concentrate on to become a successful architect..
To be an architect you should need to have many years of experience, because only with years of experience you get the comprehensive knowledge which is needed for the architect's role. Definitely knowing how to work with EJB's is important. At present the suggestion for you is to concentrate on your aim of becoming an architect which would in turn get you motivated to learn new technologies and put them in use at work.
Thanks Joe and Jeanne for your suggestions.. Jeanne, as you said, now i am working my way towards growing to the next level, i.e TechLead.. My dream, from my college days was to become an architect, which i am sure, i will become one day.. Once again, thank you both for your inputs..
You can start acting like an architect by asking the right questions. Architects are very analytical. Also, learn to look at the big picture. Try to get wider exposure, so that you can come up with design alternatives, pros and cons of different alternatives, and identify potential risks. Concentrate on integration technlogies like Messaging, Web Service, Batch Jobs, ETL jobs, BCP jobs, XML based technologies/frameworks, etc. This is because enterprise systems are very complex and they need to interact with each other. I really admire your will power and wish you all the best.
"Years of experience" help, but more important is being familiar with a broad spectrum of technological solutions and how to apply them to solve business problems. The main thing the years of experience give is repeated exposure to many different solutions, and how certain technologies get reinvented over time as new solutions arise. A person can spend years doing the same thing and be too narrow to be an architect, although these days, it's almost impossible to do the same thing for years.
I don't know that EJBs are any more critical than any other skill, however. I've worked in a number of shops that wouldn't tolerate EJBs. However, these days EJBs are part of the wider JPA architecture, which, in turn is based on ORM. An architect should have a firm grasp on how ORM works, even it the actual details are being done by the grunt coders.
Customer surveys are for companies who didn't pay proper attention to begin with.
Prasad, an effective software architect usually has strong technical writing skills and oral English skills. He/She should be comfortable speaking in front of small groups, e.g. more than 7 individuals and preparing presentations. The other important aspect is trust and respect. He/She needs to be able to capture the respect of the team they are leading and they need to have trust in your abilities and command.
Hope you realize that there is much more than "technology" knowledge related to this role. Good luck!