Your Role and ResponsibilitiesResponsibilities:
- Design, develop, and maintain backend systems using Spring Boot and Java
- Collaborate with the front-end development team to define API contracts and ensure seamless integration
- Write efficient and optimised SQL queries for relational databases.
- Utilise your awareness of NoSQL databases like Cloudant to work with non-relational data models.
- Develop and maintain RESTful APIs to enable communication between front-end and back-end systems.
- Implement authentication and authorisation mechanisms for secure API access.
- Ensure the performance, scalability, and reliability of the backend systems.
- Monitor, analyse, and support the application in production to identify and resolve issues.
- Collaborate with DevOps and infrastructure teams to deploy and manage the application environment.
- Write and maintain unit tests and conduct integration testing to ensure code quality and reliability.
- Conduct code reviews to ensure adherence to coding standards and best practices.
- Stay up-to-date with the latest trends and advancements in backend development and database technologies.
- Document technical specifications, code changes, and system architecture for future reference.
- Tasks:
- Design and implement data models and database schemas.
- Develop a data access layer using Spring Data JPA or similar technologies.
- Implement caching mechanisms to improve application performance.
- Optimise database queries for efficiency and performance.
- Work with message brokers like Apache Kafka or RabbitMQ for asynchronous communication.
- Collaborate with the QA team to ensure comprehensive test coverage.
- Use monitoring and logging tools to identify and troubleshoot production issues.
- Implement security measures to protect sensitive data and prevent unauthorised access.
- Collaborate with stakeholders to gather requirements and propose technical solutions.
- Provide technical support and guidance to other team members.
Required Technical and Professional Expertise
- Strong proficiency in Spring Boot 3+ and Java 17
- Experience with SQL database systems and writing optimised queries
- Awareness of NoSQL databases, such as Cloudant, and understanding of non-relational data models
- Proficient in RESTful API development and integration
- Familiarity with authentication and authorisation mechanisms (e.g., JWT, OAuth)
- Experience with version control systems, such as Git
- Knowledge of software development best practices, including unit testing and code reviews
- Familiarity with DevOps practices and tools for application deployment and management
- Understanding of monitoring and logging tools for production support
- Strong problem-solving skills and attention to detail
- Excellent communication and collaboration abilities
- Ability to adapt to a fast-paced environment and meet project deadlines
Preferred Technical and Professional Expertise