• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

What is different about a Java Architect?

 
Greenhorn
Posts: 23
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I have been an architect for many years, mostly in very large businesses. I have been seeing a lot of job postings for Java Architect lately. My architecture skills are very broad, usually covering .Net and Java environment, as well as technical platforms such as Windows, Linux, Solaris, etc. So when I see the position "Java Architect", I wonder what is different from other architect jobs.

I understand that if a position calls for "Java Architect" or ".Net Architect", it requires deeper understanding of a particular stack. Can you tell me what may be different in terms of expectations between a Java and .Net architect? For example, does Java Architecture call for more disciplined UML documentation? Are .Net architects expected to have a deeper understanding of OS level details due to the Microsoft bundling of technology?

Thanks,
Tony
 
author and jackaroo
Posts: 12200
280
Mac IntelliJ IDE Firefox Browser Oracle C++ Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Moving to Jobs Discussion.
 
author and iconoclast
Posts: 24207
46
Mac OS X Eclipse IDE Chrome
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Tony,

Honestly, it's just that they are looking for someone who, given the opportunity to choose a solution, will choose a Java one. It's true that Java architects will in theory have more flexibility in choosing hardware, operating systems, etc., and so more knowledge is expected in those areas; but most architecting is done within the constraints of an existing computing environment, and so many of those choices aren't really open for discussion anyway.
 
Saloon Keeper
Posts: 27762
196
Android Eclipse IDE Tomcat Server Redhat Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Unfortunately, in my town, the term "Java Architect" has become a code term for "developer not located overseas".

My definition of "software architect" has always been one of someone who determines overall structure and integration of the software systems in the shop in question. Someone who sees the Big Picture. In short, a position that only one, or a few people hold.

However, these days, I see ads where openings are advertised for a half-dozen, a dozen or more "architects" at a time. I talked to one of these "architects" and he couldn't even explain adequately what his job even was. I've helped people work through code done by these people that lacked a fundamental understanding of the technologies that they were working with.

Once, I aspired to the title "architect" myself. These days, I'd be ashamed to take it.
 
Ranch Hand
Posts: 2187
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Consulting organizations also misuse the title. They will describe all of their consultants as "architects", most likely with the intention of charging more based on the perception that their consultants are experts in their field. Unfortunately, in some cases all you really get is a "Googler" and have to then deal with the risk.

A suggestion, if you are hiring technical consultants: block their internet access for a while to see how they handle medium and hard tasks.
 
Tony Cagle
Greenhorn
Posts: 23
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Tim,

There have been many times in my career when I don't have a good answer to the question "what do you do". There have been many times over the years when a management decision has been explicitly made that "architects don't write code", meaning that they need us for "more important things". This is fine for a while, but eventually you have to work in the details to keep your skills sharp or you start to lose touch. I have found that keeping side projects going at home is the best way to keep my development skills sharp.

In terms of being "ashamed" to be an architect - well, this sounds like me on a bad day lol! The worst days are when the political aspects of the job outweigh any technical satisfaction I get from designing solutions.

In general terms, I love architecture as it affords me the opportunity to look at the big picture of a problem and think through different approaches. In the economic downturn of the last several years, architecture has been especially hard I think due to the fact that most of our work was focused on process improvement and scaling back our environment as opposed to building new stuff. It looks like things may be turning around though in the next year or two (all financial disclaimers apply to that statement!).

.......

Back to my first question: so would you guys say that an java architect is closer to a lead development role than other architect positions?
 
Tony Cagle
Greenhorn
Posts: 23
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
@Frank:

I have been surprised at how many "googlers" I have met over the years. I would think that as a tech lead, one is primarily concerned with finding developers who can accomplish the task at hand in a timely fashion - however they achieve those results. For more common problem domains, I would hope that they would find a more common, industry standard solution - and what better place to find that than Google.

What might work better in weeding out consultants would be early code reviews where the tech lead actually does some googling themselves and compares the consultant's code to the first few hits from the search engine. Also, I have found that googlers have a much harder time with tasks that include newer technologies (like JSON over XML) or connecting to specific company data sources.

All of this, of course, requires a little more time on the part of the tech lead, but in the end I would hope you would be able to delegate more to trusted consultants and rest a little easier further into the project.
 
