- Software Development Engineer2015 - 2015Groupon
Technologies: Java, Python, C++, Docker
- Designed, developed, deployed, and maintaned micro-services.
- Used Docker for functional tests.
- Contributed to the Dev-Ops rotation for monitoring our services.
- Created UI interfaces with Node.JS.
- Developed services with Spark-Java and DropWizard.
- Software Engineer2014 - 2015TripAdvisor
- Developed on the full stack, working on every aspect of the application, from back-end to front-end.
- Analyzed data with technologies like Redshift, Hadoop and Tableau.
- Developed the reason messages, which increased the click rate up to 30%.
- Advocated a testing culture, significantly increasing test coverage for the code produced by my team.
- Improved debugging tools available to our PMs to evaluate our algorithms.
- Architectural Designer/Trainer2014 - 2014Sistemi
Technologies: C#, .NET, ANTLR
- Designed a parser for an existing DSL.
- Built a code generation framework for .NET.
- Implemented the semantic analysis functions for the DSL.
- Released an open-source framework for metamodeling manipulation in .NET.
- Contributed remotely to project completion.
- Research Assistant2010 - 2014Politecnico di Torino
Technologies: JRuby, Ruby, R, Python
- Developed software for static and dynamic analysis of code in different languages (mostly JRuby, Python and Java).
- Analyzed data (with JRuby, R).
- Assisted in teaching four different courses on software development (generally UML, Java, and Python).
- Supervised students working on their bachelor's/master's theses.
- Realized independent research work.
- Visiting PhD Student2012 - 2013Fortiss Institute (Technical University of Munich)
Technologies: JetBrains MPS, MDD, Java
- Contributed to the mbeddr project.
- Collaborated with some of the world's most talented engineers in MDD.
- Wrote an importer from C code lifting higher level concepts.
- Co-authored several papers on C preprocessor code analysis.
- Collaborated also with BMW.
- MDD Consultant2009 - 2012CSI Piemonte & Trim
Technologies: Xtext, Xpand, EMF, Eclipse
- Designed a complete MDD solution. The solution was integrated with existing Java code and had a code generator.
- Tried personnel on EMF.
- Conducted explorative studies to refactor the development process around an MDD architecture for a large company.
- Software Developer2007 - 2007Divitech
Technologies: Java, Struts, J2EE
- Contributed to several projects for the Italian police.
- Evolved a large existing application to control a fleet of cars.
- Helped train police officers, teaching them how to use the application.
- Participated in meetings with directors of the IT infrastructure of the Italian police.