Open-source - Gatsby
Active participation in the Gatsby community : development, code review, tests and support.
When I decided to build this website, I knew I wanted to:
- code in React
- not have to deal with a server
- be SEO-friendly (this is where it got hard)
With these requirements in mind, I searched for the best solution, and this is how I discovered Gatsby (as a pre-alpha version) and I decided to take part!
My main interventions were:
- enabling Gatsby to run on Windows
- enabling the use of TypeScript
- finding and correcting bugs
- collaborating with other developers on Discord
- Participating in technical choices (including the file architecture)
- reviewing and validating pull requests
After all this, I was finally able to start building my own website using the perfect tools.
Freelance - Actronika
Development of the software for the Tactronik chip's demonstration kits.
This software, developed with Electron/React/Redux/Redux-observable/Jest, enables the configuration of different predefined haptic effects before sending them to the demonstration chip via the serial port.
The challenge was to have a layer of serial communication without having access to the chip to do testing before delivery.
Using Redux-observable and a battery of unit tests, the connection succeeded without a hitch. The project can now be easily maintained and evolved. Isn't that great?
Freelance - Actronika
Development of a solution to generate haptic effects.
This was a quick project for a client's POC, the aim was to create an application to generate and sequence haptic effects, then export the result.
The biggest challenges were the speed of the project and the necessity to handle a great volume of data. Therefore, we decided to use a 100% web solution with a CSV export, in spite of the risk of browser latency.
In the end, the product works and the client's requirements were fulfilled!
I also used this first mission for Actronika as an opportunity to train the team in React/Redux/TypeScript/Jest, so as to allow an easy hand-over.
Discovery of React - Connect 4
Christmas holidays \o/ React and Redux are getting increasdingly popular, but I've only used Angular until now...
Not to worry! I used these holidays to fill the gap. I decide to try my hand at implementing a "Connect 4" game, using TDD (I like testing) and in TypeScript.
Thus began my React/Redux adventure! It was in fact this project that I later used as a starter and training material for my work with Actronika.
Verdict : Redux is great! I perfectly understand its popularity. And I can no longer do without the hot-reload ^^ All in all, I have a crush on this stack!
August 2016 - March 2017
CTO - LearnMyLanguage
Conception and development of the entire Speekoo application
Speekoo is a language learning application. Its advantage lies in its method, based on the language's structure instead of learning by heart responses for specific scenarios.
My responsibilities and projects included:
- The web application using angular 2.
- The mobile iOS and Android applications, using ionic 2 to share code with the web application.
- The general architecture, including the firebase database.
- A standard administration interface to enable importing lessons from an excel file and modify the online content in real time.
- Implementation of the project organisation (Team services, Kanban).
2014 - 2016
CTO and partner at Metidia
My greatest adventure (until now)! Vinoga, the social farming game set in the worl of wine-making.
As a team of two developers, we implemented not only an entire game but also a complete developing environment to optimize our efficiency. I was personally responsible for the architecture of the servers and back-end. Architecture-wise, everything can be deployed and versionned on cloud formation, including a jenkins, a redis, and a system to manage docker instances. All of it is deployed continuously with 0 downtime.
Using my personal experience in graphic design, I was also able to lead and train our graphics team and ensure handover. Furthermore, due to the specifics of working in a start-up environment, I endeavoured to help out wherever possible (shooting promotional videos, organizing events, designing graphical elements...). It wasn't always easy, but one thing is sure : I learned a lot from this experience!
Our last field of experimentation was project management. From "on-the-fly" development to the the implementation of agile methods (Scrum first, then Kanban), we were able to ascertain the pros and cons of each method, adapt them and learn from them.
2009 - 2013
Master in management from leading French business school : Télécom EM
Télécom EM - Specializing in Engineering Information Systems
Studying management?! Indeed, during my studies I chose to dive deeper into business subjects differing from my passion: programming.
As a matter of fact, I've been developing since I was 11 years old, and I've always been self-educated. Having a desire to learn, I decided to pursue studies in the management/commerce fields. However, I chose a business school sharing a campus with an IT college, and I chose a specialty that is common to both schools: Engineering Information Systems.
I do not regret this choice, which allows me to apprehend projects with a greater open-mindedness. :)
During that period, I also took intensely part in the club life of the campus: I became vice-president of the Arts Office, President of the makers' club and member of the robotics club.
2008 - 2009
Diploma from University Institute of technology in Marketing techniques
IUT Techniques de commercialisation in Sénart (77)
One of the best trainings for working life, in my opinion, these two years of teamwork on a variety of projects have made me who I am today!
It was there, right after high school, that I truly experienced teamwork. It taught me the importance of good communication and organisation, which are still at the core of my profession today.
During that time, I was constantly in contact with professionals and have participated in projects with concrete results (fundraising "téléthon" in a mall, proposal for a communication campaign...).