Java Developer in Luleå, Sweden
Elm Developer2017 - PRESENTZeit.io
Technologies: Elm, Webpack, Standard JS, IndexDB, Bootstrap, Inspinia
- Helped grow an existing important codebase.
- Handled feature implementation and massive refactoring of existing solutions.
- Implemented client generation and rendering of PDF reports.
- Handled communication between Web Worker and the Elm code.
- Handled data synchronization after offline modifications.
Full-stack Developer2016 - 2017Smith & Carson (via Toptal)
Technologies: Ember, Phalcon, Bootstrap
- Developed and maintained an important codebase.
- Enforced Ember 2.x best practices.
- Contributed to open source add-ons as required.
- Created add-ons as needed.
Node.js Teacher2016 - 2016Nomades Advance Technologies
Technologies: Node.js, Express, MongoDB, Mongoose
- Created a support application with Ember to make the students develop the back-end during the course.
- Detailed the functioning of Node.js and non-blocking I/O.
- Taught the use of Express and the principles of middleware.
- Explained how to use MongoDB and how to work with Mongoose.
Lead Developer2015 - 2016PDsurF
- Took over an existing project that had gotten out of hand.
- Enforced best practices through the entire project.
- Improved the rendering of PDFs by working on the Pdf.js project from Mozilla.
- Created live chat and comment sharing via Socket.IO.
- Sanitized the PHP code and the interactions with the DBs.
Freelance Back-end Developer2014 - 2014OpenCoast
Technologies: Java, GRIB, NetCDF-java
- Extracted data from a meteorological API.
- Created a specific library tool to parse and store relevant data from GRID and netCDF files.
- Created a library to handle proprietary data and ensure a proper storage of the selected information.
- Created a library to allow an easy pooling of information from those sources of data.
Full-stack Developer2013 - 2014Sugar Seed
- Wrote a word-puzzle generator with heuristic optimizations.
- Wrote a Twitter OAuth authentication servlet in GAE.
- Wrote servlets for a JSON API to handle a word game.
- Added features and wrote corrections to a HTML5 game.
- Handled loading optimization with Google Closure.
Research Engineer2012 - 2012Luleå University of Technology
- Worked on a national research project.
- Created social components for the SATIN project allowing users to create applications with social interaction.
- Wrote documentation on how to use and extend the library and components.
Master's Student2012 - 2012Luleå University of Technology
- Worked on a research project.
- Built a tangible API for creating an abstraction level.
- Implemented components in the research project SATIN to support tangible application development.
- Created pervasive and tangible applications using the Sphero and the Sifteo devices within the SATIN project.
Developer, Co-Project Leader2010 - 2011Filteris
Technologies: PHP, GWT, HTML5
- Created a web application for tourist purposes.
- Formulated requirements and defined guidelines for the development process.
- Created a back-end and RESTful API in CodeIgniter (PHP).
- Integrated the design into a GWT front-end.
- Handled social network integration.
Developer (Internship)2010 - 2010Orange Labs Rennes
- Created a reusable cartographic library for a corporate technology.
- Wrote guidelines and a tutorial to use the cartographic library.
- Developed an air hockey game for Orange Widget operating as a mobile phone service platform available on all kind of devices, including Symbian, Android, and more.
- Developed small widgets for the Orange Widget platform.
- Created web services usable by widget.
- Sifthesis - Master thesis in pervasive and tangible computing (Development)
A 6 month project during which I developed a middleware API aimed at abstracting tangible device interactions to allow programmers to create software that uses those devices without dealing with the specific aspects of the device.
For instance, Sifteo cubes and Sphero balls are totally different, but by using this API, a programmer could support both devices by using high-level methods such as "notify-user" or "ask-yes-or-no-question".
The middleware was written in Java, using Jersey and Grizzly to provide server and RESTful support.
- Word game - back-end and front-end (Development)
I worked in a small team (2 to 3 persons) to create a word game in HTML5 with social media integration with support for smart phones, tablets, desktop, and more.
FrameworksSails.js, Express.js, GAE, Ember.js, Laravel, Angular, Flask, Phaser.io, CodeIgniter, Google Web Toolkit, Bootstrap 3, Jersey
Libraries/APIsNode.js, Material Design Lite, Ember Data, jQuery, Zepto, Twitter API, jQuery Mobile, Facebook Open Graph API, Google API
ToolsGit, GitHub, Eclipse IDE, GitLab, WebStorm, Mongoose, Bitbucket, PyCharm, Sublime Text 3, Emacs, Trello, MySQL Workbench, Gimp
ParadigmsObject-oriented Programming (OOP), Agile Software Development, Functional Programming, Model View Controller (MVC), Scrum
OtherAjax, Google Material Design, Game Development, Ember CLI
PlatformsLinux, NetBeans, Windows
- Engineering Diploma (Master's equivalent) degree in Computer Science, Computer Engineering2005 - 2010Institut National des Science Appliquées de Rennes - Rennes, France