Application software engineers design, construct, modify and maintain computer applications software and specialized utility programs. They also create systems software and packaged systems and develop customized applications. Application software engineers examine the needs of the user and design software for the user with the goal of optimizing operational efficiency. They create the software that people use for their personal lives and at work.
Application software engineers utilize numerous programming languages to accomplish their tasks. The programming languages typically used are Java, C and C++. COBOL and Fortran are used less often.
They utilize various types of software including object or component oriented development software and varieties such as web platform development, database management system and program testing software.
Application software engineers should be knowledgeable with engineering, computers, technology, electronics, design techniques and telecommunication systems. A solid foundation in algebra, arithmetic, statistics, calculus, geometry and their applications is very useful. Being proficient with the English language is also helpful.
Those in the profession need good complex problem solving and troubleshooting skills and the ability to think logically. A talent for effectively analyzing the cost and benefits of specific actions is advantageous.
- Design, develop and modify software systems
- Recommend and prepare computer specifications and layouts
- Consult with engineers, programmers and systems analysts to design the system
- Confer with co-workers regarding the performance requirements, interfaces and the capabilities and limitations of the system
- Analyze needs and product requirements in order to produce a design
- Make existing software compatible with new hardware
- Perform systems analysis
- Modify existing software to improve its performance or to correct errors
- Coordinate the installation of software systems
- Discuss software system design and maintenance with clients
- Create and manage software systems validation and testing procedures
They typically work in comfortable offices or in computer laboratories. They spend a lot of time working with computers. Some application software engineers may be required to travel for meetings with clients. Some employers allow work to be done from home. The typical work week includes at least 40 hours. Sometimes evening and weekend work is required to solve technical problems or to meet deadlines.
They must be up-to-date with new technologies and the latest knowledge on the subject. Being proficient at analyzing information and evaluating results is very beneficial. Attention to detail, analytical thinking and being innovative are important aspects of the position. In addition, they often consult with co-workers face-to-face and by email and telephone.
Those with the appropriate education and experience have the best opportunities for advancement. Many employers prefer workers who have certifications and experience with particular programming languages and methodologies. College graduates without experience have opportunities for employment with large computer and consulting firms that provide additional training. In addition, in order to stay competitive in the field, an application software engineer needs to learn the newest technical skills utilized in the profession.
The median wage in 2007 was $83,130 and $39.97 per hour. The average salary for undergraduates entering the occupation in 2007 was $56,201. In 2006, there were an estimated 507,000 positions. The estimated growth rate from 2006 to 2016 is 21 percent which is significantly higher than the average for all occupations.
Software Engineering Degrees, Certification, and Licensing
Typically, application software engineers have a bachelor's degree in computer science or software engineering. Some have bachelor's degrees in electrical engineering or a similar technical field. Some employers hire people with graduate degrees for complicated jobs. According to the Bureau of Labor Statistics, in 2006 about 80% of employed application software engineers held at least a bachelor's degree. Students seeking a career as an application software engineer can improve their employment opportunities by participating in an internship.
- Institute of Electronics and Electrical Engineers Computer Society Certification of Computing Professionals
- Association for Computing Machinery
- National Workforce Center for Emerging Technologies
The primary employers include software publishers, computer systems design and related services, insurance carriers, manufacturing companies and computer game design companies. Management, scientific and technical consulting services firms are also major employers.