Mobile Developer at Deloitte, Milano
I am currently leading the development of a new cross-platform IoT app in Flutter for iOS and Android at Deloitte, connected to the latest coffee machines of a renowned Italian manufacturer. As the lead mobile developer, I coordinate an international team of 6 mobile developers, handling code reviews, architectural decisions, and supporting the team in solving complex issues.
The app communicates with the coffee machines via AWS IoT Core, utilizing WebSocket for LAN-to-LAN communication and MQTT via the cloud. To ensure seamless interoperability, we developed two native modules in Kotlin and Swift:
- ApplianceKit – for direct communication with the coffee machine
- IdentityKit – for user authentication
We integrated these modules into the Flutter app through custom Flutter plugins that we designed and implemented.
Technologies Used
For the development, we utilized:
- State Management: BLoC
- Dependency Injection: GetIt
- Networking: Dio, Retrofit
- Code Generation: Freezed
- Navigation: AutoRoute
Unit tests are written using bloc_test and are executed through Jenkins CI/CD.
Scalable and Modular Architecture
We designed a scalable and modular architecture, separating business logic from UI using BLoC and managing dependencies with GetIt. The project follows Clean Architecture principles, with a well-structured modular approach, dividing the codebase into core and feature layers while adhering to SOLID principles and design patterns.
Performance Optimization & Security
A strong focus was placed on performance optimization and security, particularly in the LAN-to-LAN WebSocket communication and MQTT over the cloud. We implemented industry best practices, including:
- Security measures: Certificate pinning, Frida detection, rooting & emulator detection, and other security enhancements
- Performance improvements: Optimized data flow and connection handling to reduce latency and enhance user experience
Strategic Contributions & Team Leadership
Beyond development, my role involves:
- Technical analysis and effort estimation for new features and projects
- Mentoring junior team members, ensuring knowledge sharing and team growth
- Code reviews, refactoring, and bug fixing, maintaining high-quality code standards
- Daily collaboration with stakeholders, including product owners, testers, designers, backend, and firmware teams, including Deloitte and the client's streams
Main features of the app
Main features of the app are:December 2023 - Present































