My curriculum vitæ

Note that the YAML version shown here may differ from the original, it might be the parsed version (i.e. same as JSON output). You can have a look at the source document in the following link. Document source

Other versions

As code

---
meta:
  theme: elegant
  lastModified: 2025-04-03T12:22:00
  canonical: http://registry.jsonresume.org/renoirb
  alternate: https//renoirb.github.io/site/resume
  source: https://gist.github.com/renoirb/65fccabc7dea76fea70dccb14077ab0d#gistcomment-3010170
  _source: https://github.com/renoirb/site/blob/2020/content/resume/jsonresume-renoirb.yaml

basics:
  name: Renoir Boulanger
  label: Expert in Front-End Ops, UI Libraries who crafts accessible web experiences with precision
  image: &image 'https://secure.gravatar.com/avatar/cbf8c9036c204fe85e15155f9d70faec?size=420'
  picture: *image
  email: hello@renoirboulanger.com
  url: &url https://renoirboulanger.com
  website: *url
  summary: |
    Experienced full-stack developer dedicated to creating framework-agnostic web solutions that excel in Accessibility,
    Performance, and Code Quality. Strong emphasis on Web Standards, continuous testing, and test-driven development (TDD).
    A polyglot programmer contributing to open-source projects and architecting robust package management systems.
    Designed and maintained hosting infrastructure for high-visibility sites with expertise in Cloud IaC,
    Containers, and continuous deployment systems focusing on reproducible builds and consistent environments.
  location:
    city: Montréal
    region: Quebec
    countryCode: CA
  profiles:
    - network: LinkedIn
      username: renoirb
      url: https://linkedin.com/in/renoirb
    - network: Twitter
      username: renoirb
      url: https://x.com/renoirb
    - network: GitHub
      username: renoirb
      url: https://github.com/renoirb
    - network: GitLab
      username: renoirb
      url: https://gitlab.com/renoirb
  highlights:
    - 'Polyglot programmer implementing precise solutions in Deno, TypeScript, ECMAScript, JavaScript, PHP, Bash, GNU Make, C#, Python'
    - 'Expertise in Web Standards, Accessibility (WCAG), Internationalization (i18n), and Localization (l10n)'
    - 'Experience in Infrastructure As Code with Salt Stack, Vagrant, Ansible, Puppet'
    - 'Technical contributor to open-source projects with publicly available implementations: Nuxt.js documentation, Alpine Linux package maintenance, MediaWiki compatibility tables, and Mozilla Firefox Accounts'
    - 'Developed and documented reusable technical solutions like type-safe bitmask operations in JavaScript, Salt Stack infrastructure states, and automated MediaWiki content conversion tools'
    - 'Architected documented hosting infrastructure for high-visibility sites including W3C’s WebPlatform Docs project https://webplatform.github.io/ and The World Wide Web’s 25th anniversary site https://www.w3.org/webat25/'

