Developing software is my biggest passion since I was a child. I have done a few things in this field:
I am physically located in Lyon, France. I work remotely, having experience working in teams spread across continents. I am open to travel for limited periods.
I have experience designing and implementing Domain Specific Languages (DSL), Model Driven Development solutions (MDD) and supporting tools like editors and simulators.
I have also experience building tool for code comprehension and automated refactoring.
Tests, CI, proper usage of Git, experience with agile development: I can help you applying these principles in your organization.
I have worked with several clients from France, Italy, Germany, USA, UK, Ireland, Brazil and other countries.
My main responsibilities have been the design of DSLs and MDD solutions, the implementation of prototypes and the engineering of complex web applications.
As part of the Platform services & Local extensions team for EMEA my main task was to design and develop microservices used globally or specifically for the EMEA markets.
In Groupon I had the possibility to use many differen technologies including Docker, Python, Java, Ruby and C++.
I was a full stack engineer following projects from requirements definition to deployment and monitoring.
I was a full-stack Software Engineer, working in the personalisation team.
As part of my job I needed to be able to work on all the different aspects of our website and infrastructure: analysing the data with technologies like redshift, hadoop and tableau, to refine our recommenders algorithms, to improve the UI, to configure new machines. A fundamental skill was being able to work on rapid cycles, interacting with teams in other continents.
I was in charge of designing to design from scratch a new parser and code generator for an existing DSL. I supervised the migration process and trained the personnel involved during weekly meetings. The solution designed was based on ANTLR and a metamodeling library for the .NET platform (which I developed).
I took part in the mbeddr project (http://mbeddr.com). I realized an importer from C to the higher livel of abstraction of mbeddr-C. It meant to analyze all the usages of the preprocessor. A short demo is available here: http://www.youtube.com/watch?v=1OrHUQ1anZg
I was the tutor of a programmer learning Model-driven development using the EMF platform (EMF, Xtext, Xpand, MWE) at CSI Piemonte.
I developed a modeling solution for the development of multilayer applications. As part of the solution a small set of DSLs were developed.
I developed complex web applications for the managament of fleets. Our customers were institutions. My applications were used by different branches of the Italian police.
The topic of my thesis is polyglot software development.
I focus on Domain Specific Languages (DSLs), Model-Driven Development (MDD) and language integration using different technologies (antlr, EMF, Jetbrains MPS and static analysis techniques).
I spent one semester at Fortiss, an institute of the Technische Universität München.
I spent two semesters at Universität Karlsruhe (TH) where I attended several advanced courses and passed 7 exams.
Federico Tomassetti — email@example.com — +33 (0)78.39.888.14