A computer programmer writes the software that enables computers to function. Programmers typically know two or more programming languages, as most languages are designed to be used to write code for specific applications. PHP is used to build websites, SQL is used to build databases, XML is used to develop applications for transporting and storing data and HTML is used for displaying data. While the specific goals of a programmer's job vary based on the needs of her employer, nearly all programmers have a similar set of job objectives.
Clearly Defining Goals
The first, and arguably most important, step for a programmer is to have a set of clearly defined goals. If you are working for an experienced client and with a professional software developer, then you will likely be provided with a program design, schedule and associated goals. If, however, you are working with an inexperienced client or no developer, it is incumbent on the programmer to negotiate with the client to establish a realistic set of goals and performance metrics before actually beginning the project.
Produce First Version
Writing code is where the rubber hits the road for programmers. Cranking out all of the code required to instruct the computer to do what the client wants is the primary job of a programmer, and writing all the code for a complex program could take weeks or even months. That said, code libraries and object-oriented programming, where programmers can drop in prewritten chunks of code into a larger program as needed, are becoming increasingly popular. Programmers on large projects often work as part of a team, where each programmer has responsibility for writing a specific section of code. The lead programmer and developer then bring all the parts together and begin the debugging process.
Rewriting and Debugging
Sometimes the first version of a program doesn't work as expected or simply doesn't get the job done. This means the program has to be rewritten -- in some cases, almost from scratch. In most cases, however, programs just need debugging; that is, correcting small errors errors that are causing the program to run slowly or not perform certain functions as desired. Debugging can take a few hours to a few months, depending on the size and complexity of the program, the language used and the expertise of the programmers involved.
Alpha testing is the final stage of a programmer's job. This first round of testing usually includes unit testing, component testing and a system test to ensure that download times are reasonable and the software produces the desired results. After all the bugs are ironed out, the software is ready for beta testing. Beta testing is where the intended users try out the software for the first time. Sometimes further updates are required after beta testing.
- WPA Pool/Getty Images News/Getty Images