Full-stack Software Engineer (Angular)
Friday Systems
Municipality of Madrid, Spain
6 days ago
Role details
Contract type
Permanent contract Employment type
Full-time (> 32 hours) Working hours
Regular working hours Languages
English Experience level
SeniorJob location
Municipality of Madrid, Spain
Tech stack
Java
Amazon Web Services (AWS)
Bash
C++
Cloud Computing
Software Quality
Code Review
Databases
Continuous Integration
Software Design Patterns
Linux
Distributed Systems
Spring
Python
NoSQL
Software Engineering
SQL Databases
Backend
Angular
Front End Software Development
REST
Docker
Microservices
Job description
- Design distributed systems, build backend (80%) and frontend (20%) services, manage cloud infrastructure and ensure quality through testing and reviews. Build and deploy backend services in Java and contribute to projects in Python or C++ when required.
- Develop and maintain RESTful APIs and web frontends using Angular.
- Containerize services with Docker, automate operations with Bash scripting, and deploy to Cloud environments (AWS) with CI / CD best practices.
- Manage databases, ensuring reliability, performance, and proper data modeling.
- Guarantee software quality by writing comprehensive tests, performing code reviews, and ensuring adherence to best engineering practices.
- Provide mentorship and leadership to foster a culture of quality and innovation.
Requirements
- Track record in software engineering, architecture and design patterns. 8+ years of development experience, with at least 5 years in a senior or lead role.
- Strong background developing and maintaining applications in Java and Spring framework (this is a must requirement). Working knowledge of Python and / or C++ is a strong advantage.
- Hands-on experience developing modern web frontends with Angular.
- Experience with Docker, Bash scripting, Linux environments, and network fundamentals for real-world production systems.
- Solid understanding of databases (SQL and NoSQL) and ability to make architectural decisions, balancing performance and scalability.
- Strong experience with cloud platforms, ideally AWS, including deployment, scaling, and monitoring of services.
- Experience in testing methodologies (unit, integration, end-to-end) and commitment to high-quality code.