Role Proficiency: Level of Proficiency: Leverage expertise in a technology area (e.g. Java, Microsoft technologies or Mainframe/legacy) to design system architecture. Outcomes: 1. Deliver technically sound projects across one / multiple customers within the guidelines of the customer and UST standards and norms, based on user stories 2. Guide and review technical delivery by internal teams at the program level 3. Resolve architecture issues deliver and own architecture of application solutions spanning across multiple technologies for projects of the following nature - high revenue projects, complex projects and large strategic maintenance projects 4. Architect frameworks, tools relevant for the program Measures of Outcomes: Measures: 1. Business Development (number of proposals contributed to); revenue contribution (COE) 2. Delivery efficiency (Delivery) 3. Audit reviews on reuse of technology 4. Number of processes / frameworks/tools reused 5. Number of Trainings, Webinars, Blogs, interviews 6. Number of white papers/document assets published / working prototypes 7. Number of reusable frameworks/tools/artifacts created 8. Technology certifications 9. Customer feedback on overall technical quality (zero technology related escalations) 10. Number of reviews and audits 11. Domain certifications (e.g.: LOMA) (Delivery) Outputs Expected: Knowledge Management & Capability Development: Publish and maintain a repository of solutions, best practices and standards and other knowledge articles Conduct and facilitate knowledge sharing and learning sessions across the team Gain industry standard certifications on technology in area of expertise Support technical skill building (including hiring and training) for the team based on inputs from Project Manager /RTE’s Mentor new members in the team in technical areas Gain and cultivate domain expertise to provide best and optimized solution to customer (Delivery) Create architecture on-boarding/KT documents for the program Requirement gathering and Analysis: Work with customer/business owners and other teams to collect, analyze and understand the requirements including NFRs; define NFRs Analyze gaps/ and trade-offs based on current system context and industry practice while clarifying the requirements and by working with the customer Define the systems and sub-systems that define the programs People Management: Set goals and manage performance of technical specialists / team engineers Provide career guidance and mentor technical specialists Alliance Management: Identify alliance partners based on the understanding of service offerings and client requirements, specific to program In collaboration with Architect 2,3, create a compelling business case around the offerings Conduct beta testing of the offerings and relevance to program Technology Consulting: In collaboration with the Solution Architects, analyze application and technology landscape, process, and tools to arrive at the architecture options best fit for the client, program Analyze Cost vs. benefits of solution options Support Solution Architects to create a technology/ architecture roadmap for the client Define architectural strategy for the program Innovation and Thought Leadership: Participate in internal and external forums (seminars, paper presentation etc.) to showcase UST capabilities and insights under guidance of senior team members Understand clients existing business at the program level and explore new avenues to save cost and bring process efficiency Identify business opportunities to create reusable components/accelerators and reuse existing components and best practices Support the patent filing process for the IP assets created (applicable to some CoEs) Sales Support and Project Estimation: Support for developing RFPs and collaterals for proposals from a technical architecture, estimation and risks perspective Conduct demos, and arrange for the demos based on client profiles, if required Anchor proposal development with cross-linkages across multiple competency units to arrive at a coherent solution proposal with focus on presenting unique value propositions and clear differentiators Architecture Solution Definition & Design: Develop and Enhance the architecture (application / technical / Infrastructure as applicable) meeting functional and non functional requirements; aligned to industry best practices Program Design (including data modeling, application design, infrastructure design, team structure)and capacity sizing, working with Program Release Train Engineer to meet the requirements and SLAs of target state and in-transition as applicable Identify Proof of Concept testing (POC) needs and conduct POCs as applicable Identify need for developing accelerators or frameworks and develop as applicable specific to the engagement Identify key technical metrics to measure the SLA / requirements compliance Define, adopt and create required documentation on standards and guidelines Contribute to re-usable frameworks, tools and artefacts library Project Management Support: Assist the PM/Scrum Master/Program Manager to identify technical risks and come-up with mitigation strategies Stakeholder Management: Monitor the concerns of internal stakeholders like Product Managers and RTE’s; and external stakeholders like client architects, on architecture aspects. Follow through on commitments and achieve timely resolution of issues Conduct initiatives to meet client expectations Work to expand professional network in the client organization at the team and program levels Business and Technical Research: Analyze market trends / client requirements/ secondary research Identify new ideas and provide inputs to Solution Architects for developing blueprint / PoC Brand Building: Organize and participate in events like webinars, boot camps, seminar conference, and client conference to showcase capability Identify opportunities with Solution Architects to cross-solutionize across project(s) and programs within or outside the BU Asset Development and Governance: Understand the plan for asset development Design assets or artefacts as per plan (if required) Conduct pilot run/review to validate the assets, artefacts as feasible Track utilization of reusable assets / architecture components/blueprints across the organization Create case studies of program/project working with internal stakeholders Skill Examples: 1. Use domain and industry knowledge in order to understand business requirements, create POC to meet business requirements, and contextualize the solution to the industry under guidance. Create architecture, interact with SMEs at various stages of the development, translate business requirements to system requirements and perform impact analysis of changes in requirements 2. Use Technology Knowledge to create Proof of Concept (POC) / (reusable) assets under the guidance of the specialist. Apply best practices in own area of work, and understand the IT strategy for the project. Create white papers under guidance, help with performance troubleshooting and other complex troubleshooting. Define, decide and defend the technology choices made; review solution under guidance 3. Use knowledge of Technology Trends to provide inputs on potential areas of opportunity for UST. Provide inputs to the specialist on creation of technology roadmap for the client, research on new products / trends / best practices 4. Use knowledge of Architecture Concepts and Principles to create architecture catering to functional and non-functional requirements under guidance of the specialist. Re-engineer existing architecture solutions under the guidance of the specialist; provide training on best practices in architecture under guidance 5. Use knowledge of Design Patterns, Tools and Principles to create high level design for the given requirements. Independently, evaluate multiple design options, and choose the appropriate options for best possible trade-offs. Conduct knowledge sessions to enhance team's design capabilities; review the low level design / high level design created by Specialists for efficiency (consumption of hardware, memory and memory leaks, etc.) and maintainability of design 6. Use knowledge of Software Development Process Tools & Techniques to identify and assess incremental improvements for software development process, methodology and tools. Take technical responsibility for all stages in the software development process, conduct optimal coding with clear understanding of memory leakage and related impact. Implement global standards and guidelines relevant to programming and development, to come up with 'points of view' and new technological ideas 7. Use knowledge of Project Management & Agile Tools and Techniques to support, plan and manage medium size projects/programs as defined within UST. Identify risks and mitigation strategies 8. Use knowledge of Project Governance Framework to support development of the communication protocols, escalation matrix, and reporting mechanisms for small / medium projects/ program as defined within UST 9. Use knowledge of Project Metrics to understand relevance in project. Collect and collate project metrics; share it with the relevant stakeholders 10. Use knowledge of Estimation and Resource Planning to create estimate and plan resources for specific modules / small projects with detailed requirements or user stories in place 11. Use knowledge of Knowledge Management Tools & Techniques to leverage existing material and re-usable assets in knowledge repository. Independently create and update knowledge artefacts; create and track project specific KT plans. Provide training to others, write white papers/ blogs at internal level, write technical documents/ user understanding documents at the end of the project 12. Use knowledge of Technical Standards, Documentation & Templates to create documentation appropriate for the project needs. Create documentation appropriate for the reusable assets/ best practices/ case studies 13. Use knowledge of Requirement Gathering and Analysis to support creation of requirements documents or user stories and high level process maps. Identify gaps on the basis of business process, analyse responses to clarification questions, to produce design documents. Create/review estimates and solutions at project level/program level, create/review design artefacts, update resourcing and schedule based on impacted areas identified; creating design specifically for the non-functional requirements 14. Use knowledge of Solution Structuring to carve out simple solution/ POC for a customer based on their needs, review the proposal for completeness Knowledge Examples: Knowledge Examples 1. Domain/ Industry Knowledge: Basic knowledge of standard business processes within the relevant industry vertical and customer business domain 2. Technology Knowledge: Demonstrates working knowledge of more than one technology area related to own area of work (e.g. Java/JEE 5+, Microsoft technologies or Mainframe/legacy), customer technology landscape, multiple frameworks (Struts, JSF, Hibernate, etc.) within one technology area and their applicability. Consider low level details such as data structures, algorithms, APIs and libraries and best practices for one technology stack, configuration parameters for successful deployment and configuration parameters for high performance within one technology stack 3. Technology Trends: Demonstrates working knowledge of technology trends related to one technology stack and awareness of technology trends related to least two technologies 4. Architecture Concepts and Principles: Demonstrates working 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, architecture governance 5. Design Patterns, Tools and Principles: Applies specialized knowledge of design patterns, design principles, practices and design tools. Knowledge of documentation of design using tolls like EA 6. Software Development Process Tools & Techniques: Demonstrates thorough knowledge of end to end SDLC process (Agile and Traditional), SDLC methodology, programming principles, tools, best practices (refactoring code, code package, etc.) 7. Project Management Tools and Techniques: Demonstrates working 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.) 8. Project Management: Demonstrates working knowledge of project governance framework, RACI matrix and basic knowledge of project metrics like utilization, onsite to offshore ratio, span of control, fresher ratio, SLAs and quality metrics 9. Estimation and Resource Planning: Working knowledge of estimation and resource planning techniques (e.g. TCP estimation model), UST specific estimation templates 10. Working 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: Demonstrates working 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) and basic knowledge of functional requirements gathering. Specifically identify Architectural concerns and to document them as part of IT requirements including NFRs 13. Solution Structuring: Demonstrates working knowledge of service offering and products
Additional Comments:
• Independently design, document and develop software architecture and high level design for large or mid size projects • Design, code, configure, integrate and test architecture interfaces • Perform software/technology build, test and deployment activities • Refine and enhance software/system architecture and framework • Provide recommendations on various approaches to solving technical problems • Research and recommend new product ideas/innovations and proposals on new and emerging technologies • Perform design reviews, technical and architectural audits of complex projects • Lead cross-company or project level technology evaluations - driving decisions on buy, build, partner or open source • Create sales proposals and assist the pre sales or account teams with project size estimation, designing solutions and creating prototypes when necessary • Develop best practices around areas of interest / general technology • Define technical processes around SDLC for operational outcomes such as configuration managem