Backend Engineer
Holaluz
Barcelona, Spain
Are you passionate about solid software architecture and seeking challenges in large-scale projects?
Join our team as a Backend Engineer and contribute to the construction of innovative technological solutions. You will develop robust and scalable backends, applying SOLID principles, DDD, and hexagonal architecture.
Key Responsibilities:
Design and Development:
- Design and develop scalable and maintainable backends using SOLID and DDD principles;
- Model domain entities and objects, applying appropriate naming and design patterns;
- Implement RESTful APIs following best practices and ensuring clear documentation;
- Utilize dependency management tools (Composer, Maven, Gradle) to manage libraries and frameworks.
Testing:
- Write comprehensive unit and integration tests to ensure code quality;
- Practice TDD to ensure agile and high-quality development.
Architecture:
- Implement hexagonal architectures to separate business logic from infrastructure;
- Work with distributed systems, using Docker to containerize applications;
- Interact with relational and non-relational databases, optimizing data access;
- Implement asynchronous communication solutions using queues and events.
Cloud:
- Deploy applications to the cloud using platforms like AWS, Azure, or Google Cloud;
- Explore and utilize serverless services to optimize costs and scalability.
Collaboration:
- Collaborate closely with the product development team and other stakeholders;
- Effectively communicate technical decisions and project progress.
Maintenance and Improvement:
- Perform continuous refactoring to improve code quality and architecture;
- Implement robust logging and exception handling mechanisms.
Requirements:
Solid knowledge of:
- At least one backend programming language (Java, Python, Node.js, etc.);
- Relational (MySQL, PostgreSQL) and non-relational databases;
- SOLID principles, DDD, hexagonal architecture, and design patterns;
- TDD and BDD;
- Docker and container orchestration;
- Cloud computing (AWS);
- RESTful APIs.
Experience in:
- Microservices development;
- Distributed systems;
- Asynchronous communication;
- DevOps and CI/CD.
Soft skills:
- Effective communication;
- Teamwork;
- Proactivity and problem-solving skills.
Valued:
- Knowledge of other programming languages (scripting and compiled);
- Experience with serverless systems;
- Contributions to open source projects;
- Advanced English.
Apply Now
Don't forget to mention EuroTechJobs when applying.