Independently develops error free code with high quality validation of applications guides other developers and assists Lead 1 - Software Engineering
Outcomes:
Understand and provide input to the application/feature/component designs; developing the same in accordance with user stories/requirements.
Code debug test document and communicate product/component/features at development stages.
Select appropriate technical options for development such as reusing improving or reconfiguration of existing components.
Optimise efficiency cost and quality by identifying opportunities for automation/process improvements and agile delivery models
Mentor Developer 1 - Software Engineering and Developer 2 - Software Engineering to effectively perform in their roles
Identify the problem patterns and improve the technical design of the application/system
Proactively identify issues/defects/flaws in module/requirement implementation
Assists Lead 1 - Software Engineering on Technical design. Review activities and begin demonstrating Lead 1 capabilities in making technical decisions
Measures of Outcomes:
Adherence to engineering process and standards (coding standards)
Adherence to schedule / timelines
Adhere to SLAs where applicable
Number of defects post delivery
Number of non-compliance issues
Reduction of reoccurrence of known defects
Quick turnaround of production bugs
Meet the defined productivity standards for project
Number of reusable components created
Completion of applicable technical/domain certifications
Completion of all mandatory training requirements
Outputs Expected:
Code:
Develop code independently for the above
Configure:
Implement and monitor configuration process
Test:
Create and review unit test cases scenarios and execution
Domain relevance:
Develop features and components with good understanding of the business problem being addressed for the client
Manage Project:
Manage module level activities
Manage Defects:
Perform defect RCA and mitigation
Estimate:
Estimate time effort resource dependence for ones own work and others work including modules
Document:
Create documentation for own work as well as perform peer review of documentation of others work
Manage knowledge:
Consume and contribute to project related documents share point libraries and client universities
Status Reporting:
Report status of tasks assigned
Comply with project related reporting standards/process
Release:
Execute release process
Design:
LLD for multiple components
Mentoring:
Mentor juniors on the team
Set FAST goals and provide feedback to FAST goals of mentees
Skill Examples:
Explain and communicate the design / development to the customer
Perform and evaluate test results against product specifications
Develop user interfaces business software components and embedded software components 5 Manage and guarantee high levels of cohesion and quality6 Use data models
Estimate effort and resources required for developing / debugging features / components
Perform and evaluate test in the customer or target environment
Team Player
Good written and verbal communication abilities
Proactively ask for help and offer help
Knowledge Examples:
Appropriate software programs / modules
Technical designing
Programming languages
DBMS
Operating Systems and software platforms
Integrated development environment (IDE)
Agile methods
Knowledge of customer domain and sub domain where problem is solved
Should have 6-9 years experience in NodeJS /React JS development Interact with customer/client or counterparts to understand the requirements Analyze the requirement (IRD/IDD, Extraction SQLs) and able to develop independently Mentor and guide juniors in the team able to review the code and provide valuable suggestions Collaborates with other counterparts to explore existing systems, determines areas of complexity, potential risks to successful completion of the project and bring value add to the customer. One point of contact responsible for the project Sharing knowledge and best practices around quality assurance process with team Proactive and good in communication