Develop, create, and modify general computer applications software or specialized utility programs. Analyze user needs and develop software solutions. Design software or customize software for client use with the aim of optimizing operational efficiency. May analyze and design databases within an application area, working individually or coordinating database development as part of a team. May supervise computer programmers.
- .NET Developer
- Application Architect
- Application Integration Engineer
- Application Integrator
- Applications Analyst
- Applications Developer
- Applications Engineer
- Applications Programmer
- Applications Quality Assurance Specialist
- Applications Software Engineering Information Technology Specialist
- Modify existing software to correct errors, allow it to adapt to new hardware, or to improve its performance.
- Develop and direct software system testing and validation procedures, programming, and documentation.
- Confer with systems analysts, engineers, programmers and others to design system and to obtain information on project limitations and capabilities, performance requirements and interfaces.
- Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.
- Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design.
- Store, retrieve, and manipulate data for analysis of system capabilities and requirements.
- Consult with customers about software system design and maintenance.
- Supervise the work of programmers, technologists and technicians and other engineering and scientific personnel.
- Coordinate software system installation and monitor equipment functioning to ensure specifications are met.
- Obtain and evaluate information on factors such as reporting formats required, costs, and security needs to determine hardware configuration.
People who work in this occupation generally have the interest code: IRC.
This means people who work in this occupation generally have Investigative interests, but also prefer Realistic and Conventional environments.
People who work in this occupation generally prize Working Conditions, but also value Recognition and Achievement in their jobs.
- Computers and Electronics - Knowledge of circuit boards, processors, chips, electronic equipment, and computer hardware and software, including applications and programming.
- Mathematics - Knowledge of arithmetic, algebra, geometry, calculus, statistics, and their applications.
- English Language - Knowledge of the structure and content of the English language including the meaning and spelling of words, rules of composition, and grammar.
- Engineering and Technology - Knowledge of the practical application of engineering science and technology. This includes applying principles, techniques, procedures, and equipment to the design and production of various goods and services.
- Customer and Personal Service - Knowledge of principles and processes for providing customer and personal services. This includes customer needs assessment, meeting quality standards for services, and evaluation of customer satisfaction.
- Programming - Writing computer programs for various purposes.
- Complex Problem Solving - Identifying complex problems and reviewing related information to develop and evaluate options and implement solutions.
- Systems Analysis - Determining how a system should work and how changes in conditions, operations, and the environment will affect outcomes.
- Judgment and Decision Making - Considering the relative costs and benefits of potential actions to choose the most appropriate one.
- Systems Evaluation - Identifying measures or indicators of system performance and the actions needed to improve or correct performance, relative to the goals of the system.
- Operations Analysis - Analyzing needs and product requirements to create a design.
- Critical Thinking - Using logic and reasoning to identify the strengths and weaknesses of alternative solutions, conclusions or approaches to problems.
Most of these occupations require a four-year bachelor's degree, but some do not.
In 2012, the average annual wage in California was $105,120.00 with most people making between $64,970.00 and $150,350.00
During 2010, this occupation employed approximately 88,700 people in California. It is projected that there will be 113,300 employed in 2020.
This occupation will have about 2,460 openings due to growth and about 920 replacement openings for approximately 3,380 total annual openings.
Industry breakdown is not available for this occupation
majorComputer Engineering, General
onetSoftware Developers, Systems Software
collegeUniversity of Southern California
collegeUniversity of California-Los Angeles
majorComputer Software Engineering
collegeSan Jose State University
majorComputer Programming/Programmer, General
collegeCalifornia Polytechnic State University-San Luis Obispo
onetComputer and Information Research Scientists
onetComputer and Information Systems Managers