work:
  - name: &name Self-Employed
    company: *name
    position: Open Source Web Components Specialist (part time)
    location: Montréal, QC, Canada
    remote: false
    contract: false
    startDate: 2024-09-01
    url: &url 'https://renoirb.com/resume/rework.html'
    website: *url
    summary: >
      Developing framework-agnostic "headless UI" web component libraries using native browser capabilities and Web Standards.
      Implementing modern serverless architectures with Deno and CloudFlare Workers for edge computing.
      Creating a modular system that implements W3C Web Components Community Group "Context" community protocol to enable
      seamless integration across any JavaScript framework environment.
    highlights:
      - "Creating and documenting implementations of the W3C Web Components Community Group's Context API protocol, enabling sophisticated component communication without direct dependencies"
      - 'Architected renoirb-esm-modules (https://github.com/renoirb/renoirb-esm-modules/): A collection of unstyled, framework-agnostic Web Components that consume structured data to generate consistent, accessible experiences'
      - 'Developed a data-driven document generation system where a single YAML source produces both PDF documents and interactive web experiences —or this document—, demonstrating clear separation of content and presentation.'
      - 'Created Archivator (npm: archivator): A system for content preservation enabling historical comparison, indexing, and offline search capabilities (https://renoirb.github.io/archivator-demo/)'
      - 'Created tuples-boolean-bitmasker (npm: tuples-boolean-bitmasker): A library that converts object boolean properties into bitmasks for efficient, type-safe testing of complex conditional states in JavaScript applications'
    contributions:
      - name: '@renoirb/app-layout'
        url: https://github.com/renoirb/renoirb-esm-modules/tree/main/packages/app-layout-element
        description: Application shell component providing consistent document structure and navigation
      - name: '@renoirb/context-api'
        url: https://github.com/renoirb/renoirb-esm-modules/tree/main/packages/context-api
        description: Implementation of W3C Context API protocol for cross-component communication
      - name: archivator
        url: https://www.npmjs.com/package/archivator
        description: Content preservation system with indexing and search capabilities
      - name: tuples-boolean-bitmasker
        url: https://www.npmjs.com/package/tuples-boolean-bitmasker
        description: Type-safe bitmask operations for efficient state management

  - name: &name Full-time parenting
    company: *name
    position: Father
    location: Montréal, QC, Canada
    remote: false
    contract: false
    startDate: 2022-06-01
    endDate: 2024-09-01
    summary: Full-time caregiver for children.

  - name: &name GoTo Inc.
    company: *name
    position: Staff Software Developer
    location: Montréal, QC, Canada
    remote: true
    contract: false
    startDate: '2021-01-11'
    endDate: '2022-05-01'
    url: &url https://www.GoTo.com/
    website: *url
    description:
      Powered by category-defining products like GoTo Connect, GoTo Meeting,
      GoTo Webinar, LastPass, and more.
      With tens of millions of active users, more than 3,500 global employees,
      over $1.3 billion in annual revenue and approximately 2 million customers
      in over 190 countries.
    summary: >
      Contributed to an established micro-frontend architecture based on Web Components and lit-element,
      helping teams leverage its framework-agnostic foundations.
      Provided technical guidance on native Web Platform capabilities, demonstrating how to maintain
      accessibility and performance while integrating with React, and other frameworks.
      Created documentation and working examples showing how to effectively use the existing component
      system across different technology stacks.
    highlights:
      - Contributed architectural improvements to the Application Shell infrastructure, enabling seamless
        integration of diverse product experiences
      - Helped development teams understand and effectively utilize the Web Components architecture,
        ensuring consistent implementation across different framework contexts
      - Built and documented integration patterns demonstrating how to properly implement new features
        within the established component system
      - Developed examples and test suites validating accessibility and internationalization implementation
        within the architecture
    contributions:
      - name: lit-labs/context Web Components “Context API” Protocol
        url: https://github.com/lit/lit/pull/2012
    technologies:
      - Accessibility
      - CodeceptJS
      - ECMAScript
      - HTML/CSS
      - Jest
      - lit-html
      - microsoft/fast
      - Node.js
      - Playwright
      - TypeScript
      - WCAG

  - name: &name RBC Royal Bank of Canada Inc.
    company: *name
    position: Senior Full Stack Developer
    location: Montréal, QC, Canada
    remote: true
    contract: false
    startDate: '2020-03-01'
    endDate: '2020-12-18'
    url: &url https://www.rbcroyalbank.com
    website: *url
    description:
      Royal Bank of Canada is Canada’s largest bank, and one of the largest
      banks in the world, based on market capitalization. We have over 80,000
      full and part-time employees who serve more than 16 million personal,
      business, public sector and institutional clients through offices in
      Canada, the U.S. and 37 other countries.
    summary:
      At RBC, I served as a Senior Full-Stack Developer, leading the
      implementation of scalable modules for the RBC Omni platform (Online
      Business Banking). I collaborated closely with cross-functional teams to
      deliver solutions aligned with business objectives. Noteworthy
      achievements include streamlining developer onboarding processes and
      enhancing legacy systems for improved performance and reliability.
    highlights:
      - Make implementation proposals driven by the requirements and agenda set
        by product owners and business analysts.
      - Build scalable and reusable modules by collaborating with other
        production teams, including the design system/platform team.
      - Rewritten new developer onboarding documentation and completely
        automated how to properly setup the current password to be used properly
        through Git and other scripting, including the Bank’s authoritative
        self-signed certificate that would cause many headaches.
    highlights.more:
      - Re-Implement and improve link manager to legacy application system. So
        that the HTML templates contains a “Link Id”, and how it dynamically
        creates an hidden form and properly redirects to legacy HTML views.
      - Revise and make migration strategies for my Squad’s Angular monorepo to
        use Jest and ESLint 7 along with Prettier with automated LintStaged
        commit hooks.
      - Implement advanced Angular data-driven patterns to guide my colleagues
        away from filling HTML templates and instead use classes to provide
        data. Including how to rewrite forms using FormGroups instead of
        template
      - Make module stubs for the Backend chapter to write Express.js middleware
        in isolation instead of from a monolith
      - Written extensive onboarding documentation taking into account how to
        properly and automatically adjust developer tools at every password
        change. Avoiding popular “Ignore this error” and rather use corporate
        signed TLS certificate right
    technologies:
      - Angular
      - HTML/CSS
      - JavaScript
      - Jest
      - Node.js
      - TypeScript
      - WCAG

  - name: &name CGI Inc.
    company: *name
    position: Senior Technical Consultant (Lead Frontend)
    location: Montréal, QC, Canada
    remote: false
    contract: false
    hidden: false
    startDate: '2017-05-01'
    endDate: '2020-02-28'
    url: &url https://www.cgi.com/en
    website: *url
    description:
      CGI Inc. (NYSE GIB), provides information technology (IT) and business
      process services in Canada, Europe, the United States, and the Asia
      Pacific. Its services include the management of IT and business
      outsourcing, systems integration and consulting, and software solutions
      selling activities.
    summary:
      As a Senior Technical Consultant, I led the development of Unify360, a
      Multi-Cloud Management Platform. Leveraging microservices architecture and
      atomic design principles, I orchestrated the design and implementation of
      a robust frontend solution deployed across multiple regions. My role
      involved extensive experimentation with modern technologies and mentoring
      team members to foster a culture of innovation.
    highlights:
      - Experiment and document Frontend software development platform
        technological choices
      - Lead the team that work and coach for writing code with tests, making
        self-contained and re-usable packages
    highlights.more:
      - Implement prototype for a modern Unify360 Frontend 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;
      - 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;
      - Design and implement an HTML partial Microservice with PHP 7.2, Slim
        framework, Mustache PECL extension for a new section of Unify360 portal;
    technologies:
      - Alpine Linux
      - AVA
      - Docker
      - Docker Swarm
      - GitLab
      - HTML/CSS
      - JavaScript
      - Jest
      - Koa.js
      - Node.js
      - Nuxt.js
      - Perl
      - PHP 7.2
      - RushJS
      - Slim Framework
      - Sonatype Nexus
      - TypeScript
      - Vagrant
      - Vue.js
    contributions:
      - name: egoist/bili
        url: https://github.com/egoist/bili/commits/master?author=renoirb
      - name: nuxt.js/docs
        url: https://github.com/nuxt/docs/issues?utf8=%E2%9C%93&q=author%3Arenoirb
      - name: alpinelinux/aports
        url: https://github.com/alpinelinux/aports/pulls?utf8=%E2%9C%93&q=author%3Arenoirb
      - name: clarkdo/hare
        url: https://github.com/clarkdo/hare/issues?q=author%3Arenoirb
      - name: composer/composer
        url: https://github.com/composer/composer/issues?utf8=%E2%9C%93&q=author%3Arenoirb
      - name: graph-gophers/graphql-go
        url: https://github.com/graph-gophers/graphql-go/issues/151
      - name: vue-i18n
        url: https://github.com/renoirb/issue-506-vue-i18n

  - name: &name AlayaCare
    company: *name
    position: Senior Software Developer
    remote: false
    contract: true
    url: &url https://www.alayacare.com
    website: *url
    hidden: false
    startDate: '2016-11-07'
    endDate: '2017-02-17'
    summary: >-
      During my time at AlayaCare, I focused on infrastructure automation and developer
      experience improvements. I implemented comprehensive Docker Compose configurations that
      standardized development environments, reducing new developer onboarding time from days to hours.
      I also developed automated testing infrastructure using headless browsers in Docker containers
      with Ansible configuration management, improving their quality assurance processes.
    highlights:
      - Designed and implemented a complete workspace automation system that reduced developer
        onboarding time from multiple days to approximately one hour through consistent Docker
        Compose configurations.
      - Created a headless browser testing infrastructure using Docker and Ansible playbooks for
        automated end-to-end testing, allowing to have tailored testing environments run locally
        and within infrastructure with the same runtime configuration as production
      - Prototyped an HTML/CSS solution for complex medical form generation that converted
        structured API data into print-ready documents, using DOM visibility calculations to
        automatically distribute content between form fields and annexes
    technologies:
      - GNU Make
      - Ansible
      - Docker Compose
      - Docker
      - Headless Browsers
      - Automated Testing
      - CI/CD

  - name: Colloquial/Betastream via 6973051 Canada Inc.
    client: &client Colloquial / Betastream
    company: *client
    position: DevOps Automation Specialist
    remote: true
    contract: true
    hidden: false
    startDate: '2016-01-01'
    endDate: '2016-06-17'
    description: >-
      The J. Walter Thompson Company (JWT) partnered with Group SJR to launch Colloquial,
      a content marketing unit based in New York. Betastream provided technical
      implementation services for Colloquial's client projects, serving major brands
      including Johnson & Johnson, Exxon Mobil, FannieMae, and Walmart.
    summary: >-
      Designed and implemented a comprehensive infrastructure architecture to replace manual
      AWS deployments, establishing a vendor-neutral cloud orchestration system with standardized
      deployment patterns across environments. Created a security-focused approach with clear
      separation between public-facing and administrative interfaces, mandatory TLS encryption,
      and consistent naming conventions across all system components.
    highlights:
      - Architected complete cloud orchestration solution using SaltStack that worked consistently
        across AWS, Google Cloud, and Azure, with standardized naming conventions and deployment paths
      - Established comprehensive security model separating public origins from admin interfaces with
        distinct hostnames, IP restrictions, and client certificate authentication
      - Implemented atomic deployment system using timestamped archives and symbolic links, enabling
        zero-downtime deployments and instant rollbacks across all application servers
      - Integrated Fastly CDN with custom Varnish Configuration Language (VCL) testing environment
        and consistent TLS implementation across all communication layers
    highlights.more:
      - Created systematic naming conventions for all system components (hostnames, database names,
        certificate paths, archive storage) ensuring predictable infrastructure management
      - Developed self-healing capabilities for critical services with automatic monitoring and recovery
      - Established standardized methods for database management including automated anonymization
        for development environments and consistent backup procedures
      - Designed developer workspace automation allowing identical environments across all team members
    technologies:
      - AWS
      - Azure
      - CloudFlare
      - EC2
      - Fastly
      - GCP
      - Jenkins
      - Monit
      - Python
      - RDS
      - SaltStack
      - SysDig
      - Vagrant
      - Varnish
      - WordPress

  - name: CAE via 6973051 Canada Inc.
    client: &client CAE
    company: *client
    position: DevOps Automation Specialist
    location: Montréal, QC, Canada
    remote: false
    contract: true
    url: &url https://www.cae.com/
    website: *url
    hidden: false
    startDate: '2016-03-01'
    endDate: '2016-06-01'
    description:
      CAE is a global leader in training for the civil aviation, defence and
      security, and healthcare markets. Their systems operate in highly secure,
      air-gapped environments with strict compliance requirements.
    summary:
      Deliberately brought in as a "disruptor" to introduce modern Infrastructure as Code
      (IaC) practices to CAE's established environment. While another department used Chef
      (Ruby-based), I implemented accessible solutions using Bash scripts - a language
      the existing team was already comfortable with. I developed deployment and monitoring
      solutions for air-gapped networks with self-managed TLS certificate authorities,
      establishing patterns for securely automating systems that were previously manually
      configured, while meeting strict aerospace industry security requirements.
    highlights:
      - Collaboratively introduced Infrastructure as Code (IaC) principles through accessible
        technologies (Bash), meeting the team where they were comfortable rather than imposing
        unfamiliar Ruby-based solutions
      - Created automation scripts that configured developer tools (Git, Python, NPM, cURL)
        to explicitly trust internal certificate chains, solving a common pain point in
        secured environments
      - Developed deployment techniques for "playbooks" packages that could function
        within airtight network boundaries while maintaining consistency across environments
      - Evaluated and implemented monitoring solutions including Prometheus, Mozilla Heka,
        Monit, and Grafana, adapting them to function with corporate TLS certificates
    highlights.more:
      - Established patterns for downloading dependencies to predictable locations for
        approved transfer across security boundaries
      - Demonstrated reproducible environment creation using HashiCorp Vagrant with
        VirtualBox private networking
      - Created documentation for TLS certificate handling that became reference
        material for other secured environments
    technologies:
      - Beats
      - ElasticSearch Kibana
      - Ganglia
      - Grafana
      - Heka
      - InfluxDB Telegraf
      - LibreSSL
      - LogStash
      - Monit
      - Mozilla Heka
      - Prometheus
      - Bash
      - Vagrant

  - name: Mozilla via 6973051 Canada Inc. (remote)
    client: &client Mozilla
    company: *client
    position: Subject Matter Expert Compatibility Data Project
    remote: true
    contract: true
    url: &url https://developer.mozilla.org
    website: *url
    hidden: false
    startDate: '2015-08-01'
    endDate: '2016-01-01'
    description: >-
      Mozilla is a global, nonprofit organization dedicated to making the Web
      better. We emphasize principle over profit and believe that the Web is a
      shared public resource to be cared for, not a commodity to be sold. We
      work with a worldwide community to create open source products like
      Mozilla Firefox, and to innovate for the benefit of the individual and the
      betterment of the Web.
    summary: >-
      Contracted as a Product Owner for the Browser Compatibility Data project based on my previous
      experience with W3C's WebPlatform project. My role primarily involved participating in
      discussions regarding identifier systems for browser compatibility data, attending meetings,
      and preparing documentation and slide decks to communicate technical concepts to stakeholders.
    highlights:
      - Communicated with various stakeholders about the requirements and features for the
        compatibility data system
      - Participated in discussions about identifier schema designs for browser compatibility data
      - Created presentation materials and documentation explaining technical concepts
      - Attended meetings to represent the project's technical needs
    technologies:
      - HTML/CSS
      - Documentation
      - Technical Communication

  - name: W3C/MIT via 6973051 Canada Inc. (remote)
    client: &client W3C/MIT
    company: *client
    position: Developer Operations Engineer
    remote: true
    contract: true
    url: &url https://www.w3.org/staff/alumni/#renoir-boulanger
    website: *url
    hidden: false
    startDate: '2013-08-01'
    endDate: '2015-08-01'
    description:
      The World Wide Web Consortium (W3C) is an international community where
      Member organizations, a full-time staff, and the public work together to
      develop Web standards. Led by Web inventor and Director Tim Berners-Lee
      and CEO Jeffrey Jaffe, W3C’s mission is to lead the Web to its full
      potential.
    summary:
      At W3C/MIT, my role was to maintain stability, improve features,
      strengthen the infrastructure of the WebPlatform Docs project site,
      and act as a technical liaison with Open-source communities.
      The project lost its funding in August 2015 and 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.
    highlights:
      - Convert and preserve many hundred thousand edits, and keep trace of the
        content edition contributors and date of the change from MediaWiki into
        Static site generators and Git (2015)
      - Improved Infrastructure deployment code so that any service could be
        rebuilt systematically (2015)
      - Designed and Implemented Single Sign-On solution using OAuth2 (2014)
    highlights.more:
      - Implemented a self-healing monitoring (2015)
      - 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)
    contributions:
      - name: webplatform/ops
        url: https://github.com/webplatform/ops
      - name: renoirb/salt-basesystem
        url: https://github.com/renoirb/salt-basesystem
      - name: webplatform/salt-states
        url: https://github.com/webplatform/salt-states
      - name: renoirb/mediawiki-conversion
        url: https://github.com/renoirb/mediawiki-conversion
      - name: webplatform/content-converter
        url: https://github.com/webplatform/content-converter
      - name: webplatform.github.io/docs/WPD/Projects/SSO
        url: https://webplatform.github.io/docs/WPD/Projects/SSO/
      - name: webplatform.github.io/docs/WPD/Projects/CompaTables
        url: https://webplatform.github.io/docs/WPD/Projects/CompaTables/
    technologies:
      - Backbone.js
      - Bower
      - Discourse
      - DNS Bind
      - Docker
      - ElasticSearch
      - Express.js
      - Fastly
      - Gerrit
      - Gulp
      - HTML/CSS
      - Hypothes.is
      - JavaScript
      - MediaWiki
      - Memcached
      - Monit
      - MySQL
      - NGINX
      - Node.js
      - OpenStack Nova, Cinder, Horizon, Swift
      - PHP
      - Python
      - Redis
      - Salt Stack
      - SASS
      - Vagrant
      - WordPress

  - name: Ericsson via 6973051 Canada Inc.
    client: &client Ericsson
    company: *client
    position: Web Developer
    location: Montréal, QC, Canada
    remote: false
    contract: true
    url: &url https://www.ericsson.com/en
    website: *url
    hidden: false
    startDate: '2012-02-01'
    endDate: '2013-06-01'
    description: ''
    summary:
      As a Web Developer at Ericsson, I led the development of a web-based
      virtualization provisioning portal, enabling users to initiate virtual
      machines across geographically dispersed data centers. My role involved
      architecting and implementing innovative solutions using cutting-edge
      technologies, driving improvements in scalability and performance.
    highlights:
      - Architect, build and lead a Web-based “Virtualization provisioning”
        portal.
    technologies:
      - Git
      - HTML/CSS
      - JavaScript
      - jQuery
      - LESSCSS
      - MySQL
      - OpenStack Grizzly
      - PHP
      - Puppet
      - Symfony 2
      - Twitter Bootstrap
      - Vagrant
      - VMWare ESXi

  - name: &name Evocatio Solutions technologiques Inc.
    company: *name
    position: Senior Web Developer, Co-Founder
    location: Montréal, QC, Canada
    remote: false
    contract: false
    hidden: false
    startDate: '2010-01-01'
    endDate: '2012-03-01'
    description:
      Co-founded Evocatio Solutions technologies Inc. with two old friends. Our
      partnership lasted 2 years and at the peak we had 10 employees on our
      payroll, some of our work won prizes in local industry competitions and
      other projects got deployed in cities around the globe. The company worked
      on projects namely for the French-Canadian Artist Union (UDA), Astral
      Media, Equisoft, Quebec’s professional farmers’ union (UPA), Rolls-Royce
      and Rogers Media.
    summary:
      As Senior Web Developer and Co-Founder of Evocatio Solutions, I led web
      development projects for prestigious clients, including UDA and Astral
      Media. My responsibilities encompassed architecting frontend solutions,
      collaborating with graphic designers, and optimizing web applications for
      performance and usability. Notable achievements include spearheading major
      website rewrites and implementing advanced e-mail delivery systems.
    highlights:
      - Lead and architect all Web Development work related to the FrontEnd
        layer of the stack.
      - 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.
      - Take Adobe Photoshop and PDFs document and create HTML/CSS Static style
        guides (minimal JavaScript, no back-end) to create CSS pattern
        libraries.
    highlights.more:
      - 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)
    technologies:
      - Apache Solr
      - Bower
      - Compass
      - EJS
      - Git
      - Grunt
      - HTML/CSS
      - JavaScript
      - jQuery
      - LESSCSS
      - MySQL
      - Node.js
      - PHP
      - SASS
      - Subversion
      - symfony 1.x
      - Symfony 2
      - Tiki Wiki CMS/Groupware
      - Twitter Bootstrap
      - Vagrant
      - VMWare ESXi
      - WordPress
      - Yeoman

  - name: &name Groupe Informatique TechSolCom Inc.
    company: *name
    position: Web Developer
    location: Montréal, QC, Canada
    remote: false
    contract: false
    url: &url http://techsolcom.ca
    website: *url
    hidden: false
    startDate: '2006-10-01'
    endDate: '2009-08-01'
    description:
      Groupe Informatique TechSolCom Inc. had been merged into R3D Conseil Inc.
      R3D Conseil Inc is located in Montréal, QC, Canada and is part of the
      Consulting Services Industry. R3D Conseil Inc has 320 total employees
      across all of its locations and generates 62.21 million in sales (USD).
      There are 6 companies in the R3D Conseil Inc corporate family.
    summary:
      During my tenure at Groupe Informatique TechSolCom Inc., I played a
      pivotal role in maintaining the company's web presence and contributing to
      internal R&D projects. I led the front-end development aspect of a proprietary CI server
      web application and participated in building inventory management systems.
      My contributions enhanced operational efficiency and scalability across
      various projects.
    highlights:
      - Maintain the company corporate image on the web, maintain their Web
        site, and participate in projects run internally as a Web developer on
        R&D projects.
      - Participated in maintaining company internal network, testing DataPower
        blade, Virtualized servers on bare metal, and web hosting
        infrastructure.
      - Participated in building a proprietary CI server Web Application
        (“Beebox”) for IBM WebSphere that was intended to be a competitor to
        Jenkins and Cruise Control of the time. (2007-2009)
      - Contributed to Inventory management application (“Namminik”) as an
        internal R&D experiments to make a Web Application also have its native
        iOS client. (2009)
    highlights.more:
      - Contributed to many projects as Frontend Developer
      - Built a monitoring service using the SNMP protocol, centralized syslog
        server, and configured a Nagios monitoring service (2009)
    technologies:
      - Ant
      - Apache Tomcat
      - Bind
      - CVS
      - Debian GNU/Linux
      - HTML/CSS
      - IBM WebSphere DataPower
      - JavaScript
      - jQuery
      - Maven2
      - MooTools
      - Nagios
      - RedHat Enterprise Linux
      - SNMP
      - Subversion
      - WCAG
      - XML/XSL/XSLT
      - YUI 2

  - name: &name Câble Axion Digitel
    company: *name
    position: Web Developer
    location: Magog, QC, Canada
    remote: false
    contract: false
    url: &url http://www.axion.ca/acc/accueil.php?lang=fr
    website: *url
    hidden: true
    startDate: '2005-10-01'
    endDate: '2006-11-01'
    description:
      Câble Axion is a cable service provider. Their network coverage goes from
      Montreal South Shore, follows the US borders, and go up until the “Beauce”
      area in the province of Quebec. The towns in between the Eastern-
      Townships and Québec City.
    summary:
      My role was to rewrite the corporate website, maintain internal
      applications and answer to level-2 support calls from subscribers.
    highlights: []
    technologies:
      - PHP
      - HTML/CSS
      - Microsoft Access
      - MySQL
      - Sun OS (Solaris)
      - CentOS GNU/Linux
      - Subversion

  - name: &name INEXIS Solution web Inc.
    company: *name
    location: Sherbrooke, QC, Canada
    remote: false
    contract: false
    position: Web Developer, Owner
    hidden: true
    startDate: '2002-02-01'
    endDate: '2006-11-01'
    description: ''
    summary:
      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 included managing own private Web hosting
      infrastructure and building HTML/CSS pages based on PDF files provided by
      graphic designers, creating e-mail templates.
    highlights: []
    technologies:
      - PHP
      - HTML/CSS
      - MySQL
      - Qmail
      - Red-Hat GNU/Linux
      - CentOS GNU/Linux
      - Subversion

