Description

Responsibilities:


Test-Driven Development (TDD) and Clean Code Practices: Develop and maintain Spring Boot applications adhering to Test-Driven Development (TDD) principles and clean code practices.
Collaborative Environment: Work efficiently in a fast-paced, project-centered, and team-oriented environment, collaborating with cross-functional teams.
Scalable and Maintainable Solutions: Design and implement high-quality, scalable, and maintainable solutions, with a focus on backend systems and related technologies.
Testing and Bug Resolution: Perform unit and integration tests, identifying and resolving bugs to ensure the satisfaction of design criteria.
Comprehensive Documentation: Produce well-written documentation for each microservice, ensuring clear understanding and ease of use for other team members.
Continuous Learning and Knowledge Sharing: Stay updated with emerging technologies, continuously educate oneself, and share expertise within the organization.
Effective Communication: Communicate efficiently with other developers and teams, fostering a collaborative work environment.
Microservices Development and Deployment: Create and deploy microservices using the Spring Boot framework, ensuring adherence to best practices and architectural guidelines.
Full Adherence to Software Development Life Cycle (SDLC): Ensure compliance with the entire SDLC, maintaining high standards of development, testing, deployment, and maintenance.
Database Integration and Streaming Systems: Integrate microservices with databases and possess knowledge of streaming systems like Kafka to facilitate efficient communication and data processing.


Requirements & Skills:


Education: Bachelor's degree in information technology, computer science, or a related discipline.
Spring Boot Experience: Demonstrated hands-on experience in developing and maintaining applications using the Spring Boot framework.
Knowledge of Design Patterns and Technologies:
Understanding of various software development design patterns (e.g., Singleton, Factory, Strategy, Observer) and their practical application in software development.
Familiarity with technology and system tools such as GIT for version control, Swagger for API documentation, PCF (Pivotal Cloud Foundry) for deployment, and Kafka MQ (Message Queue) for streaming systems.
Testing Skills: Experience in writing unit tests using frameworks like JUnit, Mockito, or PowerMock.
Markup Languages: Proficiency in markup languages like JSON and YML.
Quality and Security Scan Technologies: Working knowledge of quality and security scan technologies such as Sonar, Fortify, and Web Inspect.
Agile Methodology: Knowledge and experience in working with the Agile approach.
SQL Proficiency: Expertise in writing efficient SQL queries to interact with databases.
Application Server: experience in deploying application to Websphere and open liberty servers

Education

Bachelor's degree in information technology, computer science