Job Responsibilities:
Design and develop high-performance, scalable, and reliable Java applications using best practices and industry standards.
Collaborate with other developers, architects, and stakeholders to design and implement solutions that meet business requirements.
Triage production issues and arrive at quality solution in a timely manner.
Mentor and guide junior developers on best practices and techniques for developing high-performance Java applications.
Develop and maintain documentation, including design documents, code comments, and user guides.
Participate in code reviews, testing, and deployment activities to ensure the quality of software deliverables.
Requirements:
Bachelor's or master's degree in computer science, Software Engineering, or a related field.
Extensive experience (8+ years) Extensive hands-on experience and expertise in object-oriented design methodology and application development using Java/J2EE, Design Patterns, Spring MVC, SQL, Web services
Experience with elastic search is preferrable.
Excellent understanding of computer science fundamentals, data structures and algorithms
Experience in developing high performance, highly scalable, database driven consumer web applications
Good understanding of web services and SOA related standards like REST/OAuth/JSON.
Good understanding of networking and security concepts.
Familiarity with scripting language, such as Python, Bash.
Familiarity with continuous integration and continuous deployment (CI/CD) tools, such as Jenkins.
Proficiency in Kubernetes, including cluster deployment, scaling, and management is highly desirable
Familiarity with networking, security, and storage concepts.
Strong analytical, problem solving skills, verbal and written communication skills
Ability to work in a fast paced, iterative development environment
Excellent communication skills with a collaborative approach to working in teams.