Responsibilities
· Demonstrating mastery of architecture design, develop, test, debug, deploy, and maintain complex software applications using Java programming language and related technologies (e.g., Spring Framework, Hibernate, JUnit).
· Ensure adherence to software development best practices and patterns, including modularity, decoupling, and maintainability.
· Working closely with designers, product managers, QA engineers, and other stakeholders to ensure a seamless development process, providing technical guidance on design implementations, and driving alignment between teams.
· Identifying and resolving complex technical issues related to web applications using a systematic approach, documenting solutions for future reference, and collaborating with team members on problem resolution.
· Communicating effectively with stakeholders and team members and leading by example to promote a growth mindset.
· Continuously improve codebase by identifying areas for optimization or refactoring; write clean, readable, and maintainable code that is easy for others to understand and modify.
Requirements:
· Bachelor’s degree in computer science or any related field.
· 8+ years of experience as a Java developer with demonstrated success architecture, designing, developing, and maintaining complex software applications using Java.
· Strong problem-solving skills and the ability to work independently or as part of a team to deliver high-quality solutions.
· Excellent code reading and debugging skills.
· Good coding habits and excellent design, coding skills
· Excellent communication and collaboration skills in English.
· Strong understanding of Java technologies, including Java EE, Spring, Hibernate.
· Expertise in cloud platforms (AWS, Azure).
· Expertise in microservices architecture.
· Expertise in distributed systems and cloud-based architectures.
· Excellent communication and presentation skills.
· Ability to work independently and as part of a team