About Me

Being able to create something out of thin air and send it all over the world always feel a bit magical to me. I knew from the first day I went on the Internet that I wanted to create websites as a living, and I never looked back.

I have also held a variety of jobs throughout my career. Developer/programmer will always be my main activity, but I also had the chance to be a team lead, tech lead and Web architect on some projects. Being able to 'feel' different aspects of a project helped me a lot to grow as a web developer!

I'm a very patient person and I'm good at focusing on what's important for the client and not on unimportant details. I'm also great at understanding the big picture of projects, so that I can anticipate problems before they arise and suggest alternative solutions to prevent them or gain time.

When I don't program, I like to travel, discover new places and meet new people. I've visited 15 countries so far and I feel like there's so much left to see! I also like trekking and mountain hiking, photography, trying out new restaurants and swimming.

Testimonials

  • I worked with Marc-Olivier a couple of years. Methodical, organised, modest, postive and efficient, he was recognized as the "technical reference" in programming. Working alone or in a team, he will always give his best results and excellent ratio "programmed code VS bug created". With a deep comprehension of programming concepts, for me he will be the person able to find a solution when everything else failed. [translated from French]

    Gabriel B. - PMP

Skills

Since I started building websites a while ago, I have also learned front-end technologies. As the years passed, I found a particular interest into programming and back-end parts, although I am still able to complete a website from start to finish. I can even do some minor design work! Here's a list of my skills.

Java (8 years)
Java 1.4 to 7, Spring, Spring MVC, Spring batch, Tomcat, Liferay, Ant, Maven, Hibernate, Eclipse IDE, JUnit, JSTL, JSP, Spring Security.

PHP (equivalent of 4 years):
PHP 5.5 (4 projects), Symfony, Laravel, Sonata Admin, CodeIgniter, PHP Unit, PHP Storm, Selenium

C# (equivalent of 2 years):
Visual Interdev / Visual Studio 2008-2010, Microsoft Sharepoint 2010

Front-end:
HTML 5, CSS 3, JavaScript, JQuery, JQuery-UI

Databases:
Miscrosoft SQL Server 2005-2008, MySQL 5+, Reddis

Methodologies:
Agile, Scrum, Waterfall

Sources:
Git, SVN, CVS

Tools:
Photoshop (to slice websites and for corrections), Trello, Jira, Jira Agile, Confluence, Stash, Sublime Text

OS:
Mac OSX, Windows (XP, 7, 8), Linux (Ubuntu)

Web servers:
Apache, Nginx, IIS

Others:
Jenkins, Docker, Vagrant, Virtual Box, ASP

Languages:
French (mother tongue), English (fluent)

Work

RicardoCuisine.com (employed by Tink)

PHP Programmer June 2015 - Present

Principal tasks:

  • Programming the back end and administration panel to allow the customer to update his website (recipes and website content) using Symfony 2 with Doctrine.

Accomplishments:

  • Used the framework ‘Sonata Admin’ to quickly generate minimal views and backend code to gain time.
  • Developed automated functional tests with Selenium and Symfony to reduce bugs, regression problems and QA time.

Travel from June 2014 to June 2015 (sabbatical)

Scarlet & Julia - scarletandjulia.com (employed by Tink)

Web architect April 2014 to June 2014

Principal tasks:

  • Determining the web application architecture and documenting the solution.
  • Testing and validating different methods to optimize Magento for high expected traffic.
  • Documenting the installation and configuration of the different modules (Magento, Reddis, Varnish).

Accomplishments:

  • Documented the architecture of the solution and presented it to the upper management and the system administrators team.

Tink (internal project) - Development standard definition

Web Architect June 2013 to June 2014

Principal tasks:

  • Meeting the different tech leads (PHP, Java, .NET) and establish between them different elements (tools, methods, standards) that could be passed to the other teams to improve the efficiency and robustness of our development cycles and methods.
  • Documenting the different development standard. For example, the way to use the source code 'versioning' system, how to respect the security in development, specify Tink’s development cycle and how to use different environments (test servers, production, etc.), how to produce easily 'deployable' solutions and how to use the internal communication tools.

Accomplishments:

  • Created a series of procedure and documentation that lead programmers must follow and fill while working on a new web project.
  • Improved the reliability and consistency of delivered applications and web sites.

Metro.ca (employed by Tink)

Team Lead and Java Programmer June 2012 to March 2013

Principal tasks:

  • Act as the team lead with a team of five programmers on the project.
  • Reviewing the code to ensure that they meet Tink’s standards.
  • Making sure that the team is efficient and respects the customer’s needs.

Accomplishments:

  • Enforced the use of unit testing to create a reliable application, especially in the import module that has to work with multiple types of data coming from external sources.
  • Managed the team of programmers and communicated thoroughly with the project manager so that the status of the project was well known.

Some previous projects (since 2010)

  • Clearning service website (April 2014 to May 2014): PHP / Laravel programmer
  • Tink - Defining development standards (March 2013 to June 2014) : Web Architect
  • St-Hubert - super market section (July 2013 à September 2013) : Java programmer
  • Sun media - Autonet dealer solutions (July 2013 à September 2013) : Web Architect
  • Blue Cross - website (June 2013 à July 2013) : Web Architect
  • St-Hubert - mobile website (March 2013 to May 2013) : Java Programmer
  • Metro - new website (June 2012 to March 2013) : Team lead
  • Transcontinental - bidgo.ca (February 2011 to December 2012) : Java programmer
  • Souris-Mini (March 2010 à April 2010) : C# programmer

Education

College of Sherbrooke

Diploma in Computer Science 1998-2001

That's where I learned the basics of programming. In college, I learned C, Cobol and the fundations of databases.

Get In Touch.

I am always open to discussing new opportunities and would be happy to have a no-fee conversation to see if I'm a good match for your project. Don't hesitate to contact me by email at mogosselin@gmail.com. You can also chat with me on Twitter or LinkedIn.