home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / JOB4.ZIP / OOHB0124.HBK < prev    next >
Encoding:
Text File  |  1995-10-24  |  17.8 KB  |  344 lines

  1. 344
  2. Computer Programmers 
  3.  
  4. (D.O.T.  030.162-010, -018, -022, and .167-010)
  5.  
  6. Nature of the Work
  7.  
  8. Computers increasingly affect our daily lives.  They control the
  9. temperature and air quality in office buildings, expand dramatically
  10. the capabilities of our telephones, control manufacturing and other
  11. business processes, and even control the scoreboards at major
  12. athletic events.  Computer programmers write, update, and maintain
  13. the detailed instructions (called programs or software) that list in
  14. a logical order the steps that computers must execute to perform
  15. these and other functions.
  16.  
  17.    In many large organizations, programmers follow descriptions
  18. prepared by systems analysts who have carefully studied the task
  19. that the computer system is going to perform.  These descriptions
  20. list the input required, the steps the computer must follow to
  21. process data, and the desired arrangement of the output.  (A more
  22. detailed description of the work of systems analysts is presented in
  23. the statement on computer scientists and systems analysts elsewhere
  24. in the Handbook.) Some organizations, particularly smaller ones, do
  25. not employ systems analysts.  Instead, workers called
  26. programmer-analysts are responsible for both systems analysis and
  27. programming.  Programmers in software development companies often
  28. work without the contribution of systems analysts.  Instead, they
  29. may work directly with experts from various fields to create
  30. software either programs designed for specific clients or packaged
  31. software for general use ranging from games and education software
  32. to programs for desktop publishing, financial planning, and
  33. spreadsheets.
  34.  
  35.    The transition from a mainframe environment to primarily a PC-based
  36. environment has brought about a blurring of the once rigid
  37. distinction between the programmer and the user.  Increasingly adept
  38. users are taking over many of the programming tasks previously
  39. performed by programmers.  For example, the growing use of packaged
  40. software, like spreadsheet and data base management software
  41. packages, allows users to write simple programs to calculate or
  42. access data.
  43.  
  44.    Regardless of setting, programmers write specific programs by
  45. breaking down each step into a logical series of instructions the
  46. computer can follow.  They then code these instructions in a
  47. conventional programming language, such as C and FORTRAN, or one of
  48. the more advanced artificial intelligence or object oriented
  49. languages, such as LISP, Prolog, C++, or Ada.
  50.  
  51.    Much of the programming being done today is the preparation of
  52. packaged software, one of the most rapidly growing segments of the
  53. computer industry.  Despite the prevalence of packaged software,
  54. many programmers are involved in updating, repairing, and modifying
  55. code for existing programs.  When making changes to a section of
  56. code, called a routine, programmers need to make other users aware
  57. of the task that the routine is to perform.  They do this by
  58. inserting comments in the coded instructions so others can
  59. understand the program.  Programmers using computer-aided software
  60. engineering (CASE) can concentrate on writing the unique parts of
  61. the program because the computer automates some of the more basic
  62. processes.  This also yields more reliable and consistent programs
  63. and increases programmers' productivity by eliminating some of the
  64. routine steps.
  65.  
  66.    When a program is ready to be tested, programmers run the program to
  67. ensure that the instructions are correct and will produce the
  68. desired information.  They prepare sample data that test every part
  69. of the program and, after trial runs, review the results to see if
  70. any errors were made.  If errors do occur, the programmer must
  71. change and recheck the program until it produces the correct
  72. results.  This is called debugging the program.
  73.  
  74.    Finally, programmers working in a mainframe environment prepare
  75. instructions for the computer operator who will run the program.
  76. (The work of computer operators is described in the statement on
  77. computer and peripheral equipment operators elsewhere in the
  78. Handbook.) They may also contribute to a user's manual for the
  79. program.
  80.  
  81.    Programs vary with the type of information to be accessed or
  82. generated.  For example, the data involved in updating financial
  83. records are different from those required to simulate a flight on a
  84. pilot trainee's monitor.  Although simple programs can be written in
  85. a few hours, programs that use complex mathematical formulas or many
  86. data files may require more than a year of work.  In most cases,
  87. several programmers may work together as a team under a senior
  88. programmer's supervision.
  89.  
  90.    Programmers often are grouped into two broad types: applications
  91. programmers and systems programmers.  Applications programmers
  92. usually are oriented toward business, engineering, or science.  They
  93. write software to handle specific jobs, such as a program used in an
  94. inventory control system or one to guide a missile after it has been
  95. fired.  They also may work alone to revise existing packaged
  96. software.  Systems programmers, on the other hand, maintain the
  97. software that controls the operation of an entire computer system.
  98. These workers make changes in the sets of instructions that
  99. determine how the central processing unit of the system handles the
  100. various jobs it has been given and communicates with peripheral
  101. equipment, such as terminals, printers, and disk drives.  Because of
  102. their knowledge of the entire computer system, systems programmers
  103. often help applications programmers determine the source of problems
  104. that may occur with their programs.
  105.  
  106.    Many programmers develop packaged software.
  107.  
  108. Working Conditions
  109.  
  110. Programmers work in offices in comfortable surroundings.  They
  111. usually work about 40 hours a week, but their hours are not always
  112. from 9 to 5.  Programmers may report early or work late to use the
  113. computer when it is available; occasionally, they work longer hours
  114. in order to meet deadlines or fix critical problems that occur
  115. during off hours.
  116.  
  117.    Because programmers spend long periods of time in front of a
  118. computer monitor typing at a keyboard, they are susceptible to
  119. eyestrain and back discomfort and hand and wrist problems.
  120.  
  121. Employment
  122.  
  123. Computer programmers held about 555,000 jobs in 1992.  Programmers
  124. are employed in most industries, but the largest concentrations are
  125. in data processing service organizations, including firms that write
  126. and sell software; firms that provide engineering and management
  127. services; manufacturers of office, computing, and accounting
  128. machines; banks; educational institutions, and government agencies.
  129.  
  130.    Applications programmers work for all types of firms that use
  131. computer systems.  Systems programmers, on the other hand, usually
  132. work for organizations with large computer centers and for firms
  133. that manufacture computers or develop software.
  134.  
  135.    A small but growing number of programmers are employed on a
  136. temporary basis.  A marketing firm, for example, may need the
  137. services of several extra programmers to write and debug the
  138. software necessary to get a new data base management system
  139. running.  Once the software is functioning, however, their
  140. services are no longer needed.  Rather than hiring these programmers
  141. as permanent employees and then laying them off after the job is
  142. done, employers increasingly are contracting with temporary help
  143. agencies, consulting firms, or directly with programmers themselves.
  144. Such temporary jobs usually last several months but some last a year
  145. or longer.
  146.  
  147. Training, Other Qualifications, and Advancement
  148.  
  149. There are no universal training requirements for programmers because
  150. employers' needs vary so much that computer applications have become
  151. so widespread and varied.  Computer programming is taught at public
  152. and private vocational schools, community and junior colleges, and
  153. universities.  High schools in many parts of the country also offer
  154. introductory courses in data processing.  Many programmers obtain
  155. 2-year degrees or certificates.  Two-year colleges are targeted
  156. toward producing graduates for entry level jobs and may have strong
  157. ties to the local job market.
  158.  
  159.    The majority of programmers hold a 4-year degree.  Of these, some
  160. hold a B.A.  or B.S.  in computer science or information systems
  161. while others have taken special courses in computer programming to
  162. supplement their study in fields such as accounting, inventory
  163. control, or other business areas.  College graduates who are
  164. interested in changing careers or developing an area of expertise
  165. may return to a junior college for more training.
  166.  
  167.    The level of education and quality of training that employers seek
  168. have been rising due to the growth in the number of qualified
  169. applicants and the increasing complexity of some programming tasks.
  170. Bachelor's degrees are now commonly required; in the absence of a
  171. degree, substantial specialized experience may be needed.
  172.  
  173.    Employers using computers for scientific or engineering applications
  174. prefer college graduates who have degrees in computer or information
  175. science, mathematics, engineering, or the physical sciences.
  176. Graduate degrees are required for some jobs.  Knowledge of C and
  177. FORTRAN programming languages is desirable since these are the most
  178. common languages used in this area.
  179.  
  180.    Employers who use computers for business applications prefer to hire
  181. people who have had college courses in management information
  182. systems (MIS), programming, and business.  Knowledge of Cobol, C,
  183. Fourth Generation Languages (4GL), CASE tools, C++ and other object
  184. oriented programming languages is highly desirable.  General
  185. business skills and experience related to the operations of the firm
  186. generally are preferred by employers.  In the future, it may be
  187. common for applications programmers to obtain a multidisciplinary
  188. degree to provide adequate knowledge of the application area along
  189. with programming skills.  A relatively small number of employers
  190. promote workers such as computer operators who have taken courses in
  191. programming to programmer jobs because of their knowledge of and
  192. particular work experience with computer systems.
  193.  
  194.    Most systems programmers hold a 4-year degree in computer science.
  195. Extensive knowledge of operating systems is essential.  This
  196. includes being able to configure the operating system to work with
  197. different types of hardware and adapting the operating system to
  198. best meet the needs of the particular company.
  199.  
  200.    The Institute for Certification of Computer Professionals offers the
  201. Certificate in Computer Programming (CCP) to those who pass a core
  202. examination plus exams in two specialty areas.  College graduates
  203. with little or no experience may be tested for certification as an
  204. Associate Computer Professional (ACP).  Certification is not
  205. mandatory but it may give a jobseeker a competitive advantage.
  206.  
  207.    When hiring programmers, employers look for people who can think
  208. logically and who are capable of exacting analytical work.  The job
  209. calls for patience, persistence, and the ability to work with
  210. extreme accuracy even under pressure.  Ingenuity and imagination are
  211. also particularly important when programmers test their work for
  212. potential failures.  Increasingly, interpersonal skills are valued
  213. because of the use of programmer teams and user support centers.
  214. The ability to work with abstract concepts and do technical analysis
  215. is especially important for systems programmers because they work
  216. with the software that controls the computer's operation.
  217.  
  218.    Beginning programmers may spend their first weeks on the job
  219. attending training classes.  After this initial instruction, they
  220. may work alone on simple assignments, or on a team with more
  221. experienced programmers.  Either way, they generally must spend at
  222. least several months working under close supervision.  Because of
  223. rapidly changing technology, programmers must continuously update
  224. their training by taking courses sponsored by their employer or
  225. software vendors.
  226.  
  227.    For skilled workers, the prospects for advancement are good.  In
  228. large organizations, they may be promoted to lead programmer and be
  229. given supervisory responsibilities.  Some applications programmers
  230. become systems programmers after they gain experience and take
  231. courses in systems software.  With general business experience, both
  232. applications programmers and systems programmers may become systems
  233. analysts or be promoted to a managerial position.  Other
  234. programmers, with specialized knowledge and experience with a
  235. language or operating system, may work in research and development
  236. areas such as artificial intelligence or CASE.
  237.  
  238. Job Outlook
  239.  
  240. Employment of programmers is expected to grow faster than the
  241. average for all occupations through the year 2005 as computer usage
  242. expands.  The demand for programmers will increase as organizations
  243. seek new applications for computers and improvements to the software
  244. already in use.  The rising demand for information, further
  245. automation of offices and factories, advances in health and
  246. medicine, and continuing scientific research will stimulate the
  247. demand for skilled programmers.
  248.  
  249.    One important area of progress will be data communications.
  250. Networking computers so they can communicate with each other is
  251. necessary to achieve the greater efficiency that organizations
  252. require to remain competitive.  Expert systems and other artificial
  253. intelligence principles and languages will increasingly be used in
  254. the years ahead, becoming productivity-enhancing tools available to
  255. programmers.  Programmers will be creating and maintaining expert
  256. systems and embedding these technologies in more and more products.
  257. As this trend continues, knowledge of C++ and other object-oriented
  258. languages will become increasingly important.
  259.  
  260.    Employment, however, is not expected to grow as rapidly as in the
  261. past as improved software and programming techniques, including CASE
  262. and 4GL, simplify or eliminate some programming tasks.  Someone who
  263. can apply CASE tool programming along with design and systems
  264. analysis is able to produce applications quickly and more cheaply.
  265. Employers are increasingly interested in workers who can combine
  266. both of these skills.
  267.  
  268.    In addition, the introduction of data base management systems is
  269. allowing users to take over many of the tasks previously performed
  270. by the programmer.  Greater use of packaged software such as word
  271. processing and spreadsheet packages also may moderate the growth in
  272. demand for applications programmers.
  273.  
  274.    Although the proportion of programmers leaving the occupation each
  275. year is smaller than in most occupations, most of the job openings
  276. for programmers will result from replacement needs.  Most of the
  277. programmers who leave the occupation transfer to other occupations,
  278. such as manager or systems analyst.  Opportunities will exist
  279. throughout the economy, but jobs for both systems and applications
  280. programmers should be particularly plentiful in data processing
  281. service firms, software houses, and computer consulting businesses.
  282.  
  283.    Because the number and quality of applicants have increased,
  284. employers have become more selective.  Competition has increased for
  285. entry level positions, affecting even applicants with a bachelor's
  286. degree.  Graduates of 2-year programs in data processing and people
  287. with less than a 2-year degree or its equivalent in work experience
  288. are facing especially strong competition for programming jobs.  Many
  289. observers expect opportunities for people without college degrees to
  290. diminish in coming years as programming tasks become more complex.
  291. Prospects should be good for college graduates who are familiar with
  292. a variety of programming languages, particularly newer languages
  293. that apply to computer networking, data base management, and
  294. artificial intelligence.
  295.  
  296.    Many employers prefer to hire applicants with previous experience in
  297. the field.  Firms also desire programmers who develop a technical
  298. specialization in areas such as structured methodology programming,
  299. multimedia programming, graphic user interface, or 4th and 5th
  300. generation programming tools.  Therefore, people who want to become
  301. programmers can enhance their chances by combining work experience
  302. with the appropriate formal training.  Students have various
  303. options: Holding a summer or part-time job in a data processing
  304. department, participating in a college work-study program, or
  305. undertaking an internship.  Students can greatly improve their
  306. employment prospects by also taking courses such as accounting,
  307. management, engineering, or science allied fields in which
  308. applications programmers are in demand.
  309.  
  310. Earnings
  311.  
  312. Median earnings of programmers who worked full time in 1992 were
  313. about $35,600 a year.  The lowest 10 percent earned less than
  314. $19,700, and the highest 10 percent, more than $58,000.  On average,
  315. systems programmers earn more than applications programmers.
  316.  
  317.    In the Federal Government, the entrance salary for programmers with
  318. a college degree or qualifying experience was about $18,300 a year
  319. in 1993; for those with a superior academic record, $22,700.
  320.  
  321. Related Occupations
  322.  
  323. Programmers must pay great attention to detail as they write and
  324. debug programs.  Other professional workers who must be
  325. detail-oriented include statisticians, engineers, financial
  326. analysts, accountants, auditors, actuaries, and operations research
  327. analysts.
  328.  
  329. Sources of Additional Information
  330.  
  331.    State employment service offices can provide information about job
  332. openings for computer programmers.  Also check with your city's
  333. chamber of commerce for information on the area's largest employers.
  334. For information about certification as a computer professional,
  335. contact:
  336.  
  337.    Institute for the Certification of Computer Professionals, 2200 East
  338. Devon Ave., Suite 268, Des Plaines, IL 60018.
  339.  
  340.    Further information about computer careers is available from:
  341.  
  342.    The Association for Computing Machinery, 1515 Broadway, New York, NY
  343. 10036.
  344.