JOIN
Get Time
forums   
Search | Watch Thread  |  My Post History  |  My Watches  |  User Settings
View: Flat (newest first)  | Threaded  | Tree
Previous Thread  |  Next Thread
IT Positions | Reply
Hello,

there are lots of positions in the IT field, that a person with IT related training and/or knowleadge could occupy.

The typical positions would be

Programmer
Product (Software/etc) Quality Assurance / Tester
Team Manager (project manager)
Database / System Modelling (topcoder design competition probably goes here)
Software Engineer (closely related to systems modelling?)

Systems administrator
Network Engenier (as in someone who does structured cabling for networks)

and others.

Basicly I would like to get input (type of work, tools, and so on) on these and other IT (maybe less common) related job positions.

Thanks for your help.
Re: IT Positions (response to post by WaterIsPure) | Reply
Way too big in scope of a question - try to be more specific for a specific thing
Re: IT Positions (response to post by Pops) | Reply
Just looking for less common positions (or areas) to see if there's something I could be interested in.

Example:

What's the difference between a software architect and a software engeneer?
Re: IT Positions (response to post by WaterIsPure) | Reply
The exact meanings of the titles and nature of the work will vary from employer to employer. The US Department of Labor has one set of definitions (together with a somewhat outdated set of "outlooks") for several IT-related titles at http://www.bls.gov/oco/oco1002.htm.

Some overly general definition of the items in your list:

  • Programmer: This title can mean a variety of things. Sometimes this is a catch-all title that includes differing positions in architecture, design, development, verification, and validation. Sometimes there is a verful distinction beween Analysts and Programmers (usually when a set of applications all center around a common database.
  • Product (Software/etc) Quality Assurance / Tester: There is a large difference between QA and Testing. Testing (verification) is a process used to quantify they likelihood that the software meets requirements. Quality Assurance is the broader concern that the processes defined for producing the product were followed; this includes assuring that all required test cases have been executed, but may also involve verifying that inspections and walkthroughs occurred, internal and contract standards were followed, etc.
  • Team Manager (project manager): Again there is a difference between a Team Manager and a Project Manager. Typically a team manager holds the "jacket" for the members of the team. S/he has the responsibility to hire, appraise, equip, and train the team. A project manager deals with managing the project; breaking it down into tasks, getting resources assigned to the tasks, scheduling the tasks, and managing the execution of the project. In many companies Project Management is a technical, not a management position; in others the roles may be combined.
  • Database / System Modelling: In some environments model-based development is the key bridge from requirements to design. The System Analyst title is one that plays here for some forms of Database modeling.
  • Software Engineer: This is again an ill-defined term (and in some US jurisdictions illegal designation where the term Engineer is a protected term with certain legal ramifications). In general a Software Engineering title is similar to my description of programmer above. The implication of a company using this title is that they are trying to emphasize that software development is an engineering problem and needs rigorous engineering processes applied to it. There are endless debates as to whether the current software body of knowledge is sufficient to allow engineering practices to be applied to development.
  • Systems administrator: This is usually more of an operations-side of the business. S/he is the one you go to to reset passwords, increase quota, etc. The administrators "own" the systems they administer in that they need to manage the resources on the machines and assure that the applications on these systems continue to run smoothly.
  • Network Engineer: This goes beyond cabling to all aspects of network architecture, design, planning, implementation, and oversight. Depending on the IT shop this can include the care and feeeding of many operating systems, servers, and applications as well.


The quick answer to the difference between a software architect and a software engineer is that to some extent a software architect is a more focused term: it describes an individual who defines the architecture (the highest level of the design) of a software-based system. Software architecture is a piece of the overall software engineering process.

There are, of course many more titles out there. Some of the descriptions I have above are split into finer grained titles, other places look for Jack/Jill-of-all-Trades who can fill in on a wide variety of these assignments. In some cases Software Engineer is used to describe your entire list until you get to the operations-side titles. You will in general be much better off asking a prospective employer (and even better your prospective peer employees) what it is they do day to day.
RSS