SOFTWARE ARCHITECT

image_pdfimage_print

Brief description

The position of software architect consists of developing, creating, and modifying general computer applications software or specialized utility programs. It also consists of analyzing user needs and developing software solutions, and designing software or customizing software for client use with the aim of optimizing operational efficiency.

Tasks

  • Analyze user needs and software requirements to determine feasibility of design within time and cost constraints;
  • Document business requirements using formalism such UML or other object oriented modeling tools;
  • Confer with systems analysts, engineers, programmers and others to design system and to obtain information on project limitations and capabilities, performance requirements and interfaces;
  • Elaborate Enterprise Software and Hardware Architecture orientation and monitor compliance to design principles and guidelines;
  • Coordinate software system installation and monitor equipment functioning to ensure specifications are met;
  • Develop and direct software system testing and validation procedures, programming, and documentation;
  • Modify existing software to correct errors, allow it to adapt to new hardware, or to improve its performance;
  • Obtain and evaluate information on factors such as reporting formats required, costs, and security needs to determine hardware configuration;
  • Store, retrieve, and manipulate data for analysis of system capabilities and requirements;
  • Write computer programs of higher complexity or with specific performance, connectivity or business logic requirements;
  • Supervise the work of programmers, technologists and technicians and other engineering and scientific personnel.

Qualifications and requirements

  • A bachelor’s degree in a computer-related field or equivalent;
  • Ability to identify complex problems and review related information to develop and evaluate options and implement solutions;
  • Knowledge of various programming languages, and ability to determine how a system should work and how changes in conditions, operations, and the environment will affect outcomes.

Competencies (in order of importance)

  • Analytical Thinking — Job requires analyzing information and using logic to address work-related issues and problems.
  • Attention to Detail — Job requires being careful about detail and thorough in completing work tasks.
  • Dependability — Job requires being reliable, responsible, and dependable, and fulfilling obligations.
  • Innovation — Job requires creativity and alternative thinking to develop new ideas for and answers to work-related problems.
  • Cooperation — Job requires being pleasant with others on the job and displaying a good-natured, cooperative attitude.

Lines of communication

  • Please Identify where the position fits within the hierarchy of your organization.

 Working conditions

Please indicate if the position is full time or part time. Also list any unique working conditions (such as working hours) that the candidate should know about.