education:
  - institution: Université de Sherbrooke, CeFTI
    area: Software Engineering
    studyType: 2nd Cycle Program Diploma
    startDate: '2021-01-01'
    endDate: '2024-06-24'
    courses:
      - INF731 - Object-Oriented Programming in C#
      - INF743 - Software Architecture
      - INF747 - Designing and managing Enterprise Information Systems
  - institution: Udemy
    area: Web Development
    studyType: Online Training
    startDate: '2019-07-01'
    courses:
      - Nuxt.js - Vue.js on Steroids
      - Understanding TypeScript
  - institution: EggHead.io
    area: Web Development
    studyType: Online Training
    startDate: '2019-07-01'
    url: https://egghead.io
    courses:
      - Use Types Effectively in TypeScript
      - Up and Running with TypeScript
      - Get Started with ElasticSearch
      - Build a Server Rendered Vue.js App with Nuxt and Vuex
  - institution: VueMastery
    area: Web Development
    studyType: Online Training
    startDate: '2019-05-01'
    url: https://www.vuemastery.com/courses/
    courses:
      - Real World Vue.js
      - Mastering Vuex
      - Next-Level Vue
      - Scaling Vue with Nuxt.js
      - Advanced Components
  - institution: Pearson Vue
    area: Software development
    studyType: Certification
    startDate: '2013-07-01'
    endDate: '2013-07-01'
    url: https://www.zend.com/en/yellow-pages/ZEND011184
    courses:
      - Zend Certified Engineer PHP 5.3
  - institution: McGill University
    area: Continuing Studies
    studyType: Course
    startDate: '2012-09-01'
    endDate: '2013-12-01'
    courses:
      - CEEN-421-761 - English in Written Communication Contexts
      - CMSC-000-781 - Foundations of Mathematics
      - CMSC-101-771 - College Algebra and Functions
  - institution: University of Montreal
    area: Continuing Studies
    studyType: Course
    startDate: '2008-02-01'
    endDate: '2008-07-01'
    courses:
      - Web Accessibility (WCAG 1) at the Nazareth & Louis Braille institute
  - institution: IBM
    area: Software development
    studyType: Certification
    startDate: '2007-07-01'
    endDate: '2007-07-01'
    courses:
      - IBM WebSphere DataPower SOA Appliance
  - institution: Canadian Armed Forces
    area: Army Communication and Information Systems Specialist
    studyType: Millitary Career
    startDate: '1997-07-01'
    endDate: '2000-01-01'
    courses:
      - Basic training at Royal Military College Saint-Jean
      - Private (Basic), assigned to Sherbrooke 714th Communication Squadron
      - Wired and wireless communication and information systems (Introductory
        training)
      - Winter warfare training

