Job Description Role Proficiency : Level of Proficiency : Leverage expertise in a technology area (e.g. Big Data Cluster) and responsible for Architecture for small to mid size projects.
Outcomes : 1. Design and develop the framework; be the technical owner for a project in one technology area 2. Guide and review technical delivery by internal teams 3.
Resolve design issues and deliver / own design for a complex module for projects of the following nature : architecture enhancements, small sized development and maintenance projects 4.
Review design and code, ensuring adoption of industry best practices Measures of Outcomes : Measures : 1. Number of reusable components / processes developed 2.
Number of times components / processes reused 3. Delivery efficiency (Adherence to UST defined principles) 4. Contribution to technology capability development (e.
g. Training, Webinars, Blogs) 5. Customer feedback on overall technical quality (zero technology related escalations) 6. Number of white papers / document assets contributed to 7.
Relevant technology certifications 8. Business Development number of proposals contributed to, as applicable) 9. Feedback from Project Team / Program Management on project support Outputs Expected : Solution Definition & Design : Define Architecture for small / mid-sized type of projects Design the technical framework and implement the same Identify and conduct design of complex sub-components / module in collaboration with project team, architects and client SME Present the detailed design documents to relevant stakeholders and seek feedback Undertake project specific Proof of Concepts activities to validate technical feasibility with guidance from the Application Architect Implement best optimized solution and resolve performance issues Support the team in the design of functional modules and review deliverables Conduct code reviews Requirement gathering and Analysis : Understand the functional and non-functional requirements Collect non-functional requirements (such as response time, throughput numbers, user load, etc.
through discussions with SMEs and business users Identify technical aspects as part of story definition, especially at an architecture / component level Project Management Support : Share technical inputs from Agile / project planning perspective with SCRUM Master / Project Manager Help SCRUM Masters / Project Managers to understand the technical risks and come-up with mitigation strategies Help developers overcome technical challenges Technology Consulting : Analysis of technology landscape, process and tools based on project objectives Business and Technical Research : Understand application architecture and its criticality to : analyze and assess tools (internal / external) on specific parameters Understand application architecture and its criticality to : Support Architect / Sr.
Architect in drafting recommendations based on findings contained within Proof of Concept Understand application architecture and its criticality to : analyze and identify new developments in existing technologies (e.
g. methodologies, frameworks, accelerators, etc.) Understand application architecture and its criticality to : document the new developments (e.
g. report, white paper, national / international publications) to build team capabilities. Project Estimation : Provide support for project estimations for business proposals and support sprint level / component level estimates Articulate estimation methodology and module level estimations for more standard projects with focus on effort estimation alone Proposal Development : Contribute to proposal development of small to medium size projects from technology / architecture perspective Knowledge Management & Capability Development : Conduct technical trainings and webinars to impart knowledge to relevant application development / project teams Create collaterals (e.
etc.; conduct training Create KT Packages for new team members Testing Support : Suggest unit test automation strategies using appropriate frameworks Process Improvements / Delivery Excellence : Identify avenues to improve project delivery parameters (e.
g. productivity, efficiency, process, security, etc.) by leveraging tools, automation, etc. Understand various technical tools used in the project (third party as well as home-grown) to improve efficiency, productivity Audit : Conduct cross project technical audits and reviews, across multiple accounts, as required to check adherence to architecture, design and coding best practices Skill Examples : 1.
Use domain / industry knowledge to understand business requirements. Create POC to meet business requirements under guidance 2.
Use technology knowledge to analyse technology based on client's specific requirement, analyse and understand existing implementations.
Work on simple technology implementations (POC) under guidance, guide the developers and enable them in the implementation of design into working software in the technology 3.
Use knowledge of Architecture Concepts and Principles to provide inputs to the practitioner towards building component solutions, and deploy the solution as per the architecture under guidance 4.
Use knowledge of Design Patterns, Tools and Principles to create low level design under guidance from the Architect for the given business requirements Review low level design created by team for maintainability (error handling, alerting, etc.
of design, define technical checklists for design and coding 5. Use knowledge of Software Development Process Tools & Techniques / Scrum tools to increase productivity, and develop efficient code.
Constantly check for reusability of codes, design and develop complex assets and provide technical consultancy related to these areas 6.
Use knowledge of Project Management Tools and Techniques to provide inputs in project management activities (e.g. reporting, reviewing documents, audit compliance reports, providing status).
and to share inputs on project metrics with the relevant stakeholders for own area of work 8. Use Estimation and Resource Planning knowledge to help estimate and plan resources for specific modules / small projects with detailed requirements in place 9.
Use Knowledge Management Tools & Techniques to participate in the knowledge management process (such as Project specific KT).
Consume and contribute to the knowledge management repository 10. Use knowledge of Technical Standards, Documentation & Templates to understand and interpret the documents provided 11.
Use Requirement Gathering and Analysis knowledge to analyse requirements (functional / non -functional) and functionality, raise clarifications / ambiguities, create requirement documents (such as traceability matrix, bridge documents, etc.
under supervision. Provide inputs / create estimates and solutions (based on the size of the project), create design documents, identify impacted areas based on the change requests, understand the data and model the requirements based on requirements 12.
Use Solution Structuring knowledge to understand the proposed solution. Provide inputs to create draft proposals / RFP (including effort estimation, scheduling, resource loading etc.
Knowledge Examples : 1. Domain / Industry Knowledge : Basic knowledge of standard business processes within the relevant industry vertical and customer business domain 2.
low level details such as data structures, algorithms within one technology stack; configuration parameters for successful deployment within one technology stack 3.
Architecture Concepts and Principles : Basic knowledge of standard architectural principles, models, patterns (e.g. SOA, N-Tier, EDA etc.
and perspective (e.g. TOGAF, Zachman etc), integration architecture including input and output components, existing integration methodologies and topologies, source and external system, non functional requirements, data architecture, deployment architecture, and architecture governance 4.
Design Patterns, Tools and Principles : Working knowledge of design patterns, principles, patterns and tools 5. Software Development Process Tools & Techniques : Specialized knowledge of SDLC process (Agile and Traditional), SDLC methodology, programming principles, best practices (refactoring code, code package etc.
6. Project Management Tools and Techniques : Basic knowledge of : project management process (such as project scoping, requirements management, change management, risk management, quality assurance, disaster management etc.
tools (MS Excel, MPP, Client specific time sheets, capacity planning tools, etc.) 7. Project Management : Basic understanding of project governance structure, awareness of basic project metrics like effort and defect, quality metrics 8.
Estimation and Resource Planning : Working knowledge of estimation and resource planning techniques (e.g. TCP estimation model), UST specific estimation templates 9.
Knowledge Management Tools & Techniques 10. Basic knowledge of industry knowledge management tools (such as portals, wiki), UST and customer knowledge management tools, techniques (such as workshops, classroom training, self-study, application walkthrough and reverse KT) 11.
Technical Standards, Documentation & Templates : Basic knowledge of various document templates and standards (such as business blueprint, design documents and test specifications) 12.
Requirement Gathering and Analysis : Demonstrates working knowledge of requirements gathering for ( non functional), requirements analysis for functional and non functional, requirement analysis tools (such as functional flow diagrams, activity diagrams, blueprint, storyboard), techniques (business analysis, process mapping, etc.
and requirements management tools (e.g.MS Excel)