Job
Description
Job Title: Java - Senior Developer Key Responsibilities As a Java - Senior Developer, you will: Lead Technical Initiatives: Take ownership of technical initiatives, guiding their execution from design to deployment, and ensuring alignment with architectural principles and business goals. Software Design & Development: Lead the design, development, and implementation of complex, scalable, and high-performance Java-based applications, adhering to best practices in object-oriented design and clean code. Code Quality & Best Practices: Drive code quality through active participation in code reviews, mentoring junior and mid-level developers, and promoting coding standards and best practices within the team. System Architecture Contribution: Contribute significantly to the architectural discussions and decisions for new and existing systems, focusing on scalability, reliability, and maintainability. Troubleshooting & Optimization: Proactively identify, diagnose, and resolve complex technical issues and performance bottlenecks across various application layers. Cross-functional Collaboration: Collaborate extensively with product owners, business analysts, QA engineers, and DevOps teams to understand requirements, translate them into technical solutions, and ensure seamless delivery. API & Integration Development: Design and implement robust RESTful APIs and integrate with various internal and external systems. Mentorship & Knowledge Sharing: Act as a mentor to less experienced team members, fostering their technical growth and sharing deep technical knowledge. Continuous Improvement: Champion continuous improvement in development processes, tools, and technologies within an Agile/Scrum environment. Mandatory Skills & Experience Technical Proficiency: Core Java Expertise: Deep and extensive knowledge of Core Java principles, best practices, and advanced features (e.g., Concurrency, JVM internals, new Java versions). Java Frameworks: Expert-level proficiency with leading Java frameworks such as Spring Boot, Spring MVC, Spring Security, and JPA/Hibernate . Microservices: Strong experience in designing, developing, and deploying microservices architectures . Web Services/APIs: Extensive experience in developing and consuming RESTful APIs and understanding of Web Services/SOA concepts. Databases: Strong proficiency in relational databases (e.g., Oracle, PostgreSQL, MySQL) including advanced SQL, database design, and optimization. Experience with NoSQL databases is a plus. Containerization & Orchestration: Hands-on experience with Docker and Kubernetes . Cloud Platforms: Experience with at least one major cloud platform (e.g., AWS, Azure, GCP), particularly with relevant services for application deployment and data management. CI/CD & DevOps Tools: Proficient with CI/CD pipelines and tools such as Jenkins, GitLab CI, GitHub Actions, Maven/Gradle, and Git/Bitbucket. Testing: Solid experience with unit testing frameworks (e.g., JUnit, Mockito) and familiarity with integration or end-to-end testing frameworks. Experience & Qualifications: Proven track record in leading technical initiatives and delivering complex software solutions. Demonstrated ability in application design, coding, testing, maintenance, and debugging. Experience in an Agile/Scrum development environment. Essential Professional Skills Problem-Solving: Excellent analytical and problem-solving skills, with the ability to tackle complex technical challenges independently. Communication: Strong verbal and written communication skills, capable of articulating complex technical concepts to both technical and non-technical stakeholders. Leadership & Mentorship: Demonstrated ability to lead technical discussions, provide guidance, and mentor team members. Collaboration: High degree of collaboration skills, working effectively within cross-functional and geographically distributed teams. Adaptability: Ability to quickly learn new technologies and adapt to evolving project requirements and priorities.