awards:
  - title: Grenier D’Or — Agence RED/Evocatio
    date: '2010-01-01'
    awarder: Grenier Aux Nouvelles
    summary:
      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:
  - name:
      Santachè, A. “Mobile development using web technologies focusing on games”
    publisher: ACM
    locale: en-CA
    type: Paper
    releaseDate: '2013-11-01'
    url: &url https://doi.org/10.1145/2526188.2528541
    website: *url
    isbn: '978-1-4503-2559-2'
    authors:
      - Santachè, A.
      - Boulanger, R.
      - Viana, G.
      - Panaggio, R.
      - Melo, B.
      - Aboud, H.
    summary:
      Participated in chapters related to “Markup architecture”, “Events” and
      “Web Storage”

  - name: Kumar, J. “Apache Solr PHP Integration”
    publisher: Pakt Publishing
    locale: en-CA
    type: Book Review
    releaseDate: '2013-10-01'
    url: &url https://www.packtpub.com/product/apache-solr-php-integration/9781782164920
    website: *url
    isbn: '9781782164920'
    summary: Book review

  - name:
      « Techniques pour déployer WordPress de façon consistante et les rendre
      résilients »
    publisher: WordCamp Montréal 2016
    locale: fr-CA
    type: Talk
    releaseDate: '2016-07-01'
    url: &url http://renoirb.com/talks/2016-Techniques-pour-deployer-WordPress-de-facon-consistante-et-le-rendre-resilient/
    website: *url
    video: https://wordpress.tv/2016/12/09/renoir-boulanger-techniques-pour-deployer-wordpress-de-facon-consistante-et-les-rendre-resilients/
    summary: Talk given at WordCamp Montréal 2016

  - name: “Packaging for easier redeployment”
    publisher: DevOps Montréal
    locale: en-CA
    type: Talk
    releaseDate: '2015-10-01'
    url: &url http://renoirb.com/talks/Achieve-consistent-deployments-leveraging-packaging/
    website: *url
    summary: Presented at two events, DevOps Montréal, PHP Québec.

  - name:
      « Comment évaluer le niveau de qualité d’un site web selon les techniques
      d’intégration web d’actualité. »
    publisher: Web à Québec 2013
    locale: fr-CA
    type: Talk
    releaseDate: '2013-10-01'
    url: &url http://2013.webaquebec.org/#/horaire/vendredi/evaluer-la-qualite-dun-site-selon-les-techniques-dintegration-64.html
    website: *url
    summary: |
      Presented at two conferences; « Montreal WebIn », and « Web à Québec » (WAQ)

skills:
  - name: Programming
    keywords:
      - PHP
      - C#
      - VCL
      - Bash
      - Python
  - name: Web Development Languages
    level: Master
    keywords:
      - TypeScript
      - JavaScript
      - ECMAScript
      - HTML/CSS
  - name: PHP Frameworks
    keywords:
      - Symfony
      - Slim
      - Composer/Packagist
  - name: Frontend Frameworks
    keywords:
      - Nuxt.js
      - Vue.js
      - Koa.js
      - Element UI
      - Backbone.js
      - Marionette.js
      - Angular
  - name: Web Development Libraries
    level: Master
    keywords:
      - Rollup
      - Bili
      - Rush.js
  - name: Frontend Testing Frameworks
    keywords:
      - Jest
      - CodeceptJS
      - Playwright
      - AVA
      - Mocha
      - Jasmine
  - name: Web Platform
    level: Master
    keywords:
      - Accessibility
      - Adaptative
      - Bundling
      - Deployment
      - HTML/CSS Architecture
      - Polyfills
      - Promises
      - Responsive
      - Transpilation
  - name: Web Operations
    level: Master
    keywords:
      - Configuration Management
      - Docker Swarm
      - Dockerflow
      - ElasticSearch
      - Node.js
      - Prometheus
      - Redis
      - Salt Stack
      - Self-Healing event handlers
      - Service Monitoring
      - Varnish

languages:
  - language: Français
    fluency: Native speaker
  - language: English
    fluency: Second language

interests:
  - name: Web Platform
    keywords:
      - Performance
      - Protocols
      - Web Standards
  - name: Systems Engineering
    keywords:
      - Tracing
      - Distributed computing
      - Load-Balancing
      - Fault tolerance

  
  
