Mordu.ca

Technological migration from .NET/REST to NodeJS/GraphQL

Project date

-

Role

Software Engineer

Client

CBC - Radio-Canada

At Radio-Canada, I spearheaded a transformative project aimed at modernizing their technological infrastructure and attracting top talent. As part of this initiative, I was entrusted with the responsibility of migrating Radio-Canada's REST APIs from C# to GraphQL APIs written in TypeScript.

During the course of this mandate, my primary focus was on supporting the Mordu.ca product team. I not only assisted them in successfully executing the migration but also played a pivotal role in the development of new functionalities by leveraging cutting-edge technologies.

Collaborating closely with various multidisciplinary and cross-functional product teams, I actively sought out solutions to common challenges encountered during the migration process. In order to streamline the development workflow, I created a powerful GraphQL query interpolation tool. This innovative tool facilitated the writing and maintenance of recursive queries, significantly boosting efficiency and reducing development time. Additionally, I devised a union type conflict detection tool, which proved instrumental in identifying and preventing conflicts within the domain, thereby ensuring a seamless transition to the new APIs.

Throughout the project, I provided unwavering support to CBC developers, regardless of their level of experience. I conducted comprehensive training sessions, equipping both junior and senior developers with a deep understanding of TypeScript, functional programming principles, and industry best practices. To further facilitate their growth, I granted them access to personalized documentation and actively participated in code reviews, offering valuable insights and guidance.

By spearheading this migration project, I played a pivotal role in modernizing Radio-Canada's technological ecosystem. My contributions not only facilitated the adoption of GraphQL APIs but also empowered developers to embrace new technologies and elevate their skillsets, ultimately driving Radio-Canada's ability to attract and retain top talents.

Skills applied

Languages

TypeScript, JavaScript, C#

UI

React

State

Redux

API

GraphQL, REST

Style

Styled Components

Framework

Express

Bundler

Webpack

Cloud

Microsoft Azure

Database

MongoDB

Container

Docker

Test

Jest, Playwright

Documentation

Postman, TestRail