Responsibilities Design: Participate in design of one or more modules. Implement the agreed requirement adhering to the design documents of the project Investigation & Problem Solving: Participate in deciding and recommending the technologies and tools that best fit the business requirements. Research and investigate to find out proper solution for technical problems. Ability to compare and assess technical solutions & tools. Take personal ownership for issue resolution with no pointing finger attitude. Reporting: On time reporting and escalation of projects problems. Clear and accurate reporting. Coaching & Technical guidance: Own one or more modules of the project(s) under development. Responsible for providing technical guidance and coaching for the juniors team members. Review code of juniors team members and recommends necessary rework. Quality: Implement the agreed requirement with high level of quality. Review code of junior s members with providing clear feedback. Minimal number of defects during QA & UAT process. Investigation & Problem Solving: Analyze and resolve software errors accurately on time. Take personal ownership for issue resolution with no pointing finger attitude. Provide technical guidance & support for juniors team members. Technical Estimate: Participate in the requirements estimation process. Systems Support: Support production systems with taking care of implementing the required KPIs. Ability to investigate the root cause, recommend and implement proper technical solution within the agreed SLA. Commitment, Flexibility & Dedication: Deliver tasks on time and within project plan with the agreed quality standards. Flexible to adapt with unplanned changes in timelines, business requirements, quality standard or any other activity that might threat the overall project delivery. Co-operate with other team members to achieve project targets. High dedication with putting the business first and ability to set the right priority for the benefit of our business. Innovation Suggest and implement new ideas and software improvements. Assess juniors team members ideas and provide constructive feedback and guidelines Technical skills: Very good knowledge of: Object Oriented Programming Design patterns (Basic GoF) Microservices architecture SOA Service Oriented Architecture SOLID principals Threading Collections Unit testing Relational Database Basic concepts No SQL Database Redis Big Data (Kafka) Mongo DB Spring boot AOP Aspect Oriented Programming Spring security Spring cloud Spring data Maven Git and branching strategies Application servers Kubernates Docker containers Splunk trouble shooting Linux and shell scripting Jenkins as a concept Streaming Reactive programming Generics REST APIs SOAP Webservice Clean code Cryptography AWS Developing Work Experience: 3-8 years working experience Education: Bachelor Degree in computer science and/or engineering or equivalent General Skills: Fast learning curve with minimal coaching and guidelines. Can work in a team or independent. Steadiness under pressure. Good communication skills. Communicate in a clear and simple way. Learn from mistakes and share lessons learned from previous projects. Good listener, listen and ask questions to understand the business needs. Ability to work efficiently under pressure with no compromise on quality of deliverables. Show a can-do attitude, and believe in challenging and developing ourselves.