How do they match: Software Developers

  • Computer Programmer Analyst
  • Computer Applications Developer
  • Computer Applications Engineer
  • Computer Architect
  • Computer Consultant
  • Computer Engineer
  • Computer Software Engineer
  • Computer Systems Engineer
  • Computer Systems Software Architect
  • Computer Systems Software Engineer
  • Applications Programmer
  • Java Programmer
  • Mainframe Systems Programmer
  • Software Computer Specialist

  • Research, design, and develop computer and network software or specialized utility programs. Analyze user needs and develop software solutions, applying principles and techniques of computer science, engineering, and mathematical analysis. Update software or enhance existing software capabilities. May work with computer hardware engineers to integrate hardware and software systems, and develop specifications and performance requirements. May maintain databases within an application area, working individually or coordinating database development as part of a team.

  • Confer with systems analysts, engineers, programmers and others to design systems and to obtain information on project limitations and capabilities, performance requirements and interfaces.
  • Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcomes and consequences of design.
  • Develop or direct software system testing or validation procedures, programming, or documentation.
  • Obtain and evaluate information on factors such as reporting formats required, costs, or security needs to determine hardware configuration.
  • Supervise and assign work to programmers, designers, technologists, technicians, or other engineering or scientific personnel.
  • Supervise the work of programmers, technologists and technicians and other engineering and scientific personnel.

  • Apply mathematical principles or statistical approaches to solve problems in scientific or applied fields.
  • Modify software programs to improve performance.
  • Monitor computer system performance to ensure proper operation.
  • Provide recommendations to others about computer hardware.
  • Teach others to use computer equipment or hardware.