With an academic background in computer science, what academic/training program can be best for transforming into a software architect?
-
I have BS, followed by few years of experience as Software Engineer, followed by an MS. Next, I would (presumably) resume my career as Software Engineer again. But, I would like to work as Software Architect in few years next. Besides self-educating informally, what formal training and/or academic degree programs can be best for advancing in this path?
-
Answer:
If you want to be a software architect, no degree is really going to help you. The only way to get there is experience and a track record. Which means you will need to learn on the job, find opportunities to show and grow your skills, and then you can take that experience with you to the next gig.
Glenn Anderson at Quora Visit the source
Other answers
First, I'm going to assume the following definition for Software Architect: someone who spends most of their time focused on things like systems integration and systems design. At least that is what I would consider the classical definition. Next, I think answering "why" should precede answering "how", but I'll assume you've done that and have your reasons. Having been specifically asked to answer this question, I'm having a hard time doing so because I'm not a fan of the Software Architect career path. It was very disappointing for me, because I found myself more and more disconnected from the work of building the actual software: i.e. coding. After 28 years in software development, steadily working my way up the ladder, I consider myself fortunate to have figured out a way to get back to coding as my primary responsibility. ...but that doesn't answer the question. So, what does a Software Architect need to know? A little bit of everything. You should seek to gain general knowledge of: software design principles, systems integration, operations, and infrastructure. You will also need to learn how to listen, negotiate, campaign, persuade, encourage. Finally, you'll need to know your company's business very well so, in a sense, you'll need to be bilingual. One minute you'll find yourself deep in a conversation about the technical details of some system and the next you'll be talking product strategy with a Senior VP. In short: I don't know of a way to encapsulate all of that into a formal training program because so much of what you're going to need to know will be situational. The only way I know of to learn how to be a Software Architect is to start out as a developer, figure out where the company is and where they want to go, and do everything you can to help them make that transition into the future. My advice: learning and academia are excellent tools but eventually you need to just get out there and get stuff done. It sounds like you have an excellent foundation on which to build a very successful career. Go do that!
Paul Nelson
I have to very much agree with Glenn here. Just as software development is something that cannot be learnt in an academic environment (principles of languages, computing, data structures etc. can, but software development can't), software architecture is the same - even if the principles of modularity, data model design, integration patterns etc, can. You really need experience. I would never employ anyone into a software architecture role who couldn't demonstrate to me that they had adequately 'cut their teeth' in software development, because you need to really understand the actual art of software construction, not just the theory of it. It takes a few years of software development to get into the architecture space, for me it was about 8 years (despite programming since I was very young).
Fahim Sabir
I agree with the others there is no replacement to real world experience in software crafting. From the Question description - I do understand you have some experience. Although there are some formal programs for training architects, such as http://www.sei.cmu.edu/training/find/courses.cfm?category=Software+Architecture or http://www.iasaglobal.org/iasa/Training.asp - I'm quite doubtful of how effective they are. Two training video sets I encountered and I believe may be more useful are https://cleancoders.com/ and http://shop.oreilly.com/product/110000195.do by O'Rielly. While clean coders videos are not FOR architects only, it may be very useful to make the step-up and start thinking like an Architect.
Lior Bar-On
Related Q & A:
- How to become a software architect?Best solution by Programmers
- What can you do with a BS in Computer Science?Best solution by Quora
- What kind of jobs can you get in marketing with a marketing degree?Best solution by Yahoo! Answers
- What university has the best computer science/ technology program?Best solution by Quora
- What can I do to get a good job with my Bachelors of Science in Computer Science?Best solution by collegexpress.com
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.