Resume
Matteo Moi - Software Engineer
About Me
As an IT enthusiast I’m always looking for increase my knowledge in the field of software, not focusing on a specific language or technology but trying to develop a mind set capable of adapting in any environment.
Tech Stack
- Backend Core: Java 17, Spring Boot 3, Spring Cloud, Spring Security, Hibernate/JPA, OpenAPI-first, JUnit, Mockito, Testcontainers, Maven
- Architecture: Spring Cloud Gateway, Nginx, Netflix Eureka, Zookeeper, Spring Cloud Config, Resilience4j, Spring Cloud Sleuth, Zipkin, OAuth2, JWT
- Data & Messaging: PostgreSQL, MySQL, Oracle, MongoDB, RabbitMQ, Apache Kafka, Flyway
- Delivery & Operations: Docker, Kubernetes, Helm, GitHub Actions, GitLab CI/CD, Jenkins, Prometheus, Grafana, Loki, Spring Actuator, Swagger/OpenAPI, Confluence, Jira, JasperReports
Education
- Bachelor's Degree in Computer Science - Ecampus University (ongoing)
- Self-directed Learning - Continuous professional development through courses, documentation, and hands-on projects since 2016
Professional Experience
Objectway
Software Engineer
Fintech
January 2024 – Present
- Delivered features across multiple projects based on Advice, a modular portfolio-management platform sold stand-alone or integrated in banks’ core systems.
- Client implementations and customizations for Credit Suisse, Allianz, Mediobanca, and TNB (Azimut spin-off), each with different Advice versions, module sets, and integration needs.
- Built microservices with Java 17 and Spring Boot; API-first development with OpenAPI, versioning, and backward compatibility.
- Owned frontend slices using JSF: Facelets views, backing beans, component wiring, and integration with backend APIs.
- Partnered 1:1 with business analysts to refine requirements and align domain models, user journeys, and API contracts.
- At Allianz: integrated Keycloak (OIDC) for authentication/authorization, role mapping, and claim design.
- At TNB: migrated selected flows/code from Azimut, focusing on Spring Batch jobs and orchestration.
- At Mediobanca and Credit Suisse: developed and maintained reporting with JasperReports/JasperSoft.
- Collaborated with DevOps on CI/CD workflows, environment configuration, release coordination, and observability requirements; provided log/metric needs and deployment readiness checks.
Iriscube Reply (SistemItaly)
Software Engineer
Banking
August 2023 – January 2024
- Delivered customer dashboard and back-office dashboard for Crédit Agricole, covering related backend services end to end.
- API-first delivery: authored documentation, defined Swagger/OpenAPI YAML contracts, then implemented services from the specs.
- Built RESTful microservices with Spring Boot and JPA/Hibernate; designed robust PostgreSQL persistence layers.
- Worked 1:1 with the frontend team to co-design API signatures, enforce versioning, and keep backward compatibility.
- Wrote unit and integration tests with JUnit 5 and Mockito; supported Agile sprints, code reviews, and CI.
Blue Reply (SistemItaly)
Junior Software Engineer
Insurance
April 2022 – August 2023
- Owned the project end to end for 6 months, coordinating delivery, quality, and release cadence.
- Developed both frontend and backend features: REST API design and implementation, UI development, API versioning, and backward compatibility.
- Analyzed and implemented Business Requirements (BR), Change Requests (CR), and hotfixes with impact assessment and controlled rollouts.
- Managed test and production environments: deployments, configuration, monitoring, and incident root-cause analysis.
- Technical lead for the migration from Vaadin 8 to Vaadin 24.
Personal Projects
Taskete
Global favor-exchange platform engineered on a microservices backbone.Focus on performance, security, and clean architecture from end to end.
- Backend: Java 21, Spring Boot 3.3, OpenAPI-first design
- Infrastructure: Kubernetes with Istio (mTLS, RBAC, JWT validation)
- Communication: Feign (sync) plus Kafka (async, Outbox pattern)
- Database: PostgreSQL per service with Flyway migrations
- CI/CD: GitHub Actions and Helm charts
- Observability: Prometheus, Grafana, Loki, OpenTelemetry
- Frontend: Angular 17 served via NGINX
Technical Study Notes
A comprehensive collection of technical notes covering various aspects of software development, architecture, and DevOps practices.
- Study Notes Repository
- Topics include: Java, Spring, Microservices, Docker, Kubernetes, Design Patterns, and more
- Regular updates with new learnings and discoveries
International Experience
Japan (Language and Cultural Studies)
Immersive experiences at international schools in Japan, developing strong adaptability, problem-solving skills, and cross-cultural communication abilities.
- Sapporo Language School: August 2019 - October 2019
- Fukuoka International Academy: July 2018 - September 2018
- Kobe Cultural Exchange Program: June 2017 - July 2017
Skills Gained: Japanese language proficiency, cross-cultural communication, adaptability, global perspective
Languages
- Italian: Native
- English: Professional working proficiency
- Japanese: Amateur
Soft Skills
- Problem Solving: Analytical approach to complex technical challenges
- Communication: Clear and effective technical and non-technical communication
- Teamwork: Collaborative approach in cross-functional teams
- Adaptability: Quick to learn new technologies and methodologies
- Time Management: Efficient prioritization and task completion
- Leadership: Mentoring junior developers and leading technical discussions