Description
Job Summary:
We are seeking a Microservices Backend Programmer Analyst to design, develop, and maintain management and back-office systems for railway platforms.
Key Highlights:
1. Participate in the full backend service development lifecycle
2. Work with distributed architectures and sound programming practices
3. Modern development environment and software quality
DESCRIPTION
We are looking for a **Backend Programmer Analyst specialized in microservices architecture** to join a technology project focused on developing and evolving **management and back-office systems for railway transportation platforms**.
The selected candidate will participate in the **analysis, design, development, and maintenance of backend services**, working with microservices-based architectures and contributing to the development of robust, scalable, and service-oriented solutions. Key responsibilities include **designing and developing APIs following the API-First approach**, implementing microservices using **Spring Boot**, and integrating services via both **synchronous and asynchronous communication mechanisms**.
Additionally, the candidate will collaborate on **data management and modeling in relational databases**, using persistence technologies such as **JPA, Hibernate, and Spring Data**, and participate in evolutionary and corrective maintenance of systems. The professional will work closely with various technical teams within a modern development environment grounded in **distributed architectures, sound programming practices, and software quality**.
**2–5 years of experience** in backend software application development, especially in microservices-based architectures.
Remote work mode, with possibility of **100% telework**. For candidates located in Madrid, **availability to attend the workplace up to 2 days per week** in **San Fernando de Henares** is required.
REQUIREMENTS
* Experience in developing backend applications based on **microservices architecture**.
* Experience working with **Spring Boot** for backend service development.
* Knowledge and experience with **JPA (Hibernate, Spring Data)** for data persistence management.
* Experience in **inter-microservice communication**, both synchronous and asynchronous (e.g., JMS, Feign clients, or other messaging mechanisms).
* Experience in **API design and development**, applying the **API-First Design approach**.
* Familiarity with **OpenAPI and Swagger** for service documentation and definition.
* Solid knowledge of **relational databases**, particularly **Oracle and PostgreSQL**.
**Additional qualifications (preferred):**
* Knowledge of **design patterns and Clean Code principles**.
* Experience with **continuous integration and continuous deployment (CI/CD)** using tools such as **Jenkins, Docker, or Kubernetes**.
* Familiarity with **Unix/Linux-based operating systems**.
* Experience in **application testing** (unit and integration tests) using tools such as **JUnit or Mockito**.
* Knowledge of **version control systems**, preferably **Git**.
* Knowledge or experience with **cloud environments**, such as **AWS, Azure, or Google Cloud**.