Software Developers

Role Description

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.

Skills

  • Writing computer programs for various purposes.
  • Using logic and reasoning to identify the strengths and weaknesses of alternative solutions, conclusions, or approaches to problems.
  • Considering the relative costs and benefits of potential actions to choose the most appropriate one.
  • Understanding the implications of new information for both current and future problem-solving and decision-making.
  • Understanding written sentences and paragraphs in work-related documents.

Required Knowledge

  • Knowledge of circuit boards, processors, chips, electronic equipment, and computer hardware and software, including applications and programming.
  • 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.
  • Knowledge of arithmetic, algebra, geometry, calculus, statistics, and their applications.
  • Knowledge of the structure and content of the English language including the meaning and spelling of words, and rules of composition and grammar.

Roles & Responsibilities

  • Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.
  • Develop or direct software system testing or validation procedures, programming, or documentation.
  • Confer with systems analysts, engineers, programmers and others to design systems and to obtain information on project limitations and capabilities, performance requirements and interfaces.
  • Modify existing software to correct errors, adapt it to new hardware, or upgrade interfaces and improve performance.
  • Prepare reports or correspondence concerning project specifications, activities, or status.

Our use of cookies

Some cookies are necessary for us to manage how our website behaves while other optional, or non-necessary, cookies help us to analyse website usage. You can Accept All or Reject All optional cookies or control individual cookie types below.

You can read more in our Cookie Notice

Functional

These cookies enable core functionality such as security, network management, and accessibility. You may disable these by changing your browser settings, but this may affect how the website functions.

Third-Party Cookies

These cookies are set by a website other than the website you are visiting usually as a result of some embedded content such as a video, a social media share or a like button or a contact map