Job description
Role 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:
- Interpret the application feature and component designs to develop the same in accordance with specifications.
- Code debug test document and communicate product component and feature development stages.
- Validate results with user representatives integrating and commissions the overall solution.
- Select and create appropriate technical options for development such as reusing improving or reconfiguration of existing components while creating own solutions for new contexts
- Optimizes efficiency cost and quality.
- Influence and improve customer satisfaction
- Influence and improve employee engagement within the project teams
- Set FAST goals for self/team; provide feedback to FAST goals of team members
Measures of Outcomes:
- Adherence to engineering process and standards (coding standards)
- Adherence to project schedule / timelines
- Number of technical issues uncovered during the execution of the project
- Number of defects in the code
- Number of defects post delivery
- Number of non compliance issues
- Percent of voluntary attrition
- 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:
- Explain and communicate the design / development to the customer
- Perform and evaluate test results against product specifications
- Break down complex problems into logical components
- Develop user interfaces business software components
- Use data models
- Estimate time and effort resources required for developing / debugging features / components
- Perform and evaluate test in the customer or target environments
- Make quick decisions on technical/project related challenges
- Manage a team mentor and handle people related issues in team
- Have the ability to maintain high motivation levels and positive dynamics within the team.
- Interface with other teams designers and other parallel practices
- Set goals for self and team. Provide feedback for team members
- Create and articulate impactful technical presentations
- Follow high level of business etiquette in emails and other business communication
- Drive conference calls with customers and answer customer questions
- Proactively ask for and offer help
- Ability to work under pressure determine dependencies risks facilitate planning handling multiple tasks.
- Build confidence with customers by meeting the deliverables timely with a quality product.
- Estimate time and effort of resources required for developing / debugging features / components
Knowledge Examples:
- Appropriate software programs / modules
- Functional & technical designing
- Programming languages – proficient in multiple skill clusters
- DBMS
- Operating Systems and software platforms
- Software Development Life Cycle
- Agile – Scrum or Kanban Methods
- Integrated development environment (IDE)
- Rapid application development (RAD)
- Modelling technology and languages
- Interface definition languages (IDL)
- Broad knowledge of customer domain and deep knowledge of sub domain where problem is solved
Skills
C Programming, C++,Embedded C
Experience: 6-10 Years