Role :
The role of the Architect involves conceiving and planning out software architectural and detailed design. The role incumbent is concerned with refining requirements and establishing a high level view of the system as well as supporting with low-level structural view of the system. Hands-on current experience authoring, building and adopting large scale, cross-functional automation frameworks with well-balanced coverage across UI, back-end integration, database levels; Deep understanding of different test automation approaches (keyword-driven, Data-driven, BDD, hybrid) and technology stacks (Java, JavaScript, Python, etc.) and Ability to develop custom test automation methodologies and adapt them to clients’ reality, Should be efficient in Integrate test automation into CI/CD process and instrument full SDLC automation, specifically cloud testing execution, reporting tools such as ALM, Jira; Should be able to Improve process and quality via test and process automation: defining right strategy and technology based on process and architecture assessment by engaging different roles and stakeholders; and carry deep practical experience with cutting edge tools for Web, Mobile, Desktop, DB and Web-service testing (Selenium, Appium, SoapUI, etc.);
Responsibilities :
Software Architecture
- Owns Logical & Physical Architecture
- Owns Technical Components Dictionary
- Owns and Defines High-level Design
- Owns and participates in detail design
- Sets Integration/Interfacing/UI/Coding Standards
- Ensure Consistency across Implementations
- Defines Software Architecture Maintenance Standards
- Defines Software Deployment and Performance Standards
- Creates logical and innovative solutions to complex problems
- Selects appropriate design standards, methods and tools and ensures they are applied effectively
- Identifies options for potential solutions and assesses them for both technical and business suitability
- Draws up specific proposals for modified or replacement systems
- Ensures that design takes full account of specified requirements and constraints, including any potential safety-related aspects, and are appropriate to the target implementation and support environments
- Designs, documents, evaluates and undertakes impact analysis on major design options with change in requirements
- Ensures design control
Business
- Studies and Understands Business Needs
o Study Data Sources/Systems/etc
o Interviews business users to create and/or understand requirements
o Prepares Requirements => Architecture Mapping Documents
o Translates Requirements into highly specified system specifications
- Communicates Software Design / Architecture to Business & Management
- Participates in business development as advisor
o Participates in strategy sessions
o Advises on new product feasibility & cost from database perspective
Technology
- Understands Technology Limitations/Features and Sets Expectations
o Understands Cloud Computing (AWS, Azure)
o Understands OS/ Hardware
o Understand Technology
o Understand Architectural Patterns and Deployment Requirements
o Understands Database
- Research and Development
o Researches New Features, Software and Tools
o Understands New Releases and Migration Impacts
o Generates Documentation and Training for Staff
o Prepares Presentations and Whitepapers
People
- Prepares, oversees and coordinates software architecture implementation
- Inspects Design Implementation and Standards Compliance
- Inspects Database Design and its conformance
- Acts as Software Architecture/Technology/Application/Data/Database SME
Process
- Create and Enforce Architecture Development Standards and Processes
- Coding
- Naming
- Application Interface
- UI Standards
- Deployment Standards
- Packaging
- Data Access
- Documentation