views:

170

answers:

8

An organization I work with is heavily invested in .NET technology, including several high-traffic ASP.NET websites that are used by internal and external customers.

We are looking into hiring a solution architect to support these applications and work on new initiatives. Several of the resumes coming in are from candidates whose entire working experience is J2EE.

My question is, is it worth it to hire a J2EE architect when the environment we work in is primarily .NET? Are the skills transferrable?

A: 

An architect really needs to know the specifics of the environment he's architecting for. That's a bit like hiring a bridge architect to design a high rise. They both learn the same basic principals, but there are significant differences in practice.

I have no doubt that a great J2EE architect can learn to become a great .Net architect, but do you really want to pay for that transition?

Eric J.
+1  A: 

I think in part it depends on the architect .... (lame I know)

Java and C# (assuming you are using C#) are very similar in syntax

I would say it's easier for a Java developer to learn .Net than vice versa as there are only a few concrete ways to run a .Net shop. Not true in Java land.

Any real Architect should be platform agnostic and should probably have experience with at least 2 platforms (.Net, Spring MVC, Django, Rails, JSF, Struts, etc ...) Some one with Rails and JSF experience that really impressed me for instance could end up being a better fit than the lifetime ASP.Net developer that never ventures outside of his comfort zone.

I'm a fan of multiple frameworks depending on the task I can gear my solution.

Phil Strong
A: 

It depends on the job description. If you expect the person to be hands-on and to participate in application and framework design, and to do that quickly and without giving them time to ramp up and re-tool, the answer has to be a resounding "No!".

cdonner
A: 

Some of the skills are transferable, but Architect implies that you expect him to lead the design. For that you need expertise in the toolset. If he's good, hire him as a regular developer and let him architect the next project. Otherwise, keep looking.

John Knoeller
A: 

As someone who is a .NET Architect, and has even had some experience with Java, I would never seriously put myself in that role. Sure, at higher levels of abstraction it would not matter, but even an architect should know a fair amount about the details of the platforms he is seigning solutions on top of.

Bryan Batchelder
A: 

A friend of mine was a J2EE developer for a long time and the switched to being a .NET programmer. After 3 years, he is now a .NET Enterprise Architect, and is doing well. That said, with the amount of frameworks/libraries that .NET has (WCF, WF, WPF, etc...), there is definitely a learning curve. I think your best bet would be to hire a senior programmer who has worked with .NET for several years; they'll be able to bring you insight into your architecture from the get-go.

Jon
A: 

I have a slightly different take on this.

I have been a consultant for over 10 years and throughout my career, I have seen the term Solution Architect being abused so often. To me, there s no such thing as a J2EE Artchitect or a .NET Architect when it comes to Solution Architecting. Asking a technology expert to architect a solution is akin to asking a plumber to design a building. If someone is a J2EE specialist or a .NET specialist then, they better have hands on skills. That does not mean that they will have any architecting skills. There are a lot of other things a Solution Architect needs to consider besides technology and I would rather have someone who understands the Business problem, IT processes, can manage change and resolve conflicts because these are the areas in which real Solution Architects spend most of their time, every day. Most IT projects fail not because of lack of technical skills. They fail because there is no one who completely understands the technology + the business needs. In other words, there is no real Solution Architect in the team.

So I would go for someone who is a real Solution Architect and has a good understanding of what my business needs. He needs to be proficient in some of the technologies like .NET or J2EE, Database to filter out those candidates who have a very shallow understanding of technology. He should completely understand the technology behind his solutions from end to end. Whether that technology is J2EE or it is .NET is not so important.

To conclude, I would prefer someone with proven Solution Architecting skills + J2EE expertise over someone with .NET expertise and unproven Solution Architecting skills.

+1  A: 

Yes.

The real question is how much?

Areas where they can contribute effectively:

  • Standard Web Technologies: HTTP, CSS, XHTML, XML, XSLT
  • Patterns: MVC, Gang of Four, etc.
  • High-level design

Areas where they won't be able to contribute effectively:

  • Performance tuning
  • Security
  • Low-level design
LWoodyiii