Kazun,
I too am confused by the many titles seperate companies use to distinguish job duties... But I will try to give you what
I think several of these titles mean...
Java Engineer: Probably a generic catch-all term for Java Software Engineer - can deal with anything from coding to design to QA... possibly a mix of all depending on the company.
Java Architect: These people usually develop the design of the system to be developed... some coding and other duties will probably be required, but a majority of the time will be spent on high-level design.
Java Developer: Probably another catch-all term... (Just like Java Engineer above.) Or could possibly be another term for Java Architect (above), as the Sun Certified Java Developer exam focuses on a mixture of programming and system design.
Java Consultant: Another catch-all term... However, this title
usually means that the person is working on a contract basis with the company and not as a salaried employee.
Java Administrator: Not sure what this one means... Perhaps someone who manages Java Programmers (i.e. mid-level management), or someone who keeps the Java systems running (i.e. like a Systems Administrator) ? I am really not sure what this one is...
Java Analyst: This is another strange title... Could possibly be used to mean a Java Consultant (above) or QA (below) specifically targeted towards Java.
QA: Quality
Assurance. These are the people that
test all the systems and the code to make sure it works as it is supposed to... Doesn't necessarily always work with Java, usually works with all the programs the company produces...
These may not all be correct... these definitions are just from what I have gleaned from my limited experience as an "Engineer - Software" (what my company calls my position!
)
Anyway, hope this helps,
-Nate