Computer programmers design and create software applications. You may analyze, design, develop, test and maintain computer and Internet-based applications. Possibly, you'll write specialized applications or make custom programs to satisfy a user's particular needs. Not all programmers write code all day. You may evaluate the project requirements, participate in design meetings, determine the best solution to a problem or feature, and develop detailed design specifications. You use development tools and programming languages in creating and testing the software. You must also be good at documenting your work so others will know what you did and how. And of course, you have to test your work with real users to make sure it's free of errors and meets specifications.