×
Renoir Boulanger

Renoir Boulanger

Full-Stack Developer & Senior Web Development Professional

Montréal, Quebec, CA, H4P 2G9
Français, English

Background


About

About

Experienced full-stack developer, I have a broad and deep understanding of the Open Web stack, Front-end and Server Techniques to build, deploy and maintain Web sites that scale.

Work Experience

Work Experience

  • Senior Technical Consultant (Lead Front-End)CGI Inc.

    May, 2017 - Present

    At CGI, I work as a Technical Lead as part of the Global Technology Operations - Software Development Team. My role is to analyze and contribute to the development of a Cloud Management Platform named Unify360 at the User Interface level (e.g. Web, Email, Dashboard…), focussing on the aspects related to UI such as Internationalization (e.g. translation), Localization (e.g. Date, Number formatting) from how to read data from services, to assembling view patterns. Unify360 is composed by many “micro-services” where each component has a specific tasks. For example; Authentication, Session validation, Forms, Rendering Views, etc. Services can be written in Perl, PHP, .Net Core, ASP.Net/IIS, or Go. From time to time, I also contribute to packaging and continuous-delivery systems.

    • Design and implement an HTML partial Microservice with PHP 7.2, Slim framework, Mustache PECL extension for a new section of Unify360 portal;

    • Research and Technical Requirements Analysis for modernizing Unify360 UI layer. Made comparison between React, Angular, Vue.js and different UI Component Libraries such as Google Material Design, Element UI, Quasar;

    • Implement prototype for a modern Unify360 Front-End using Vue.js, Nuxt.js, TypeScript, GraphQL, Koa.js and planned how to migrate all views into new platform effectively replacing code written in Perl and PHP 5.3, and also replacing HTML partial Microservice;

    • Lead the team that work and coach for writing code with tests, making self-contained and re-usable packages

  • Delivery Engineering Architect (remote)Colloquial / Betastream

    Jan, 2016 - May, 20171 year 4 months

    At Colloquial, my role was to introduce and coach the team Continuous Delivery and Code release, and deployment system. I was part of a geographically distributed Web Development and IT team ("Betastream") working on projects for Colloquial and other partner projects. My responsibilities were to review, plan, and build a next-generation infrastructure and deployment system for the project production pipeline.

    • Released a Cloud Orchestration solution using Salt Stack, running on Amazon AWS, Google Cloud Platform and Microsoft Azure, where we can manage automatically Web Applications, deployment levels, build steps and dependencies consistently;

    • Introduced HashiCorp Vagrant workflow to automatically manage Web Developer’s PHP setup using VirtualBox and Canonical Ubuntu Linux 16.04 LTS. By doing so, every developer got the same Web Server setup as in production;

    • Introduced automated packaging for every WordPress projects, by leveraging Composer’s archive feature. The automated build process would first pull all dependencies, run code-quality linters, and if successful, create a Zip archive. By merging on master on Bitbucket would generate an archive, and the continuous-delivery system make all web server nodes to download the archive, extract its contents in a folder. Deploying a release would be changing the "live" symbolic to the newly extracted package;

    • Introduced advanced Varnish caching with Fastly. Created HashiCorp Vagrant workspace network (e.g. one Web Server VM, one Database server, one Varnish VM) to allow working on Varnish VCL caching scripts.

  • Delivery Engineering ArchitectCAE

    Mar, 2016 - Jun, 20163 months

    At CAE, my role was to introduce and coach the team Continuous Delivery and Code release, and deployment system. I was working on-site as a part-time contract and been asked to analyze and document for recommending an Open-Source real-time monitoring solution. During that period, I compared Prometheus, Heka, Ganglia, Grafana, ElasticSearch Kibana, and other TimeSeries aggregation and visualization systems. The ideal system had to take into account the air-tight networking policies which included corporate TLS certificate, and deployment targets would often be inaccessible to the Internet.

    • Introduced a method to maintain network of Virtual Machines with HashiCorp Vagrant leveraging VirtualBox private networking

    • Created a "poor man" configuration management using Bash 4 as a way to avoid using text files.

  • Subject Matter Expert Compatibility Data Project (remote)Mozilla

    Sep, 2015 - Feb, 20165 months

    At Mozilla, my role was to provide an oversight of the development and participate in software architecture discussions as a subject matter expert on the Mozilla Developer Network Compatibility Data project. The Compatibility Data are what feeds developer.mozilla.org documentation pages telling developers if the feature is supported in a given Web Browser. My involvement was around communicating with various stakeholders about the requirements and features for the system.

    • Created a client-side DataTable rendering system with Vanilla JavaScript

    • Prototyped a file-based Compatibility data storage

  • Developer Operations Engineer (i.e. "DevOps")W3C/MIT

    Aug, 2013 - Aug, 20152 years

    At W3C, my role was to maintain stability, improve features, strengthen the infrastructure of the site, and act as a technical liaison with Open-source communities. The WebPlatform Docs project was meant to become an independent Web Developer documentation site maintained by an international community of contributors, sponsored by Adobe, Apple, DreamHost, Fastly, Facebook, Google, Intel, Mozilla, Microsoft, Nokia, and Opera.

    • Converted content and history from MediaWiki into Static site generators and Git (2015)

    • Improved Infrastructure deployment code so that any service could be rebuilt systematically (2015)

    • Implemented a self-healing monitoring (2015)

    • Designed and Implemented Single Sign-On solution using OAuth2 (2014)

    • Designed and built a Web Browser feature compatibility table system for documentation pages (2014)

    • Migrated the infrastructure to different providers along with Operating-System upgrades (2013, 2015)

  • Web DeveloperEricsson

    Feb, 2012 - Jun, 20131 year 4 months

    The goal of the project at Ericsson was to create a server on demand provision portal managing cloud computing clusters hosted in data centers geographically dispersed. My role was to architect, build and lead a Web-based virtualization provisioning portal. A key feature I worked on was to allow users to initiate VMs from any data centers, on any cloud provider platforms.

  • Web Developer, Co-Founder, Evocatio Solutions technologiques Inc.

    Jan, 2010 - Feb, 20122 years 1 month

    As a Web Developer and Co-Founder, my role was to lead and architect all Web Development work related to the FrontEnd stack. I would be in touch with Graphic Designers and Project Managers to create Valid HTML/CSS markup that reflects the designs, and to work on all Web Browsers of the moment. My work would take Adobe Photoshop and PDFs document and create HTML/CSS Static style guides (minimal JavaScript, no backend) to create CSS pattern libraries. As a Co-Founder, I had the authority to validate and review code quality when using HTML/CSS patterns generated by the Web Back-end Stack (Symfony 1, Symfony 2, Zend Framework, ASP.NET).

    • Participated in a major Web site rewrite for UDA.ca from .NET into PHP with Symfony1.x, responsible of two search-engine modules and HTML/CSS patterns libraries (2010-2012)

    • Created complex e-mail delivery systems to handle bounces at the server level and participated in the creation of a Web-based frontend (2011)

    • Created an early ”Offline first” HTML5 news reader for iPad (2010)

    • Participated in building and maintaining a major public-facing Web application that had been deployed in many cities around the globe (2010-2012)

  • Web DeveloperGroupe Informatique TechSolCom Inc.

    Oct, 2006 - Aug, 20092 years 10 months

    My role was to maintain the company corporate image on the web, maintain their Web site, and participate in projects run internally as a Web developer.

    • Contributed to many projects as Front-End Developer

    • Participated in maintaining company internal network, testing DataPower blade, Virtualized servers on bare metal, and web hosting infrastructure

    • Built a monitoring service using the SNMP protocol, centralized syslog server, and configured a Nagios monitoring service (2009)

    • Participated in making many Web applications as a Front-End developer including an inventory Web Application and a Continuous Delivery system

  • Web DeveloperCâble Axion Digitel

    Oct, 2005 - Nov, 20061 year 1 month

    My role was to rewrite the corporate website, maintain internal applications and answer to level-2 support calls from subscribers.

  • Web Developer, President, INEXIS Solution web Inc.

    Feb, 2002 - Nov, 20064 years 9 months

    INEXIS Solution web Inc., was a one-man web development service provider firm I founded to serve graphic design agencies in the region of the Eastern Townships. Services typically included creating HTML/CSS based on Mock-ups made using Adobe Photoshop/Illustrator by graphic designers were making, creating e-mail templates, and managing hosting services.