Tim Holloway
Saloon Keeper
Posts: 27762
196
Android Eclipse IDE Tomcat Server Redhat Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Tony Cagle wrote:Tim,

There have been many times in my career when I don't have a good answer to the question "what do you do". There have been many times over the years when a management decision has been explicitly made that "architects don't write code", meaning that they need us for "more important things". This is fine for a while, but eventually you have to work in the details to keep your skills sharp or you start to lose touch. I have found that keeping side projects going at home is the best way to keep my development skills sharp.



Actually, I used to say that if I could explain what I did and normal people could understand what that was, I wasn't doing the fun stuff. But that was back when I was part of the OS support group.


In terms of being "ashamed" to be an architect - well, this sounds like me on a bad day lol! The worst days are when the political aspects of the job outweigh any technical satisfaction I get from designing solutions.



When I say that locally "architects" are developers, I don't mean that I think architects shouldn't write code. I mean that that's all these people really are is coders. Hence my present reluctance to assume the title of "architect". The title has become debased, and the job doesn't truly fit the title. The only difference between the coders in Bangalore and their (sometimes literal) cousins in this town is that one has the actual title of "developer" and the other has the title of "architect". The competencies and responsibilities are the same, which is how a single project ends up with a dozen "architects".

And not one of them has any expertise in hardware or OS internals, which I consider a very important - if not essential - adjunct to being able to effectively design systems-in-the-large. But then, they're not actually doing systems-in-the-large, just large applications.


In general terms, I love architecture as it affords me the opportunity to look at the big picture of a problem and think through different approaches. In the economic downturn of the last several years, architecture has been especially hard I think due to the fact that most of our work was focused on process improvement and scaling back our environment as opposed to building new stuff. It looks like things may be turning around though in the next year or two (all financial disclaimers apply to that statement!).

.......

Back to my first question: so would you guys say that an java architect is closer to a lead development role than other architect positions?



Not even "lead" developer as the term is used in this town.
 
Tony Cagle
Greenhorn
Posts: 23
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
So what title would you prefer now if "Architect" as been debased? While I understand the frustration of bloated titles, we can all agree that the architect title did mean something "back in the day". Perhaps architects deal with large systems and not just large applications, as you say. How do we differentiate ourselves from those ambitiously-titled programmers?

Here is the trickier question: is there even a need for architects in most organizations anymore?
 
Tim Holloway
Saloon Keeper
Posts: 27762
196
Android Eclipse IDE Tomcat Server Redhat Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Tony Cagle wrote:So what title would you prefer now if "Architect" as been debased? While I understand the frustration of bloated titles, we can all agree that the architect title did mean something "back in the day". Perhaps architects deal with large systems and not just large applications, as you say. How do we differentiate ourselves from those ambitiously-titled programmers?

Here is the trickier question: is there even a need for architects in most organizations anymore?



Well, if its pompous, you like, you could call "real" architects "Enterprise Architect". My bigger objection is calling people architects when they're not even allowed to make basic design decisions. Not because it's bloated, but because it's functionally incorrect.

Myself, I differentiate myself by actually performing those functions, so my business cards normally just read "Software Engineer". There's a whole 'nother argument about whether people of my stripe are "real engineers", but it suffices. I don't feel the need to call myself Grand High Poobah. My greatness speaks for itself.

Yes, the bigger and more complicated an enterprise, the more need there is for someone who can keep the software side of the Big Picture in perspective. And big and complicated have been where everyone seems to end up sooner or later, if they're a growing concern.
 
Jimmy Clark
Ranch Hand
Posts: 2187
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Software Programmer

Software Developer

Software Engineer

Software Architect


There is a structured set of roles and responsibilites for each area. This has not changed. However, in some cases one person can serve in more than one role. How this is realized in a particular organization is what varies. And as we all know, the world is a very large place with thousands of organizations in hundreds of countries.

The biggest factor is the degree that management can plan and control how titles are applied and what tasks and responsibilities are associated with each role. This will vary from organization to organization and also be effected by the size of the organization, product, service, technology, etc.

Too many factors to effectively categorize or generalize anything...nice to hear people's opinions however.

The actual meaning of the architect title is then only applicable to the organization in which it is used. In other words, it will mean different things in different places.


Software Engineering Institute - Carnegie Mellon University
http://www.sei.cmu.edu/


 
reply
    Bookmark Topic Watch Topic
  • New Topic