Role Proficiency:
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 decisionsMeasures 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 requirementsOutputs Expected:
Code:
Develop code independently for the above
Configure:
Test:
scenarios and execution
Domain relevance:
Manage Project:
Manage Defects:
Estimate:
effort
resource dependence for one's own work and others' work
including modules
Document:
Manage knowledge:
share point
libraries and client universities
Status Reporting:
Release:
Design:
Mentoring:
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 helpKnowledge 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 solvedAdditional Comments:
We are looking for a skilled Java Microservices Developer to join our Development POD. In this role, you will be responsible for developing the framework necessary to transform the existing monolithic Inventory Management System into a microservice architecture using Java, API and Containerization technologies. Your primary focus will be to design and implement error-free, modular and high-performance services with a focus on improved customer service SLAs driven by automation and integration of key systems and services. Key Responsibilities: • Design and develop Microservices systems with Java, Spring and RESTful APIs. • Work collaboratively with a team of developers, technical leads, testers and project managers in an agile environment. • Maintain code integrity and organization, adhering to best practices. • Identify and fix bottlenecks & bugs. • Optimize services for maximum speed and scalability. • Perform unit and system testing • Understand business requirements and create plans accordingly • Perform threat and risk assessments Key Skills and Qualifications: • At least 5+ years of experience building large-scale software applications. • Proficient in Java technologies and hands-on experience in building microservices. • Strong knowledge of Spring framework. • Experience in solving technical issues with thorough research and investigation. • Work closely with the software architects to create high-level applications. • Proficient understanding of code versioning tools, such as Git. • Exposure to RDBMS and NoSQL Databases. Beneficial Experience: • Knowledge of cloud services (AWS, Azure, etc.) and containerization (Docker, Kubernetes) is an added advantage. • Experience in supporting and/or implementing complex integration projects. • Working experience in Agile framework • In-depth knowledge of data structures and algorithms • Familiarity with web servers • Any professional certifications • Experience in implementing automated testing platforms and unit tests.