Skills

Skills

  • Frameworks
    Nuxt.jsVue.jsJestElement UIRush.jsKoa.jsAVABackbone.jsMarionette.jsSymfonyMochaJasmineBabelRollupAngular
  • Web Development Languages
    TypeScriptJavaScriptECMAScriptHTML/CSSPHP
  • Programming
    VCLBashPython
  • Web Platform
    HTML/CSS ArchitectureBundlingTranspilationDeploymentPromisesPolyfillsAdaptativeResponsive
  • Web Operations
    Configuration ManagementService MonitoringSelf-Healing event handlersSaltStackNode.jsElasticSearchPrometheusRedisVarnishDocker SwarmDockerflow
Education

Education

  • Web Development, Online Training, Udemy

    Jul, 2019 - Present

    Nuxt.js - Vue.js on SteroidsUnderstanding TypeScript
  • Web Development, Online Training, EggHead.io

    Jul, 2019 - Present

    Use Types Effectively in TypeScriptUp and Running with TypeScriptGet Started with ElasticSearchBuild a Server Rendered Vue.js App with Nuxt and Vuex
  • Web Development, Online Training, VueMastery

    May, 2019 - Present

    Real World Vue.jsMastering VuexNext-Level VueScaling Vue with Nuxt.jsAdvanced Components
  • Software development, Certification, Pearson Vue

    Jul, 2013 - Jul, 2013

    Zend Certified Engineer PHP 5.3
  • Continuing Studies, Course, McGill University

    Sep, 2012 - Dec, 2013

    CEEN-421-761 - English in Written Communication ContextsCMSC-000-781 - Foundations of MathematicsCMSC-101-771 - College Algebra and Functions
  • Continuing Studies, Course, University of Montreal

    Feb, 2008 - Jul, 2008

    Web Accessibility (WCAG 1) at the Nazareth & Louis Braille institute
  • Software development, Certification, IBM

    Jul, 2007 - Jul, 2007

    IBM WebSphere DataPower SOA Appliance
  • Army Communication and Information Systems Specialist, Millitary Career, Canadian Armed Forces

    Jul, 1997 - Jan, 2000

    Basic training at Royal Military College Saint-JeanPrivate (Basic), assigned to Sherbrooke 714th Communication SquadronWired and wireless communication and information systems (Introductory training)Winter warfare training
Awards

Awards

  • Grenier D’Or — Agence RED/Evocatio Grenier Aux Nouvelles

    Awarded on: Jan 01, 2010

    Agence RED and Evocatio Solutions technologiques Inc. created an online game as a corporate Holiday Card sent to its business partners. Each participants would receive a post card on which a 4 character code would give them access to their currently assigned gift. Each participant could steal another participant’s gift to a maximum of 9 times until a specific date at midnight, Montréal time.

Publications

Publications

Interests

Interests

  • Web Platform

    PerformanceProtocolsWeb Standards
  • Systems Engineering

    TracingDistributed computingLoad-BalancingFault tolerance
  • Sci-Fi

    StarTrekDoctor WhoParalel Universes