Job Description
About Our Team:
We are a dynamic team of software engineers looking for a talented Back-End Software Engineer with expertise in Spring Boot and Java to join us. As a key member, you will be responsible for developing and maintaining robust applications.
Main Responsibilities:
• Software Development: Design, develop, and test software applications using Spring Boot and Java, adhering to quality standards and project requirements.
• Performance Optimization: Develop features, including web services and database queries, with a focus on performance optimization.
• Collaboration: Collaborate with front-end developers, system engineers, and other back-end developers to implement robust solutions and enhance shared platforms.
• Technical Expertise: Apply SDLC principles and methodologies such as Lean, Agile, XP, CI, software and product security, scalability, documentation practices, refactoring, and testing techniques.
Requirements:
• Education: Bachelor's degree in Information Systems/Technology, Computer Science, Engineering, or equivalent experience.
• Professional Experience: Professional experience as a Software Engineering Specialist or similar role.
• Programming Skills: Profound knowledge of Java and object-oriented programming principles.
• Containerization: Familiarity with Docker and containerization techniques for application deployment.
• Scalability: Understanding of design patterns and best practices for developing robust back-end applications.
• Security: Ability to optimize performance and address scalability challenges effectively.
• Authentication: Experience in implementing secure authentication and authorization mechanisms.
• Architecture: Capability to design and implement scalable and resilient architectures.
• CID Tools: Knowledge of CI/CD tools and practices.
• Web Development: Proven experience in developing web applications using technologies such as Java, Spring Boot, RESTful APIs, SOAP, and JUnit.
• Database Tools: Proficiency with database tools and languages, including SQL, JPA, Hibernate, JDBC, and Spring Data.
• Version Control: Experience with software lifecycle management tools like Maven and Git.
• Cloud Services: Familiarity with cloud services and environments.
• Communication: Strong collaboration and communication skills with proficiency in English.
Preferred Skills:
• Back-end Development: Back-end development experience with frameworks like Java, Spring Boot, RESTful APIs, SOAP, and JUnit.
• State Management: Experience with state management libraries like NgRx or Redux.
• Accessibility: Understanding of web accessibility standards and best practices.
• Agile Development: Exposure to agile development practices.
• Security Best Practices: Understanding of application security best practices.