Job Description Role Proficiency : Level of Proficiency : Act creatively to develop applications by selecting appropriate technical options, optimizing application development, maintenance and performance by employing design patterns and reusing proven solutions.
Account for others' developmental activities; assisting Project Manager in day to day project execution. Outcomes : 1. Interpret the application, feature, and component designs to develop the same in accordance with specifications.
2. Code, debug, test, document and communicate product, component and feature development stages. 3. Validate results with user representatives, integrating and commissions the overall solution.
4. Select and create appropriate technical options for development such as reusing, improving or reconfiguration of existing components while creating own solutions for new contexts 5.
Optimises efficiency, cost and quality. 6. Influence and improve customer satisfaction 7. Influence and improve employee engagement within the project teams 8.
Set FAST goals for self / team; provide feedback to FAST goals of team members Measures of Outcomes : Measures : 1. Adherence to engineering process and standards (coding standards) 2.
Adherence to project schedule / timelines 3. Number of technical issues uncovered during the execution of the project 4.
Number of defects in the code 5. Number of defects post delivery 6. Number of non compliance issues 7. Percent of voluntary attrition 8.
On time completion of mandatory compliance trainings Outputs Expected : Code : Code as per the design Define coding standards, templates and checklists Review code for team and peers Documentation : Create / review templates, checklists, guidelines, standards for design / process / development Create / review deliverable documents.
Design documentation, requirements, test cases and results Configure : Define and govern configuration management plan Ensure compliance from the team Test : Review / Create unit test cases, scenarios and execution Review test plan created by testing team Provide clarifications to the testing team Domain relevance : Advise software developers on design and development of features and components with deeper understanding of the business problem being addressed for the client Learn more about the customer domain and identify opportunities to provide value addition to customers Complete relevant domain certifications Manage Project : Support Project Manager with inputs for the projects Manage delivery of modules Manage complex user stories Manage Defects : Perform defect RCA and mitigation Identify defect trends and take proactive measures to improve quality Estimate : Create and provide input for effort and size estimation and plan resources for projects Manage knowledge : Consume and contribute to project related documents, share point, libraries and client universities Review the reusable documents created by the team Release : Execute and monitor release process Design : Contribute to creation of design (HLD, LLD, SAD) / architecture for applications, features business components and data models Interface with Customer : Clarify requirements and provide guidance to Development Team Present design options to customers Conduct product demos Work closely with customer architects for finalizing design Manage Team : Set FAST goals and provide feedback Understand aspirations of the team members and provide guidance, opportunities, etc Ensure team members are upskilled Ensure team is engaged in project Proactively identify attrition risks and work with BSE on retention measures Certifications : Obtain relevant domain and technology certifications Skill Examples : 1.
Explain and communicate the design / development to the customer 2. Perform and evaluate test results against product specifications 3.
Break down complex problems into logical components 4. Develop user interfaces, business software components 5. Use data models 6.
Estimate time and effort resources required for developing / debugging features / components 7. Perform and evaluate test in the customer or target environments 8.
Make quick decisions on technical / project related challenges 9. Manage a team, mentor and handle people related issues in team 10.
Have the ability to maintain high motivation levels and positive dynamics within the team. 11. Interface with other teams, designers, and other parallel practices 12.
Set goals for self and team. Provide feedback for team members 13. Create and articulate impactful technical presentations 14.
Follow high level of business etiquette in emails and other business communication 15. Drive conference calls with customers and answer customer questions 16.
Proactively ask for and offer help 17. Ability to work under pressure, determine dependencies, risks, facilitate planning handling multiple tasks.
18. Build confidence with customers by meeting the deliverables timely with a quality product. 19. Estimate time and effort of resources required for developing / debugging features / components Knowledge Examples : 1.
Appropriate software programs / modules 2. Functional & technical designing 3. Programming languages proficient in multiple skill clusters 4.
DBMS 5. Operating Systems and software platforms 6. Software Development Life Cycle 7. Agile Scrum or Kanban Methods 8. Integrated development environment (IDE) 9.
Rapid application development (RAD) 10. Modelling technology and languages 11. Interface definition languages (IDL) 12. Broad knowledge of customer domain and deep knowledge of sub domain where problem is solved