Software Developer
Other Titles
Application Developer, Application Integration Engineer, Developer, Infrastructure Engineer, Network Engineer, Software Architect, Software Developer, Software Development Engineer, Software Engineer, Systems Engineer
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.
Analyze information to determine, recommend, and plan installation of a new system or modification of an existing system.
Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.
Confer with data processing or project managers to obtain information on limitations or capabilities for data processing projects.
Confer with systems analysts, engineers, programmers and others to design systems and to obtain information on project limitations and capabilities, performance requirements and interfaces.
Consult with customers or other departments on project status, proposals, or technical issues, such as software system design or maintenance.
Coordinate installation of software system.
Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcomes and consequences of design.
Determine system performance standards.
Develop or direct software system testing or validation procedures, programming, or documentation.
Modify existing software to correct errors, adapt it to new hardware, or upgrade interfaces and improve performance.
Monitor functioning of equipment to ensure system operates in conformance with specifications.
Obtain and evaluate information on factors such as reporting formats required, costs, or security needs to determine hardware configuration.
Prepare reports or correspondence concerning project specifications, activities, or status.
Recommend purchase of equipment to control dust, temperature, or humidity in area of system installation.
Specify power supply requirements and configuration.
Store, retrieve, and manipulate data for analysis of system capabilities and requirements.
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.
Train users to use new or modified equipment.
Critical Thinking→ Using logic and reasoning to identify the strengths and weaknesses of alternative solutions, conclusions or approaches to problems.
Reading Comprehension→ Understanding written sentences and paragraphs in work related documents.
Programming→ Writing computer programs for various purposes.
Speaking→ Talking to others to convey information effectively.
Active Listening→ Giving full attention to what other people are saying, taking time to understand the points being made, asking questions as appropriate, and not interrupting at inappropriate times.
Writing→ Communicating effectively in writing as appropriate for the needs of the audience.
Monitoring→ Monitoring/Assessing performance of yourself, other individuals, or organizations to make improvements or take corrective action.
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.
Quality Control Analysis→ Conducting tests and inspections of products, services, or processes to evaluate quality or performance.
Judgment and Decision Making→ Considering the relative costs and benefits of potential actions to choose the most appropriate one.
Operations Analysis→ Analyzing needs and product requirements to create a design.
Systems Analysis→ Determining how a system should work and how changes in conditions, operations, and the environment will affect outcomes.
Science→ Using scientific rules and methods to solve problems.
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.
Time Management→ Managing one's own time and the time of others.
Interacting With Computers→ Using computers and computer systems (including hardware and software) to program, write software, set up functions, enter data, or process information.
Analyzing Data or Information→ Identifying the underlying principles, reasons, or facts of information by breaking down information or data into separate parts.
Getting Information→ Observing, receiving, and otherwise obtaining information from all relevant sources.
Making Decisions and Solving Problems→ Analyzing information and evaluating results to choose the best solution and solve problems.
Updating and Using Relevant Knowledge→ Keeping up-to-date technically and applying new knowledge to your job.
Communicating with Supervisors, Peers, or Subordinates→ Providing information to supervisors, co-workers, and subordinates by telephone, in written form, e-mail, or in person.
Processing Information→ Compiling, coding, categorizing, calculating, tabulating, auditing, or verifying information or data.
Documenting/Recording Information→ Entering, transcribing, recording, storing, or maintaining information in written or electronic/magnetic form.
Identifying Objects, Actions, and Events→ Identifying information by categorizing, estimating, recognizing differences or similarities, and detecting changes in circumstances or events.
Thinking Creatively→ Developing, designing, or creating new applications, ideas, relationships, systems, or products, including artistic contributions.
Establishing and Maintaining Interpersonal Relationships→ Developing constructive and cooperative working relationships with others, and maintaining them over time.
Organizing, Planning, and Prioritizing Work→ Developing specific goals and plans to prioritize, organize, and accomplish your work.
Evaluating Information to Determine Compliance with Standards→ Using relevant information and individual judgment to determine whether events or processes comply with laws, regulations, or standards.
Developing and Building Teams→ Encouraging and building mutual trust, respect, and cooperation among team members.
Interpreting the Meaning of Information for Others→ Translating or explaining what information means and how it can be used.
Monitor Processes, Materials, or Surroundings→ Monitoring and reviewing information from materials, events, or the environment, to detect or assess problems.
Developing Objectives and Strategies→ Establishing long-range objectives and specifying the strategies and actions to achieve them.
Scheduling Work and Activities→ Scheduling events, programs, and activities, as well as the work of others.
Judging the Qualities of Things, Services, or People→ Assessing the value, importance, or quality of things or people.
Coordinating the Work and Activities of Others→ Getting members of a group to work together to accomplish tasks.
Analyze project data to determine specifications or requirements.
Modify software programs to improve performance.
Supervise information technology personnel.
Apply mathematical principles or statistical approaches to solve problems in scientific or applied fields.
Assess database performance.
Assign duties or work schedules to employees.
Collaborate with others to determine design specifications or details.
Collaborate with others to resolve information technology issues.
Communicate project information to others.
Coordinate software or hardware installation.
Design software applications.
Develop performance metrics or standards related to information technology.
Develop testing routines or procedures.
Document technical specifications or requirements.
Identify information technology project resource requirements.
Manage information technology projects or system activities.
Monitor computer system performance to ensure proper operation.
Prepare data for analysis.
Provide recommendations to others about computer hardware.
Provide technical support for software maintenance or use.
Teach others to use computer equipment or hardware.
Deductive Reasoning→ The ability to apply general rules to specific problems to produce answers that make sense.
Inductive Reasoning→ The ability to combine pieces of information to form general rules or conclusions (includes finding a relationship among seemingly unrelated events).
Problem Sensitivity→ The ability to tell when something is wrong or is likely to go wrong. It does not involve solving the problem, only recognizing there is a problem.
Written Comprehension→ The ability to read and understand information and ideas presented in writing.
Information Ordering→ The ability to arrange things or actions in a certain order or pattern according to a specific rule or set of rules (e.g. , patterns of numbers, letters, words, pictures, mathematical operations).
Near Vision→ The ability to see details at close range (within a few feet of the observer).
Oral Comprehension→ The ability to listen to and understand information and ideas presented through spoken words and sentences.
Oral Expression→ The ability to communicate information and ideas in speaking so others will understand.
Written Expression→ The ability to communicate information and ideas in writing so others will understand.
Speech Recognition→ The ability to identify and understand the speech of another person.
Flexibility of Closure→ The ability to identify or detect a known pattern (a figure, object, word, or sound) that is hidden in other distracting material.
Fluency of Ideas→ The ability to come up with a number of ideas about a topic (the number of ideas is important, not their quality, correctness, or creativity).
Category Flexibility→ The ability to generate or use different sets of rules for combining or grouping things in different ways.
Originality→ The ability to come up with unusual or clever ideas about a given topic or situation, or to develop creative ways to solve a problem.
Selective Attention→ The ability to concentrate on a task over a period of time without being distracted.
Speech Clarity→ The ability to speak clearly so others can understand you.
Computers and Electronics→ Knowledge of circuit boards, processors, chips, electronic equipment, and computer hardware and software, including applications and programming.
Language→ Knowledge of the structure and content of a language - English, French, Swahili et cetera - 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.
Mathematics→ Knowledge of arithmetic, algebra, geometry, calculus, statistics, and their applications.
Access software -- Desktop virtualization software; Remote computer/Terminal emulator
Administration software -- Software distribution management software
Analytical or scientific software -- Data analysis software; Dynamic modeling software; Simulation program with integrated circuit emphasis SPICE; The MathWorks Simulink; IBM SPSS Statistics; SAS
Application server software -- Docker; GitHub; Oracle Application Server; Oracle WebLogic Server; Red Hat OpenShift; Red Hat WildFly; Spring Boot
Backup or archival software -- Backup and archival software; Veritas NetBackup
Business intelligence and data analysis software -- e.g., Zoho Analytics; Tableau; Clear Analytics; IBM Cognos Impromptu; MicroStrategy; Oracle Business Intelligence Enterprise Edition; Qlik Tech QlikView
Communications server software -- Collaborative client-server software
Computer based training software -- Learning Platform/ course management system (CMS) software
Configuration management software — Automated installation software; Deployment software; Patch management software; Perforce Helix software; Puppet; Visible Razor; VMWare; Red Hat Ansible Engine
Content workflow software -- Project tracking software; Trello; Atlassian JIRA
Customer relationship management CRM software -- Constituent relationship management (CRM) system; Contact management software; Blackbaud The Raiser's Edge; Oracle Eloqua; Salesforce software
Database management system software -- Distributed database management software; Relational database management software; Structured Query Report SQR; Data definition language DDL; Data manipulation language DML; Amazon DynamoDB; Elasticsearch; Apache Hadoop; MongoDB; Microsoft transact-structural query language T-SQL; Teradata Database
Database reporting software -- e.g., Zoho Analytics; Microsoft SQL Server Reporting Services; Oracle Business Intelligence Discoverer; SAP Business Intelligence; SAP Crystal Reports
Data base user interface and query software -- Data entry software; Structured query language SQL; MySQL; Microsoft Access; Airtable; Apache Hive; Amazon Web Services AWS software; Blackboard software; Transact-SQL; FileMaker Pro
Data mining software -- e.g., Google Analytics
Desktop communications software -- e.g., Zoom; Google Meet; Skype
Desktop publishing software -- e.g., Scribus; Adobe Systems Adobe InDesign; Microsoft Publisher
Development environment software -- e.g., A programming language APL; ABC Compiler; Ada; Adobe Systems Adobe ActionScript; Advanced business application programming ABAP; Algorithmic language ALGOL; Apache Ant; Apache Kafka; Apache Maven; Assembler; AWK; B-Method; Beginner's all-purpose symbolic instruction code BASIC; Bigloo Scheme; C; Call-processing language CPL; Common business oriented language COBOL; Computer On-line Real-time Applications Language CORAL 66; Eclipse IDE; Embarcadero JBuilder; Embedded systems development software; Event-driven State-machines Programming; Formula translation/translator FORTRAN; Forth; Gambit Scheme; Go; Haskell; IBM Rational ClearQuest; IBM Rational Rose XDE Developer; IBM Rational Rose XDE Developer D93; ICON programming language; Integrated development environment IDE software; Interface definition language IDL; Interstate connection ICON; J; List processing language LISP; Microsoft .NET Framework; Microsoft Azure; Microsoft ESP SDK; Microsoft PowerShell; Microsoft Visual Basic; Microsoft Visual Basic for Applications VBA; Microsoft Visual Basic Scripting Edition VBScript; Microsoft Visual Studio; MUMPS M; National Instruments LabVIEW; Pascal; Programming language one PL/I; Prolog; Restructured extended executor REXX; Ruby; Scheme programming language; String oriented symbolic language SNOBOL; Sun Microsystems Java 2 Platform Enterprise Edition J2EE; Symantec Visual Cafe; Verilog; Web service definition language WDSL; Xcode; XML Path Language XPATH
Device drivers or system software -- e.g., Microsoft DirectX
Document management software -- Document management system software; Dropbox; Adobe Systems Adobe Acrobat
Electronic mail software -- e.g., Google Gmail; IBM Notes; Microsoft Exchange; Microsoft Outlook
Enterprise application integration software -- Enterprise application integration EAI software; Atlassian Bamboo; Extensible markup language XML; IBM WebSphere; Microsoft SQL Server Integration Services SSIS; Oracle Fusion Middleware
Enterprise resource planning ERP software -- e.g., Sage; Infor; Workday; Microsoft Dynamics GP; NetSuite ERP; Oracle Hyperion; Oracle JD Edwards EnterpriseOne
Enterprise system management software --e.g., IBM Power Systems software; Splunk Enterprise
Expert system software -- Ansible software
File versioning software -- Version control software; Apache Subversion SVN; Git
Filesystem software -- File server software
Financial analysis software -- Budgeting software; Forecasting software; Reporting software, Financial ratio analysis software
Graphical user interface development software -- Graphical user interface GUI builder software; Graphical user interface GUI design software; Salesforce Visualforce
Graphics or photo imaging software -- e.g., Adobe Systems Adobe Creative Cloud; Adobe Systems Adobe Fireworks; Adobe Systems Adobe Flash; Adobe Systems Adobe Illustrator; Adobe Systems Adobe Photoshop; GNU Image Manipulation Program GIMP; JamBoard; Microsoft Visio; Open Graphics Library OpenGL; SmugMug Flickr; Trimble SketchUp Pro
Information retrieval or search software -- Data serialization; Apache Avro; LexisNexis
Instant messaging software -- Private messaging applications; Group text messaging software
Internet protocol IP multimedia subsystem software -- Voice over internet protocol VoiP system software
Metadata management software -- CA Erwin Data Modeler; Talend Data Fabric
Network conferencing software -- Virtual platform meeting software; LogMeIn GoToWebinar
Network monitoring software -- Nagios; Wireshark
Network operation system software -- Mainframe operating system; IBM z/OS operating systems
Network security and virtual private network VPN equipment software -- Virtual private networking VPN software
Object or component oriented development software -- Component object model COM software; Distributed component object model DCOM software; Document Object Model DOM Scripting; Component-based Scalable Logical Architecture CSLA; ABC: the AspectBench Compiler for AspectJ; Apache Groovy; Apache Spark; C#; C++; Collaborative Application Markup Language CAML; Common Lisp Object System CLOS; E++ pattern language; Eiffel; Embarcadero Delphi; jQuery; Jupyter Notebook; Microsoft ActiveX; Microsoft Visual Basic.NET; Microsoft Visual C# .NET; Modula; Oberon; Objective C; Objective Caml; Oracle Java; Practical extraction and reporting language Perl; Python; R; SAP PowerBuilder; Scala; Self; Simple API for XML SAX; Smalltalk; Swift
Object oriented data base management software -- e.g., Hibernate ORM; PostgreSQL
Office suite software -- e.g., Google Workspace; Google Drive; LibreOffice; Microsoft Office
Operating system software -- Microsoft Windows; Microsoft Windows Server; Apple macOS; Bash; Cisco Systems IOS; Disk operating system DOS; Hewlett Packard HP-UX; IBM AIX; Job control language JCL; KornShell; Linux; Magellan Firmware; Operating system shells; Oracle Solaris; QNX; Real time operating system RTOS software; Red Hat Enterprise Linux; Shell script; Ubuntu; UNIX; UNIX Shell; Win CE; Wind River VxWorks
Platform interconnectivity software -- Migration software; Amazon Web Services AWS CloudFormation
Portal server software -- Apache HTTP Server
Presentation software -- e.g., Google Slides; Microsoft PowerPoint
Program testing software — Defect tracking software; Dynamic analysis software; Fault testing software; Functional testing software; Integration testing software; Interoperability testing software; Load testing software; Migration testing software; Mutation testing software; Recovery testing software; Regression testing software; Security testing software; Static analysis software; Stress testing software; System testing software; Test design software; Test implementation software; Unit testing software; Usability testing software; Hewlett Packard LoadRunner; JUnit ; Selenium; Source code editor software
Project management software -- Project documentation; Work breakdown structure; Project evaluation and review technique; Trello; Asana; Confluence; Microsoft SharePoint; Microsoft Teams; Oracle Primavera Enterprise Project Portfolio Management; Slack
Requirements analysis and system architecture software -- Requirements management software; IBM Rational Requisite Pro; Unified modeling language UML
Spreadsheet software -- e.g., Google Sheets; Microsoft Excel
Storage networking software -- Storage area network SAN software; Amazon Simple Storage Service S3
Transaction security and virus protection software -- Encryption software; McAfee; Symantec
Transaction server software -- Customer information control system CICS; Web server software; Microsoft Internet Information Service IIS; Object Management Group Object Request Broker
Video conferencing software -- e.g., Zoom; Microsoft Teams; Cisco Systems Webex; FaceTime; Google Meet; LogMeIn GoToMeeting
Video creation and editing software -- e.g., Tiktok; Adobe Systems Adobe AfterEffects; Flipgrid; Loom; Screencastify; YouTube
Web page creation and editing software -- Social media sites; Adobe Systems Adobe Dreamweaver; Google Sites; LinkedIn
Web platform development software -- e.g., Dynamic hypertext markup language DHTML; Extensible HyperText Markup Language XHTML; Backbone.js; Hypertext markup language HTML; Google AngularJS; JavaScript; Microsoft ASP.NET
Word processing software -- e.g., 3M Post-it App; Google Docs; Microsoft OneNote; Microsoft Word
Central processing unit CPU processors→ Graphics processing unit GPU; Multi-core central processing unit CPU
Computer servers→ Application servers
Desktop computers
Digital cameras
Flash memory storage card→ Flash disks
High end computer servers→ Directory servers
Integrated circuit testers→ In circuit emulators ICE; Logic analyzers
Mainframe computers
Notebook computers
Investigative→ Investigative occupations frequently involve working with ideas, and require an extensive amount of thinking. These occupations can involve searching for facts and figuring out problems mentally.
Conventional→ Conventional occupations frequently involve following set procedures and routines. These occupations can include working with data and details more than with ideas. Usually there is a clear line of authority to follow.
Realistic→ Realistic occupations frequently involve work activities that include practical, hands-on problems and solutions. They often deal with plants, animals, and real-world materials like wood, tools, and machinery. Many of the occupations require working outside, and do not involve a lot of paperwork or working closely with others.
Attention to Detail→ Job requires being careful about detail and thorough in completing work tasks.
Analytical Thinking→ Job requires analyzing information and using logic to address work-related issues and problems.
Dependability→ Job requires being reliable, responsible, and dependable, and fulfilling obligations.
Adaptability/Flexibility→ Job requires being open to change (positive or negative) and to considerable variety in the workplace.
Integrity→ Job requires being honest and ethical.
Persistence→ Job requires persistence in the face of obstacles.
Cooperation→ Job requires being pleasant with others on the job and displaying a good-natured, cooperative attitude.
Initiative→ Job requires a willingness to take on responsibilities and challenges.
Stress Tolerance→ Job requires accepting criticism and dealing calmly and effectively with high stress situations.
Achievement/Effort→ Job requires establishing and maintaining personally challenging achievement goals and exerting effort toward mastering tasks.
Self Control→ Job requires maintaining composure, keeping emotions in check, controlling anger, and avoiding aggressive behavior, even in very difficult situations.
Independence→ Job requires developing one's own ways of doing things, guiding oneself with little or no supervision, and depending on oneself to get things done.
Innovation→ Job requires creativity and alternative thinking to develop new ideas for and answers to work-related problems.
Leadership→ Job requires a willingness to lead, take charge, and offer opinions and direction.
Concern for Others→ Job requires being sensitive to others' needs and feelings and being understanding and helpful on the job.
Achievement→ Occupations that satisfy this work value are results oriented and allow employees to use their strongest abilities, giving them a feeling of accomplishment. Corresponding needs are Ability Utilization and Achievement.
Working Conditions→ Occupations that satisfy this work value offer job security and good working conditions. Corresponding needs are Activity, Compensation, Independence, Security, Variety and Working Conditions.
Independence→ Occupations that satisfy this work value allow employees to work on their own and make decisions. Corresponding needs are Creativity, Responsibility and Autonomy.