- Elicit requirements using interviews, document analysis, requirements workshops, storyboards, surveys, site visits, business process descriptions, use cases, scenarios, event lists, business analysis, competitive product analysis, workflow analysis and viewpoints.
- Write requirements specifications according to standard templates, using natural language simply, clearly, unambiguously and concisely.
- Decompose high-level business and user requirements into functional requirements, specified in an appropriate level of detail suitable for use by those who must base their work on these requirements.
- Define quality attributes, external interfaces, constraints, and other nonfunctional requirements.
- Represent requirements using alternative views, such as analysis models (diagrams), prototypes and appropriate scenarios.
- Verify and ensuring that requirement statements are complete, consistent, concise, comprehensible, traceable, feasible, unambiguous, verifiable and confirmed to standards.
- Manage changes to baseline requirements through effective application of change control processes and tools.
- Apply basic professional knowledge related to software engineering processes and tools used within the team.
- Research, evaluate and recommend software tools.
- Bachelor’s degree or higher in Computer Science, Computer Engineering, Information Systems, or equivalent experience.
- 2 – 5 years' experience in the software development discipline, requirements gathering, analysis and design.
- Advanced and in-depth professional knowledge of software development, system/product design and integration.
- Understanding of contemporary requirements elicitation, analysis, specification, verification, management practices and the ability to apply them in practice; familiarity with requirements engineering books and resources.
- Understanding of how to practice requirements engineering according to several software development life cycles in a team environment.
- Knowledge of product management concepts and how enterprise software products are positioned and developed.
- Experience with Microsoft Project, Visio and Office applications.
- Understanding of computer software, database technologies and programming.
- Extensive technical background in software development tools and techniques.
- Excellent knowledge of multitier architecture.
- Excellent understanding of Enterprise Application Development.
- Very good knowledge of Design Patterns.
- Very good knowledge of configuration management systems e.g. SVN, TFS, Git...etc.
- Excellent in SDLC models, including RUP and Agile (SCRUM).
- Creative approach to problem solving.
- Ability to work under pressure and meet deadlines.
- Able to work effectively in a team environment.
- Excellent communication skills and the ability to work remotely in an international team environment.
- Fluency of Arabic & English language skills.
- Time Management Skills.
- Ability to make self-studies.
- Highly organized and have the ability to multi-task.
- Attention to details.
- Ability to travel for short periods.