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