Job Description:
We are seeking a skilled Java Backend Developer to join our development team. The ideal candidate will have a strong foundation in Java, experience building scalable backend services, and expertise in GraphQL and API development. You will be responsible for designing, implementing, and maintaining backend systems, creating GraphQL APIs, and ensuring that our backend architecture is efficient, scalable, and secure.
Backend Development: Develop and maintain scalable backend services using Java, primarily focusing on building high-performance, resilient, and secure applications.
API Development (REST & GraphQL): Design and implement GraphQL APIs to enable flexible and efficient data querying. You will also work on traditional RESTful APIs for integrations with front-end applications and external systems.
Integration: Integrate backend services with various data sources (databases, third-party APIs, etc.) and ensure smooth data flow between the client and server via GraphQL and REST APIs.
System Design: Participate in the architecture and design of new features and enhancements to backend services. Ensure the system design aligns with business requirements while maintaining performance and scalability.
Performance Optimization: Identify and resolve performance bottlenecks in APIs, database queries, and backend services. Focus on improving response times, reducing latency, and optimizing query efficiency, especially for GraphQL queries.
Database Management: Work with SQL or NoSQL databases (e.g., MySQL, PostgreSQL, MongoDB) to design and maintain data models and ensure efficient data access.
Testing & Quality: Write unit and integration tests to ensure the reliability and maintainability of the codebase. Implement automated testing and CI/CD pipelines to ensure continuous delivery of high-quality software.
Security: Ensure that all APIs are secure and adhere to industry standards for authentication (e.g., OAuth2, JWT) and authorization. Protect backend systems against potential security vulnerabilities.
Collaboration: Collaborate with front-end developers, product managers, and other stakeholders to deliver end-to-end solutions. Participate in code reviews and contribute to best practices in backend development.
Documentation: Maintain clear, comprehensive documentation for APIs, services, and architecture to ensure the team can easily collaborate and understand the system.
Required Skills
Strong experience with Java (Core Java, Java 8+ features) and frameworks like Spring Boot.
Solid understanding and hands-on experience in GraphQL API design and development, including best practices for query optimization and schema design.