Detailed Guide forSoftware Developers, Applications in California
May also be called: Application Integration Engineers; Applications Developers; Business Systems Analysts; Computer Consultants; Programmer Analysts; Software Architects; Software Development Engineers; Software Engineers; and Technical Consultants
Specialties within this occupation include: Mobile Applications Software Developers
What Would I Do?
Software Developers, Applications develop, create, and modify general computer applications software or specialized utility programs. They design and develop software for computer games, business applications, and middleware. Their work evolves rapidly, reflecting new areas of specialization or changes in technology, as well as the preferences and practices of employers and customers. Applications Software Developers apply the principles and techniques of computer science, engineering, and mathematical analysis to the design, development, testing, and evaluation of the software that enable computers to perform their many applications.
Mobile Applications Software Developers create and modify applications (apps) specifically for smart phones, tablets, and other mobile devices. In addition, apps are often used by businesses as a marketing aspect, thus Mobile Applications Software Developers should be aware of various business and marketing strategies.
Tools and Technology
Applications Software Developers use computers and computer servers in their work. They may also use digital cameras, flash memory storage devices, integrated circuit testers, and tablets or smart phones. They use a variety of software such as development environment, object or component oriented development, program testing, Web platform development, and database management systems.
Important Tasks and Related Skills
Each task below is matched to a sample skill required to carry out the task.
|View the skill definitions|
|Task||Skill Used in this Task|
|Confer with systems analysts, engineers, programmers and others to design system and to obtain information on project limitations and capabilities, performance requirements and interfaces.||Computers and Electronics|
|Modify existing software to correct errors, allow it to adapt to new hardware, or to improve its performance.||Troubleshooting|
|Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.||Critical Thinking|
|Consult with customers about software system design and maintenance.||Oral Comprehension|
|Coordinate software system installation and monitor equipment functioning to ensure specifications are met.||Deductive Reasoning|
|Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design.||Engineering and Technology|
|Develop and direct software system testing and validation procedures, programming, and documentation.||Programming|
|Analyze information to determine, recommend, and plan computer specifications and layouts, and peripheral equipment modifications.||Active Learning|
|Obtain and evaluate information on factors such as reporting formats required, costs, and security needs to determine hardware configuration.||Complex Problem Solving|
Below is a definition for each skill.
|View the tasks to skills list|
|Computers and Electronics||Knowledge of circuit boards, processors, chips, electronic equipment, and computer hardware and software, including applications and programming.|
|Troubleshooting||Determining causes of operating errors and deciding what to do about it.|
|Critical Thinking||Using logic and reasoning to identify the strengths and weaknesses of alternative solutions, conclusions or approaches to problems.|
|Oral Comprehension||The ability to listen to and understand information and ideas presented through spoken words and sentences.|
|Deductive Reasoning||The ability to apply general rules to specific problems to produce answers that make sense.|
|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.|
|Programming||Writing computer programs for various purposes.|
|Active Learning||Understanding the implications of new information for both current and future problem-solving and decision-making.|
|Complex Problem Solving||Identifying complex problems and reviewing related information to develop and evaluate options and implement solutions.|
|Identifying measures or indicators of system performance and the actions needed to improve or correct performance, relative to the goals of the system.|
|Knowledge of arithmetic, algebra, geometry, calculus, statistics, and their applications.|
Applications Software Developers work in well-lit and comfortable offices or computer laboratories. They often work in teams and regularly interact with team members and other staff, as well as with customers. They frequently work more than 40 hours a week due to the project-oriented nature of their work. Applications Software Developers may also work evenings and weekends to meet deadlines or solve technical problems.
Applications Software Developers may experience eye strain, back discomfort, and hand and wrist problems from typing on a computer keyboard and using a mouse. Those who are employed by software vendors and consulting firms spend much of their time away from their offices, frequently traveling overnight to meet with customers. Telecommuting is becoming more common allowing Applications Software Developers to work away from their main office or in remote locations.
Most workers in this occupation are not represented by unions. However, those in government positions may join unions, such as the Service Employees International Union.
Will This Job Fit Me?
The job of Applications Software Developer may appeal to those who enjoy activities that involve working with ideas and require an extensive amount of thinking. The Applications Software Developer occupation involves searching for facts and figuring out problems. Individuals who value job security and leadership opportunities may enjoy this type of job.
Employers seek Applications Software Developers with strong programming, systems analysis, interpersonal, communications, and business skills. In addition, candidates need ingenuity, creativity and the ability to take initiative. They should also have a natural aptitude for performing this type of work.
What Wages and Benefits Can I Expect?
The median wage in 2016 for Software Developers, Applications in California was $121,475 annually, or $58.40 hourly. The median is the point at which half of the workers earn more and half earn less.
Applications Software Developers generally receive medical, dental, and life insurance; vacation; sick leave; and retirement plans from their employers. Some companies also offer stock options. Those who are self-employed must provide their own insurance and retirement.
What is the Job Outlook?
Large growth is expected to occur as businesses, organizations, and individuals continue to adopt and integrate new technologies and maximize the efficiency of their current computer systems. Competition among businesses should create an incentive for increasingly sophisticated technological innovations; therefore, organizations will need more Applications Software Developers to implement these new technological changes.
Demand for Applications Software Developers should increase as computer networking continues to grow. Increased use of the Internet, the rise in the number of websites, and mobile technology, such as wireless Internet, are driving the demand for a variety of new products that Applications Software Developers will help to create. At the same time, handheld computers create demand for new mobile applications. As these devices become a larger part of the business environment, it will be necessary to integrate current computer systems with new, more mobile technology.
Projections of Employment
In California, the number of Software Developers, Applications is expected to grow much faster than average growth rate for all occupations. Jobs for Software Developers, Applications are expected to increase by 42.5 percent, or 51,500 jobs between 2014 and 2024.
|Estimated Employment and Projected Growth|
Software Developers, Applications
(Estimated Year-Projected Year)
Due to Net
|View Projected Growth for All Areas|
Annual Job Openings
In California, an average of 5,140 new job openings per year is expected for Software Developers, Applications, plus an additional 1,730 job openings due to net replacement needs, resulting in a total of 6,880 job openings.
|Estimated Average Annual Job Openings|
Software Developers, Applications
|Jobs From Growth||Jobs Due to|
|View Data for All Areas|
How Do I Qualify?
Education, Training, and Other Requirements
Employers usually prefer to hire Applications Software Developers with a bachelor’s degree in computer science, software engineering, or mathematics. Degrees in engineering disciplines such as electrical/electronic or computer engineering are also desirable. Employers with jobs that are more complex and require a high degree of technical knowledge may prefer a candidate with a master’s degree.
Most employers prefer candidates with a broad knowledge of and experience in computer systems and technologies. They should also be familiar with more than one operating system and be able to debug applications. This knowledge and experience can be obtained through formal job experience or by doing projects on personal time, such as writing software applications or creating websites. Employers may also look at the candidate's open source contributions. Many students seeking software development jobs enhance their employment opportunities by participating in internships offered through their schools. These programs provide students with valuable, hands-on, real-world experience. In many firms, mentoring has become part of the evaluation process for new hires.
Early Career Planning
High school students interested in this kind of work should take courses in mathematics, computer science, engineering technology, science, and language arts. Regional Occupational Programs (ROP) are available for business applications, computer applications, computer information systems, computer programming, computer science, information technology, and software design. To find an ROP program near you, go to the California Association of Regional Occupational Centers and Programs Web site.
Applications Software Developers must continually acquire new skills as technology evolves and advances, in order to remain in this competitive and dynamic field. Continuing education and professional development seminars are offered by employers, software vendors, colleges and universities, and private training institutions.
Certification is generally not required to work as an Applications Software Developer; however, some product vendors or software firms require Software Developers who work with their products to be certified. In addition, voluntary certification can be obtained through professional computing associations and is a good way to demonstrate competence and gain a competitive edge. For more information, go to the U.S. Department of Labor's Career InfoNet Web site and scroll down to "Career Tools." Click on "Certification Finder" and follow the instructions to locate certification programs.
Where Can I Find Training?
There are two ways to search for training information:
- Search by Field of Study to find what programs are available and what schools offer those programs. You may use keywords such as: Computer Engineering, Computer Games, Computer Programming, Computer Software, and Computer Systems.
- Search by Training Provider to find schools by name, type of school, or location.
Contact the schools you are interested in to learn about the classes available, tuition and fees, and any prerequisite course work.
Where Would I Work?
The largest industries employing Software Developers, Applications are as follows:
|Industry Title||Percent of Total Employment for Occupation in California|
|Computer Systems Design and Rel Services ||34.7%|
|Other Information Services ||15.8%|
|Software Publishers ||10.1%|
|Scientific Research and Development Svc ||4.0%|
|Computers and Peripheral Equipment ||3.7%|
Finding a Job
Networking is important in this occupation, since many Applications Software Developers find work through referrals. Joining computer user groups is a good way to meet other Software Developers and potential employers. Jobs can also be found through direct application to employers, newspaper classified advertisements, online job boards, and professional organizations. Online job opening systems include JobCentral at www.jobcentral.com and CalJOBSSM at www.caljobs.ca.gov.
To find your nearest One-Stop Career Center, go to Service Locator. View the helpful job search tips for more resources. (requires Adobe Reader).
Yellow Page Headings
You can focus your local job search by checking employers listed online or in your local telephone directory. Below are some suggested headings where you might find employers of Software Developers, Applications.
- Computer Network Design & Systems
- Computer Software & Services
- Computer Software Publishers & Developers
- Computer - Wholesale & Manufacturers
- Computers - System Designers & Consultants
- Internet Products & Services
Find Possible Employers
To locate a list of employers in your area, go to "Find Employers" on the Labor Market Information Web site:
- Select one of the top industries that employ the occupation. This will give you a list of employers in that industry in your area.
- Click on "View Filter Selections" to limit your list to specific cities or employer size.
- Click on an employer for the street address, telephone number, size of business, Web site, etc.
- Contact the employer for possible employment.
Where Could This Job Lead?
Applications Software Developers may advance to supervisory or managerial positions within the information technology (IT) department of a firm, particularly those who have high levels of communication and project management skills. Those with several years of experience or expertise can find lucrative opportunities working as systems designers or independent consultants.
Below is a list of occupations related to Software Developers, Applications with links to more information.
|Computer Science Teachers, Postsecondary||Profile|
|Computer Systems Analysts||Guide|
|Electrical and Electronics Drafters||Profile|
|Software Developers, Systems Software||Guide|
These links are provided for your convenience and do not constitute an endorsement by EDD.
For the Career Professional
The following codes are provided to assist counselors, job placement workers, or other career professionals.