Job Description
Opportunity for Full Stack Software Engineer
Join our collaborative engineering team in Ireland and work on a long-term contract basis.
This role involves designing, architecting, and implementing software components as well as the overall solution using microservices architecture concepts and best engineering practices.
Key Responsibilities
1. Develop and maintain server-side and client-side applications using React, TypeScript, Java, Spring Boot, ensuring high-quality code and adherence to best practices.
2. Design and implement scalable and efficient data structures and algorithms to optimize application performance.
3. Ensure seamless integration of front-end and back-end components to deliver fully functional systems.
4. Collaborate with UI/UX designers to create user-friendly interfaces and ensure a seamless user experience.
5. Design and implement RESTful APIs and microservices architecture to facilitate communication between different components of the system.
6. Utilize design patterns to create modular, reusable, and maintainable code.
7. Collaborate with cross-functional teams to define, design, and deliver new features.
8. Write efficient, testable, and reusable code.
9. Ensure the performance, quality, and responsiveness of applications.
10. Proactively identify areas for innovation and optimization.
11. Troubleshoot, debug, and upgrade existing systems.
12. Participate in code reviews to maintain code quality and share knowledge.
13. Stay updated with industry trends and technologies related to Java, React, Spring Boot, CI/CD, Kubernetes, cloud technologies, and microservices.
Requirements
1. 2-4 years of experience.
2. Proficiency in React and its core principles, including hooks, state management, and component lifecycle.
3. Proficiency in Java, Spring Framework, Spring Boot.
4. Proficiency in HTML5, CSS3, TypeScript/JavaScript.
5. Experience with front-end build tools and package managers.
6. Experience with RESTful API design and implementation.
7. Experience with microservices architecture.
8. Experience with relational databases (e.g., PostgreSQL).
9. Experience with unit testing, integration testing, and end-to-end testing frameworks.
10. Experience with containerization technologies such as Docker, Kubernetes.
11. Knowledge of modern authorization mechanisms, such as JSON Web Tokens.
12. Knowledge of security best practices in web development.
13. Understanding of front-end build tools and pipelines.
14. Excellent problem-solving and communication skills.
15. Bachelor's degree in Computer Science, Computer Engineering, or other related discipline.
Preferred Qualifications
1. Experience in messaging and streaming technologies such as Kafka.
2. Experience with Cloud solutions (AWS, Azure, GCP).
3. Experience with CI/CD pipelines (e.g. Jenkins, GitHub Actions).