{
  "$schema": "https://raw.githubusercontent.com/jsonresume/resume-schema/v1.0.0/schema.json",
  "basics": {
    "name": "Renoir Boulanger",
    "label": "Expert in Front-End Ops, UI Libraries who crafts accessible web experiences with precision",
    "image": "https://secure.gravatar.com/avatar/cbf8c9036c204fe85e15155f9d70faec?size=420",
    "picture": "https://secure.gravatar.com/avatar/cbf8c9036c204fe85e15155f9d70faec?size=420",
    "email": "hello@renoirboulanger.com",
    "url": "https://renoirboulanger.com",
    "website": "https://renoirboulanger.com",
    "summary": "Experienced full-stack developer dedicated to creating framework-agnostic web solutions that excel in Accessibility,\nPerformance, and Code Quality. Strong emphasis on Web Standards, continuous testing, and test-driven development (TDD).\nA polyglot programmer contributing to open-source projects and architecting robust package management systems.\nDesigned and maintained hosting infrastructure for high-visibility sites with expertise in Cloud IaC,\nContainers, and continuous deployment systems focusing on reproducible builds and consistent environments.\n",
    "location": {
      "city": "Montréal",
      "region": "Quebec",
      "countryCode": "CA"
    },
    "profiles": [
      {
        "network": "LinkedIn",
        "username": "renoirb",
        "url": "https://linkedin.com/in/renoirb"
      },
      {
        "network": "Twitter",
        "username": "renoirb",
        "url": "https://x.com/renoirb"
      },
      {
        "network": "GitHub",
        "username": "renoirb",
        "url": "https://github.com/renoirb"
      },
      {
        "network": "GitLab",
        "username": "renoirb",
        "url": "https://gitlab.com/renoirb"
      }
    ],
    "highlights": [
      "Polyglot programmer implementing precise solutions in Deno, TypeScript, ECMAScript, JavaScript, PHP, Bash, GNU Make, C#, Python",
      "Expertise in Web Standards, Accessibility (WCAG), Internationalization (i18n), and Localization (l10n)",
      "Experience in Infrastructure As Code with Salt Stack, Vagrant, Ansible, Puppet",
      "Technical contributor to open-source projects with publicly available implementations: Nuxt.js documentation, Alpine Linux package maintenance, MediaWiki compatibility tables, and Mozilla Firefox Accounts",
      "Developed and documented reusable technical solutions like type-safe bitmask operations in JavaScript, Salt Stack infrastructure states, and automated MediaWiki content conversion tools",
      "Architected documented hosting infrastructure for high-visibility sites including W3C’s WebPlatform Docs project https://webplatform.github.io/ and The World Wide Web’s 25th anniversary site https://www.w3.org/webat25/"
    ]
  },
  "work": [
    {
      "name": "Self-Employed",
      "company": "Self-Employed",
      "position": "Open Source Web Components Specialist (part time)",
      "location": "Montréal, QC, Canada",
      "remote": false,
      "contract": false,
      "startDate": "2024-09-01T00:00:00.000Z",
      "url": "https://renoirb.com/resume/rework.html",
      "website": "https://renoirb.com/resume/rework.html",
      "summary": "Developing framework-agnostic \"headless UI\" web component libraries using native browser capabilities and Web Standards. Implementing modern serverless architectures with Deno and CloudFlare Workers for edge computing. Creating a modular system that implements W3C Web Components Community Group \"Context\" community protocol to enable seamless integration across any JavaScript framework environment.\n",
      "highlights": [
        "Creating and documenting implementations of the W3C Web Components Community Group's Context API protocol, enabling sophisticated component communication without direct dependencies",
        "Architected renoirb-esm-modules (https://github.com/renoirb/renoirb-esm-modules/): A collection of unstyled, framework-agnostic Web Components that consume structured data to generate consistent, accessible experiences",
        "Developed a data-driven document generation system where a single YAML source produces both PDF documents and interactive web experiences —or this document—, demonstrating clear separation of content and presentation.",
        "Created Archivator (npm: archivator): A system for content preservation enabling historical comparison, indexing, and offline search capabilities (https://renoirb.github.io/archivator-demo/)",
        "Created tuples-boolean-bitmasker (npm: tuples-boolean-bitmasker): A library that converts object boolean properties into bitmasks for efficient, type-safe testing of complex conditional states in JavaScript applications"
      ],
      "contributions": [
        {
          "name": "@renoirb/app-layout",
          "url": "https://github.com/renoirb/renoirb-esm-modules/tree/main/packages/app-layout-element",
          "description": "Application shell component providing consistent document structure and navigation"
        },
        {
          "name": "@renoirb/context-api",
          "url": "https://github.com/renoirb/renoirb-esm-modules/tree/main/packages/context-api",
          "description": "Implementation of W3C Context API protocol for cross-component communication"
        },
        {
          "name": "archivator",
          "url": "https://www.npmjs.com/package/archivator",
          "description": "Content preservation system with indexing and search capabilities"
        },
        {
          "name": "tuples-boolean-bitmasker",
          "url": "https://www.npmjs.com/package/tuples-boolean-bitmasker",
          "description": "Type-safe bitmask operations for efficient state management"
        }
      ]
    },
    {
      "name": "Full-time parenting",
      "company": "Full-time parenting",
      "position": "Father",
      "location": "Montréal, QC, Canada",
      "remote": false,
      "contract": false,
      "startDate": "2022-06-01T00:00:00.000Z",
      "endDate": "2024-09-01T00:00:00.000Z",
      "summary": "Full-time caregiver for children."
    },
    {
      "name": "GoTo Inc.",
      "company": "GoTo Inc.",
      "position": "Staff Software Developer",
      "location": "Montréal, QC, Canada",
      "remote": true,
      "contract": false,
      "startDate": "2021-01-11",
      "endDate": "2022-05-01",
      "url": "https://www.GoTo.com/",
      "website": "https://www.GoTo.com/",
      "description": "Powered by category-defining products like GoTo Connect, GoTo Meeting, GoTo Webinar, LastPass, and more. With tens of millions of active users, more than 3,500 global employees, over $1.3 billion in annual revenue and approximately 2 million customers in over 190 countries.",
      "summary": "Contributed to an established micro-frontend architecture based on Web Components and lit-element, helping teams leverage its framework-agnostic foundations. Provided technical guidance on native Web Platform capabilities, demonstrating how to maintain accessibility and performance while integrating with React, and other frameworks. Created documentation and working examples showing how to effectively use the existing component system across different technology stacks.\n",
      "highlights": [
        "Contributed architectural improvements to the Application Shell infrastructure, enabling seamless integration of diverse product experiences",
        "Helped development teams understand and effectively utilize the Web Components architecture, ensuring consistent implementation across different framework contexts",
        "Built and documented integration patterns demonstrating how to properly implement new features within the established component system",
        "Developed examples and test suites validating accessibility and internationalization implementation within the architecture"
      ],
      "contributions": [
        {
          "name": "lit-labs/context Web Components “Context API” Protocol",
          "url": "https://github.com/lit/lit/pull/2012"
        }
      ],
      "technologies": [
        "Accessibility",
        "CodeceptJS",
        "ECMAScript",
        "HTML/CSS",
        "Jest",
        "lit-html",
        "microsoft/fast",
        "Node.js",
        "Playwright",
        "TypeScript",
        "WCAG"
      ]
    },
    {
      "name": "RBC Royal Bank of Canada Inc.",
      "company": "RBC Royal Bank of Canada Inc.",
      "position": "Senior Full Stack Developer",
      "location": "Montréal, QC, Canada",
      "remote": true,
      "contract": false,
      "startDate": "2020-03-01",
      "endDate": "2020-12-18",
      "url": "https://www.rbcroyalbank.com",
      "website": "https://www.rbcroyalbank.com",
      "description": "Royal Bank of Canada is Canada’s largest bank, and one of the largest banks in the world, based on market capitalization. We have over 80,000 full and part-time employees who serve more than 16 million personal, business, public sector and institutional clients through offices in Canada, the U.S. and 37 other countries.",
      "summary": "At RBC, I served as a Senior Full-Stack Developer, leading the implementation of scalable modules for the RBC Omni platform (Online Business Banking). I collaborated closely with cross-functional teams to deliver solutions aligned with business objectives. Noteworthy achievements include streamlining developer onboarding processes and enhancing legacy systems for improved performance and reliability.",
      "highlights": [
        "Make implementation proposals driven by the requirements and agenda set by product owners and business analysts.",
        "Build scalable and reusable modules by collaborating with other production teams, including the design system/platform team.",
        "Rewritten new developer onboarding documentation and completely automated how to properly setup the current password to be used properly through Git and other scripting, including the Bank’s authoritative self-signed certificate that would cause many headaches."
      ],
      "highlights.more": [
        "Re-Implement and improve link manager to legacy application system. So that the HTML templates contains a “Link Id”, and how it dynamically creates an hidden form and properly redirects to legacy HTML views.",
        "Revise and make migration strategies for my Squad’s Angular monorepo to use Jest and ESLint 7 along with Prettier with automated LintStaged commit hooks.",
        "Implement advanced Angular data-driven patterns to guide my colleagues away from filling HTML templates and instead use classes to provide data. Including how to rewrite forms using FormGroups instead of template",
        "Make module stubs for the Backend chapter to write Express.js middleware in isolation instead of from a monolith",
        "Written extensive onboarding documentation taking into account how to properly and automatically adjust developer tools at every password change. Avoiding popular “Ignore this error” and rather use corporate signed TLS certificate right"
      ],
      "technologies": [
        "Angular",
        "HTML/CSS",
        "JavaScript",
        "Jest",
        "Node.js",
        "TypeScript",
        "WCAG"
      ]
    },
    {
      "name": "CGI Inc.",
      "company": "CGI Inc.",
      "position": "Senior Technical Consultant (Lead Frontend)",
      "location": "Montréal, QC, Canada",
      "remote": false,
      "contract": false,
      "hidden": false,
      "startDate": "2017-05-01",
      "endDate": "2020-02-28",
      "url": "https://www.cgi.com/en",
      "website": "https://www.cgi.com/en",
      "description": "CGI Inc. (NYSE GIB), provides information technology (IT) and business process services in Canada, Europe, the United States, and the Asia Pacific. Its services include the management of IT and business outsourcing, systems integration and consulting, and software solutions selling activities.",
      "summary": "As a Senior Technical Consultant, I led the development of Unify360, a Multi-Cloud Management Platform. Leveraging microservices architecture and atomic design principles, I orchestrated the design and implementation of a robust frontend solution deployed across multiple regions. My role involved extensive experimentation with modern technologies and mentoring team members to foster a culture of innovation.",
      "highlights": [
        "Experiment and document Frontend software development platform technological choices",
        "Lead the team that work and coach for writing code with tests, making self-contained and re-usable packages"
      ],
      "highlights.more": [
        "Implement prototype for a modern Unify360 Frontend 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;",
        "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;",
        "Design and implement an HTML partial Microservice with PHP 7.2, Slim framework, Mustache PECL extension for a new section of Unify360 portal;"
      ],
      "technologies": [
        "Alpine Linux",
        "AVA",
        "Docker",
        "Docker Swarm",
        "GitLab",
        "HTML/CSS",
        "JavaScript",
        "Jest",
        "Koa.js",
        "Node.js",
        "Nuxt.js",
        "Perl",
        "PHP 7.2",
        "RushJS",
        "Slim Framework",
        "Sonatype Nexus",
        "TypeScript",
        "Vagrant",
        "Vue.js"
      ],
      "contributions": [
        {
          "name": "egoist/bili",
          "url": "https://github.com/egoist/bili/commits/master?author=renoirb"
        },
        {
          "name": "nuxt.js/docs",
          "url": "https://github.com/nuxt/docs/issues?utf8=%E2%9C%93&q=author%3Arenoirb"
        },
        {
          "name": "alpinelinux/aports",
          "url": "https://github.com/alpinelinux/aports/pulls?utf8=%E2%9C%93&q=author%3Arenoirb"
        },
        {
          "name": "clarkdo/hare",
          "url": "https://github.com/clarkdo/hare/issues?q=author%3Arenoirb"
        },
        {
          "name": "composer/composer",
          "url": "https://github.com/composer/composer/issues?utf8=%E2%9C%93&q=author%3Arenoirb"
        },
        {
          "name": "graph-gophers/graphql-go",
          "url": "https://github.com/graph-gophers/graphql-go/issues/151"
        },
        {
          "name": "vue-i18n",
          "url": "https://github.com/renoirb/issue-506-vue-i18n"
        }
      ]
    },
    {
      "name": "AlayaCare",
      "company": "AlayaCare",
      "position": "Senior Software Developer",
      "remote": false,
      "contract": true,
      "url": "https://www.alayacare.com",
      "website": "https://www.alayacare.com",
      "hidden": false,
      "startDate": "2016-11-07",
      "endDate": "2017-02-17",
      "summary": "During my time at AlayaCare, I focused on infrastructure automation and developer experience improvements. I implemented comprehensive Docker Compose configurations that standardized development environments, reducing new developer onboarding time from days to hours. I also developed automated testing infrastructure using headless browsers in Docker containers with Ansible configuration management, improving their quality assurance processes.",
      "highlights": [
        "Designed and implemented a complete workspace automation system that reduced developer onboarding time from multiple days to approximately one hour through consistent Docker Compose configurations.",
        "Created a headless browser testing infrastructure using Docker and Ansible playbooks for automated end-to-end testing, allowing to have tailored testing environments run locally and within infrastructure with the same runtime configuration as production",
        "Prototyped an HTML/CSS solution for complex medical form generation that converted structured API data into print-ready documents, using DOM visibility calculations to automatically distribute content between form fields and annexes"
      ],
      "technologies": [
        "GNU Make",
        "Ansible",
        "Docker Compose",
        "Docker",
        "Headless Browsers",
        "Automated Testing",
        "CI/CD"
      ]
    },
    {
      "name": "Colloquial/Betastream via 6973051 Canada Inc.",
      "client": "Colloquial / Betastream",
      "company": "Colloquial / Betastream",
      "position": "DevOps Automation Specialist",
      "remote": true,
      "contract": true,
      "hidden": false,
      "startDate": "2016-01-01",
      "endDate": "2016-06-17",
      "description": "The J. Walter Thompson Company (JWT) partnered with Group SJR to launch Colloquial, a content marketing unit based in New York. Betastream provided technical implementation services for Colloquial's client projects, serving major brands including Johnson & Johnson, Exxon Mobil, FannieMae, and Walmart.",
      "summary": "Designed and implemented a comprehensive infrastructure architecture to replace manual AWS deployments, establishing a vendor-neutral cloud orchestration system with standardized deployment patterns across environments. Created a security-focused approach with clear separation between public-facing and administrative interfaces, mandatory TLS encryption, and consistent naming conventions across all system components.",
      "highlights": [
        "Architected complete cloud orchestration solution using SaltStack that worked consistently across AWS, Google Cloud, and Azure, with standardized naming conventions and deployment paths",
        "Established comprehensive security model separating public origins from admin interfaces with distinct hostnames, IP restrictions, and client certificate authentication",
        "Implemented atomic deployment system using timestamped archives and symbolic links, enabling zero-downtime deployments and instant rollbacks across all application servers",
        "Integrated Fastly CDN with custom Varnish Configuration Language (VCL) testing environment and consistent TLS implementation across all communication layers"
      ],
      "highlights.more": [
        "Created systematic naming conventions for all system components (hostnames, database names, certificate paths, archive storage) ensuring predictable infrastructure management",
        "Developed self-healing capabilities for critical services with automatic monitoring and recovery",
        "Established standardized methods for database management including automated anonymization for development environments and consistent backup procedures",
        "Designed developer workspace automation allowing identical environments across all team members"
      ],
      "technologies": [
        "AWS",
        "Azure",
        "CloudFlare",
        "EC2",
        "Fastly",
        "GCP",
        "Jenkins",
        "Monit",
        "Python",
        "RDS",
        "SaltStack",
        "SysDig",
        "Vagrant",
        "Varnish",
        "WordPress"
      ]
    },
    {
      "name": "CAE via 6973051 Canada Inc.",
      "client": "CAE",
      "company": "CAE",
      "position": "DevOps Automation Specialist",
      "location": "Montréal, QC, Canada",
      "remote": false,
      "contract": true,
      "url": "https://www.cae.com/",
      "website": "https://www.cae.com/",
      "hidden": false,
      "startDate": "2016-03-01",
      "endDate": "2016-06-01",
      "description": "CAE is a global leader in training for the civil aviation, defence and security, and healthcare markets. Their systems operate in highly secure, air-gapped environments with strict compliance requirements.",
      "summary": "Deliberately brought in as a \"disruptor\" to introduce modern Infrastructure as Code (IaC) practices to CAE's established environment. While another department used Chef (Ruby-based), I implemented accessible solutions using Bash scripts - a language the existing team was already comfortable with. I developed deployment and monitoring solutions for air-gapped networks with self-managed TLS certificate authorities, establishing patterns for securely automating systems that were previously manually configured, while meeting strict aerospace industry security requirements.",
      "highlights": [
        "Collaboratively introduced Infrastructure as Code (IaC) principles through accessible technologies (Bash), meeting the team where they were comfortable rather than imposing unfamiliar Ruby-based solutions",
        "Created automation scripts that configured developer tools (Git, Python, NPM, cURL) to explicitly trust internal certificate chains, solving a common pain point in secured environments",
        "Developed deployment techniques for \"playbooks\" packages that could function within airtight network boundaries while maintaining consistency across environments",
        "Evaluated and implemented monitoring solutions including Prometheus, Mozilla Heka, Monit, and Grafana, adapting them to function with corporate TLS certificates"
      ],
      "highlights.more": [
        "Established patterns for downloading dependencies to predictable locations for approved transfer across security boundaries",
        "Demonstrated reproducible environment creation using HashiCorp Vagrant with VirtualBox private networking",
        "Created documentation for TLS certificate handling that became reference material for other secured environments"
      ],
      "technologies": [
        "Beats",
        "ElasticSearch Kibana",
        "Ganglia",
        "Grafana",
        "Heka",
        "InfluxDB Telegraf",
        "LibreSSL",
        "LogStash",
        "Monit",
        "Mozilla Heka",
        "Prometheus",
        "Bash",
        "Vagrant"
      ]
    },
    {
      "name": "Mozilla via 6973051 Canada Inc. (remote)",
      "client": "Mozilla",
      "company": "Mozilla",
      "position": "Subject Matter Expert Compatibility Data Project",
      "remote": true,
      "contract": true,
      "url": "https://developer.mozilla.org",
      "website": "https://developer.mozilla.org",
      "hidden": false,
      "startDate": "2015-08-01",
      "endDate": "2016-01-01",
      "description": "Mozilla is a global, nonprofit organization dedicated to making the Web better. We emphasize principle over profit and believe that the Web is a shared public resource to be cared for, not a commodity to be sold. We work with a worldwide community to create open source products like Mozilla Firefox, and to innovate for the benefit of the individual and the betterment of the Web.",
      "summary": "Contracted as a Product Owner for the Browser Compatibility Data project based on my previous experience with W3C's WebPlatform project. My role primarily involved participating in discussions regarding identifier systems for browser compatibility data, attending meetings, and preparing documentation and slide decks to communicate technical concepts to stakeholders.",
      "highlights": [
        "Communicated with various stakeholders about the requirements and features for the compatibility data system",
        "Participated in discussions about identifier schema designs for browser compatibility data",
        "Created presentation materials and documentation explaining technical concepts",
        "Attended meetings to represent the project's technical needs"
      ],
      "technologies": [
        "HTML/CSS",
        "Documentation",
        "Technical Communication"
      ]
    },
    {
      "name": "W3C/MIT via 6973051 Canada Inc. (remote)",
      "client": "W3C/MIT",
      "company": "W3C/MIT",
      "position": "Developer Operations Engineer",
      "remote": true,
      "contract": true,
      "url": "https://www.w3.org/staff/alumni/#renoir-boulanger",
      "website": "https://www.w3.org/staff/alumni/#renoir-boulanger",
      "hidden": false,
      "startDate": "2013-08-01",
      "endDate": "2015-08-01",
      "description": "The World Wide Web Consortium (W3C) is an international community where Member organizations, a full-time staff, and the public work together to develop Web standards. Led by Web inventor and Director Tim Berners-Lee and CEO Jeffrey Jaffe, W3C’s mission is to lead the Web to its full potential.",
      "summary": "At W3C/MIT, my role was to maintain stability, improve features, strengthen the infrastructure of the WebPlatform Docs project site, and act as a technical liaison with Open-source communities. The project lost its funding in August 2015 and 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.",
      "highlights": [
        "Convert and preserve many hundred thousand edits, and keep trace of the content edition contributors and date of the change from MediaWiki into Static site generators and Git (2015)",
        "Improved Infrastructure deployment code so that any service could be rebuilt systematically (2015)",
        "Designed and Implemented Single Sign-On solution using OAuth2 (2014)"
      ],
      "highlights.more": [
        "Implemented a self-healing monitoring (2015)",
        "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)"
      ],
      "contributions": [
        {
          "name": "webplatform/ops",
          "url": "https://github.com/webplatform/ops"
        },
        {
          "name": "renoirb/salt-basesystem",
          "url": "https://github.com/renoirb/salt-basesystem"
        },
        {
          "name": "webplatform/salt-states",
          "url": "https://github.com/webplatform/salt-states"
        },
        {
          "name": "renoirb/mediawiki-conversion",
          "url": "https://github.com/renoirb/mediawiki-conversion"
        },
        {
          "name": "webplatform/content-converter",
          "url": "https://github.com/webplatform/content-converter"
        },
        {
          "name": "webplatform.github.io/docs/WPD/Projects/SSO",
          "url": "https://webplatform.github.io/docs/WPD/Projects/SSO/"
        },
        {
          "name": "webplatform.github.io/docs/WPD/Projects/CompaTables",
          "url": "https://webplatform.github.io/docs/WPD/Projects/CompaTables/"
        }
      ],
      "technologies": [
        "Backbone.js",
        "Bower",
        "Discourse",
        "DNS Bind",
        "Docker",
        "ElasticSearch",
        "Express.js",
        "Fastly",
        "Gerrit",
        "Gulp",
        "HTML/CSS",
        "Hypothes.is",
        "JavaScript",
        "MediaWiki",
        "Memcached",
        "Monit",
        "MySQL",
        "NGINX",
        "Node.js",
        "OpenStack Nova, Cinder, Horizon, Swift",
        "PHP",
        "Python",
        "Redis",
        "Salt Stack",
        "SASS",
        "Vagrant",
        "WordPress"
      ]
    },
    {
      "name": "Ericsson via 6973051 Canada Inc.",
      "client": "Ericsson",
      "company": "Ericsson",
      "position": "Web Developer",
      "location": "Montréal, QC, Canada",
      "remote": false,
      "contract": true,
      "url": "https://www.ericsson.com/en",
      "website": "https://www.ericsson.com/en",
      "hidden": false,
      "startDate": "2012-02-01",
      "endDate": "2013-06-01",
      "description": "",
      "summary": "As a Web Developer at Ericsson, I led the development of a web-based virtualization provisioning portal, enabling users to initiate virtual machines across geographically dispersed data centers. My role involved architecting and implementing innovative solutions using cutting-edge technologies, driving improvements in scalability and performance.",
      "highlights": [
        "Architect, build and lead a Web-based “Virtualization provisioning” portal."
      ],
      "technologies": [
        "Git",
        "HTML/CSS",
        "JavaScript",
        "jQuery",
        "LESSCSS",
        "MySQL",
        "OpenStack Grizzly",
        "PHP",
        "Puppet",
        "Symfony 2",
        "Twitter Bootstrap",
        "Vagrant",
        "VMWare ESXi"
      ]
    },
    {
      "name": "Evocatio Solutions technologiques Inc.",
      "company": "Evocatio Solutions technologiques Inc.",
      "position": "Senior Web Developer, Co-Founder",
      "location": "Montréal, QC, Canada",
      "remote": false,
      "contract": false,
      "hidden": false,
      "startDate": "2010-01-01",
      "endDate": "2012-03-01",
      "description": "Co-founded Evocatio Solutions technologies Inc. with two old friends. Our partnership lasted 2 years and at the peak we had 10 employees on our payroll, some of our work won prizes in local industry competitions and other projects got deployed in cities around the globe. The company worked on projects namely for the French-Canadian Artist Union (UDA), Astral Media, Equisoft, Quebec’s professional farmers’ union (UPA), Rolls-Royce and Rogers Media.",
      "summary": "As Senior Web Developer and Co-Founder of Evocatio Solutions, I led web development projects for prestigious clients, including UDA and Astral Media. My responsibilities encompassed architecting frontend solutions, collaborating with graphic designers, and optimizing web applications for performance and usability. Notable achievements include spearheading major website rewrites and implementing advanced e-mail delivery systems.",
      "highlights": [
        "Lead and architect all Web Development work related to the FrontEnd layer of the stack.",
        "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.",
        "Take Adobe Photoshop and PDFs document and create HTML/CSS Static style guides (minimal JavaScript, no back-end) to create CSS pattern libraries."
      ],
      "highlights.more": [
        "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)"
      ],
      "technologies": [
        "Apache Solr",
        "Bower",
        "Compass",
        "EJS",
        "Git",
        "Grunt",
        "HTML/CSS",
        "JavaScript",
        "jQuery",
        "LESSCSS",
        "MySQL",
        "Node.js",
        "PHP",
        "SASS",
        "Subversion",
        "symfony 1.x",
        "Symfony 2",
        "Tiki Wiki CMS/Groupware",
        "Twitter Bootstrap",
        "Vagrant",
        "VMWare ESXi",
        "WordPress",
        "Yeoman"
      ]
    },
    {
      "name": "Groupe Informatique TechSolCom Inc.",
      "company": "Groupe Informatique TechSolCom Inc.",
      "position": "Web Developer",
      "location": "Montréal, QC, Canada",
      "remote": false,
      "contract": false,
      "url": "http://techsolcom.ca",
      "website": "http://techsolcom.ca",
      "hidden": false,
      "startDate": "2006-10-01",
      "endDate": "2009-08-01",
      "description": "Groupe Informatique TechSolCom Inc. had been merged into R3D Conseil Inc. R3D Conseil Inc is located in Montréal, QC, Canada and is part of the Consulting Services Industry. R3D Conseil Inc has 320 total employees across all of its locations and generates 62.21 million in sales (USD). There are 6 companies in the R3D Conseil Inc corporate family.",
      "summary": "During my tenure at Groupe Informatique TechSolCom Inc., I played a pivotal role in maintaining the company's web presence and contributing to internal R&D projects. I led the front-end development aspect of a proprietary CI server web application and participated in building inventory management systems. My contributions enhanced operational efficiency and scalability across various projects.",
      "highlights": [
        "Maintain the company corporate image on the web, maintain their Web site, and participate in projects run internally as a Web developer on R&D projects.",
        "Participated in maintaining company internal network, testing DataPower blade, Virtualized servers on bare metal, and web hosting infrastructure.",
        "Participated in building a proprietary CI server Web Application (“Beebox”) for IBM WebSphere that was intended to be a competitor to Jenkins and Cruise Control of the time. (2007-2009)",
        "Contributed to Inventory management application (“Namminik”) as an internal R&D experiments to make a Web Application also have its native iOS client. (2009)"
      ],
      "highlights.more": [
        "Contributed to many projects as Frontend Developer",
        "Built a monitoring service using the SNMP protocol, centralized syslog server, and configured a Nagios monitoring service (2009)"
      ],
      "technologies": [
        "Ant",
        "Apache Tomcat",
        "Bind",
        "CVS",
        "Debian GNU/Linux",
        "HTML/CSS",
        "IBM WebSphere DataPower",
        "JavaScript",
        "jQuery",
        "Maven2",
        "MooTools",
        "Nagios",
        "RedHat Enterprise Linux",
        "SNMP",
        "Subversion",
        "WCAG",
        "XML/XSL/XSLT",
        "YUI 2"
      ]
    },
    {
      "name": "Câble Axion Digitel",
      "company": "Câble Axion Digitel",
      "position": "Web Developer",
      "location": "Magog, QC, Canada",
      "remote": false,
      "contract": false,
      "url": "http://www.axion.ca/acc/accueil.php?lang=fr",
      "website": "http://www.axion.ca/acc/accueil.php?lang=fr",
      "hidden": true,
      "startDate": "2005-10-01",
      "endDate": "2006-11-01",
      "description": "Câble Axion is a cable service provider. Their network coverage goes from Montreal South Shore, follows the US borders, and go up until the “Beauce” area in the province of Quebec. The towns in between the Eastern- Townships and Québec City.",
      "summary": "My role was to rewrite the corporate website, maintain internal applications and answer to level-2 support calls from subscribers.",
      "highlights": [],
      "technologies": [
        "PHP",
        "HTML/CSS",
        "Microsoft Access",
        "MySQL",
        "Sun OS (Solaris)",
        "CentOS GNU/Linux",
        "Subversion"
      ]
    },
    {
      "name": "INEXIS Solution web Inc.",
      "company": "INEXIS Solution web Inc.",
      "location": "Sherbrooke, QC, Canada",
      "remote": false,
      "contract": false,
      "position": "Web Developer, Owner",
      "hidden": true,
      "startDate": "2002-02-01",
      "endDate": "2006-11-01",
      "description": "",
      "summary": "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 included managing own private Web hosting infrastructure and building HTML/CSS pages based on PDF files provided by graphic designers, creating e-mail templates.",
      "highlights": [],
      "technologies": [
        "PHP",
        "HTML/CSS",
        "MySQL",
        "Qmail",
        "Red-Hat GNU/Linux",
        "CentOS GNU/Linux",
        "Subversion"
      ]
    }
  ],
  "education": [
    {
      "institution": "Université de Sherbrooke, CeFTI",
      "area": "Software Engineering",
      "studyType": "2nd Cycle Program Diploma",
      "startDate": "2021-01-01",
      "endDate": "2024-06-24",
      "courses": [
        "INF731 - Object-Oriented Programming in C#",
        "INF743 - Software Architecture",
        "INF747 - Designing and managing Enterprise Information Systems"
      ]
    },
    {
      "institution": "Udemy",
      "area": "Web Development",
      "studyType": "Online Training",
      "startDate": "2019-07-01",
      "courses": [
        "Nuxt.js - Vue.js on Steroids",
        "Understanding TypeScript"
      ]
    },
    {
      "institution": "EggHead.io",
      "area": "Web Development",
      "studyType": "Online Training",
      "startDate": "2019-07-01",
      "url": "https://egghead.io",
      "courses": [
        "Use Types Effectively in TypeScript",
        "Up and Running with TypeScript",
        "Get Started with ElasticSearch",
        "Build a Server Rendered Vue.js App with Nuxt and Vuex"
      ]
    },
    {
      "institution": "VueMastery",
      "area": "Web Development",
      "studyType": "Online Training",
      "startDate": "2019-05-01",
      "url": "https://www.vuemastery.com/courses/",
      "courses": [
        "Real World Vue.js",
        "Mastering Vuex",
        "Next-Level Vue",
        "Scaling Vue with Nuxt.js",
        "Advanced Components"
      ]
    },
    {
      "institution": "Pearson Vue",
      "area": "Software development",
      "studyType": "Certification",
      "startDate": "2013-07-01",
      "endDate": "2013-07-01",
      "url": "https://www.zend.com/en/yellow-pages/ZEND011184",
      "courses": [
        "Zend Certified Engineer PHP 5.3"
      ]
    },
    {
      "institution": "McGill University",
      "area": "Continuing Studies",
      "studyType": "Course",
      "startDate": "2012-09-01",
      "endDate": "2013-12-01",
      "courses": [
        "CEEN-421-761 - English in Written Communication Contexts",
        "CMSC-000-781 - Foundations of Mathematics",
        "CMSC-101-771 - College Algebra and Functions"
      ]
    },
    {
      "institution": "University of Montreal",
      "area": "Continuing Studies",
      "studyType": "Course",
      "startDate": "2008-02-01",
      "endDate": "2008-07-01",
      "courses": [
        "Web Accessibility (WCAG 1) at the Nazareth & Louis Braille institute"
      ]
    },
    {
      "institution": "IBM",
      "area": "Software development",
      "studyType": "Certification",
      "startDate": "2007-07-01",
      "endDate": "2007-07-01",
      "courses": [
        "IBM WebSphere DataPower SOA Appliance"
      ]
    },
    {
      "institution": "Canadian Armed Forces",
      "area": "Army Communication and Information Systems Specialist",
      "studyType": "Millitary Career",
      "startDate": "1997-07-01",
      "endDate": "2000-01-01",
      "courses": [
        "Basic training at Royal Military College Saint-Jean",
        "Private (Basic), assigned to Sherbrooke 714th Communication Squadron",
        "Wired and wireless communication and information systems (Introductory training)",
        "Winter warfare training"
      ]
    }
  ],
  "awards": [
    {
      "title": "Grenier D’Or — Agence RED/Evocatio",
      "date": "2010-01-01",
      "awarder": "Grenier Aux Nouvelles",
      "summary": "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": [
    {
      "name": "Santachè, A. “Mobile development using web technologies focusing on games”",
      "publisher": "ACM",
      "locale": "en-CA",
      "type": "Paper",
      "releaseDate": "2013-11-01",
      "url": "https://doi.org/10.1145/2526188.2528541",
      "website": "https://doi.org/10.1145/2526188.2528541",
      "isbn": "978-1-4503-2559-2",
      "authors": [
        "Santachè, A.",
        "Boulanger, R.",
        "Viana, G.",
        "Panaggio, R.",
        "Melo, B.",
        "Aboud, H."
      ],
      "summary": "Participated in chapters related to “Markup architecture”, “Events” and “Web Storage”"
    },
    {
      "name": "Kumar, J. “Apache Solr PHP Integration”",
      "publisher": "Pakt Publishing",
      "locale": "en-CA",
      "type": "Book Review",
      "releaseDate": "2013-10-01",
      "url": "https://www.packtpub.com/product/apache-solr-php-integration/9781782164920",
      "website": "https://www.packtpub.com/product/apache-solr-php-integration/9781782164920",
      "isbn": "9781782164920",
      "summary": "Book review"
    },
    {
      "name": "« Techniques pour déployer WordPress de façon consistante et les rendre résilients »",
      "publisher": "WordCamp Montréal 2016",
      "locale": "fr-CA",
      "type": "Talk",
      "releaseDate": "2016-07-01",
      "url": "http://renoirb.com/talks/2016-Techniques-pour-deployer-WordPress-de-facon-consistante-et-le-rendre-resilient/",
      "website": "http://renoirb.com/talks/2016-Techniques-pour-deployer-WordPress-de-facon-consistante-et-le-rendre-resilient/",
      "video": "https://wordpress.tv/2016/12/09/renoir-boulanger-techniques-pour-deployer-wordpress-de-facon-consistante-et-les-rendre-resilients/",
      "summary": "Talk given at WordCamp Montréal 2016"
    },
    {
      "name": "“Packaging for easier redeployment”",
      "publisher": "DevOps Montréal",
      "locale": "en-CA",
      "type": "Talk",
      "releaseDate": "2015-10-01",
      "url": "http://renoirb.com/talks/Achieve-consistent-deployments-leveraging-packaging/",
      "website": "http://renoirb.com/talks/Achieve-consistent-deployments-leveraging-packaging/",
      "summary": "Presented at two events, DevOps Montréal, PHP Québec."
    },
    {
      "name": "« Comment évaluer le niveau de qualité d’un site web selon les techniques d’intégration web d’actualité. »",
      "publisher": "Web à Québec 2013",
      "locale": "fr-CA",
      "type": "Talk",
      "releaseDate": "2013-10-01",
      "url": "http://2013.webaquebec.org/#/horaire/vendredi/evaluer-la-qualite-dun-site-selon-les-techniques-dintegration-64.html",
      "website": "http://2013.webaquebec.org/#/horaire/vendredi/evaluer-la-qualite-dun-site-selon-les-techniques-dintegration-64.html",
      "summary": "Presented at two conferences; « Montreal WebIn », and « Web à Québec » (WAQ)\n"
    }
  ],
  "skills": [
    {
      "name": "Programming",
      "keywords": [
        "PHP",
        "C#",
        "VCL",
        "Bash",
        "Python"
      ]
    },
    {
      "name": "Web Development Languages",
      "level": "Master",
      "keywords": [
        "TypeScript",
        "JavaScript",
        "ECMAScript",
        "HTML/CSS"
      ]
    },
    {
      "name": "PHP Frameworks",
      "keywords": [
        "Symfony",
        "Slim",
        "Composer/Packagist"
      ]
    },
    {
      "name": "Frontend Frameworks",
      "keywords": [
        "Nuxt.js",
        "Vue.js",
        "Koa.js",
        "Element UI",
        "Backbone.js",
        "Marionette.js",
        "Angular"
      ]
    },
    {
      "name": "Web Development Libraries",
      "level": "Master",
      "keywords": [
        "Rollup",
        "Bili",
        "Rush.js"
      ]
    },
    {
      "name": "Frontend Testing Frameworks",
      "keywords": [
        "Jest",
        "CodeceptJS",
        "Playwright",
        "AVA",
        "Mocha",
        "Jasmine"
      ]
    },
    {
      "name": "Web Platform",
      "level": "Master",
      "keywords": [
        "Accessibility",
        "Adaptative",
        "Bundling",
        "Deployment",
        "HTML/CSS Architecture",
        "Polyfills",
        "Promises",
        "Responsive",
        "Transpilation"
      ]
    },
    {
      "name": "Web Operations",
      "level": "Master",
      "keywords": [
        "Configuration Management",
        "Docker Swarm",
        "Dockerflow",
        "ElasticSearch",
        "Node.js",
        "Prometheus",
        "Redis",
        "Salt Stack",
        "Self-Healing event handlers",
        "Service Monitoring",
        "Varnish"
      ]
    }
  ],
  "languages": [
    {
      "language": "Français",
      "fluency": "Native speaker"
    },
    {
      "language": "English",
      "fluency": "Second language"
    }
  ],
  "interests": [
    {
      "name": "Web Platform",
      "keywords": [
        "Performance",
        "Protocols",
        "Web Standards"
      ]
    },
    {
      "name": "Systems Engineering",
      "keywords": [
        "Tracing",
        "Distributed computing",
        "Load-Balancing",
        "Fault tolerance"
      ]
    }
  ]
}