Responsibilities
Key Responsibilities:
Lead design and architecture discussions for complex software systems, making informed decisions that align with the company’s technical vision.
Collaborate with product managers, UX/UI designers, and other engineers to translate business requirements into technical specifications and actionable tasks.
Write efficient, maintainable, and robust code using Java and related technologies.
Conduct code reviews, provide constructive feedback, and ensure adherence to coding standards and best practices.
Mentor and guide junior engineers by sharing your deep understanding of Java, software design principles, and industry best practices.
Identify and address performance bottlenecks, security vulnerabilities, and other technical challenges within the software applications.
Stay up-to-date with the latest advancements in Java technologies and industry trends to ensure our products remain competitive and innovative.
Participate in agile development processes, including sprint planning, daily stand-ups, and retrospectives
Qualifications
Bachelor’s or Master’s degree in Computer Science, Engineering, or a related field.
Minimum 6+ years of professional experience in software development using Java/J2EE . Proven track record in designing and implementing complex, scalable software systems.
Solid understanding of software architecture patterns, object-oriented design, and design patterns.
Proficiency in working with frameworks such as Spring, Hibernate, or similar technologies.
Experience with web services, RESTful APIs, and microservices architecture.
Strong problem-solving skills and the ability to troubleshoot complex technical issues.
Excellent collaboration and communication skills, both written and verbal.
Previous experience mentoring junior engineers and leading technical discussions.
Familiarity with Agile/Scrum methodologies and tools (e.g., Jira, Confluence).
Bachelor's degree in Computer Science