Vincent Cote-Roy, Software Developer in Montreal, QC, Canada
Vincent Cote-Roy

Software Developer in Montreal, QC, Canada

Member since December 20, 2014
Vincent loves coding, building cool stuff, and solving hard problems. He has more than 15 years of software development experience working with a variety of platforms. Recently, he has focused on the development of robust, scalable back ends in Node.js, and Python. He has also worked on the front end, building many web and iOS apps, as well as done his share of low-level and systems development in C and C++.
Vincent is now available for hire

Portfolio

Experience

  • JavaScript, 15 years
  • Python, 8 years
  • Node.js, 7 years
  • PostgreSQL, 7 years
  • MongoDB, 5 years
  • Amazon Web Services (AWS), 5 years
  • C++, 3 years
  • AWS Lambda, 1 year

Location

Montreal, QC, Canada

Availability

Part-time

Preferred Environment

MacOS, Linux, Visual Studio Code, Vim

The most amazing...

...thing I've done is rebuild Breather's availability search engine, improving latency 10x in the process to sub 20ms/request.

Employment

  • Senior Back-end Developer

    2019 - 2019
    DOMI Earth (via Toptal)
    • Built an IoT data processing pipeline, collecting incoming data from AWS IoT into SQS, transforming it with a series of Lambda tasks, and storing the results to DynamoDB. The lambdas were written in TypeScript (Node.js).
    Technologies: Node.js, TypeScript, MQTT, AWS IoT, AWS SQS, AWS DynamoDB, AWS Lambda
  • Director of Engineering

    2015 - 2019
    Breather Products
    • Led and managed the development of Breather's back-end APIs and services, as well as its systems infrastructure, including developer tools, CI/CD, systems reliability (DevOps), and data engineering. Later, as VP of engineering, I led the whole engineering organization at Breather, overseeing 23 developers and QA specialists.
    • Hired, led, and mentored a strong team of 12 developers. Established software development and deployment processes to ensure rapid, continuous delivery while maintaining code quality and correctness. Worked with lead developers in my team to ensure the continued improvement of the architecture and design of our systems. Collaborated with the product team to develop the short- and long-term product roadmap.
    • Led the design and development of an IoT hardware platform, building custom, cloud-controlled hardware devices to manage room access control (door locks and monitoring).
    • Rebuilt the search engine to make it scalable and fast, bringing down the latency from >1 sec to <75 ms on average.
    • Instrumented the back-end services and systems with StatsD and Datadog to have detailed metrics, allowing rich insights and automated monitoring and alerting.
    • Automated the provisioning of application server instances in AWS with Ansible and Terraform.
    Technologies: Node.js, JavaScript, TypeScript, MongoDB, RabbitMQ, Redis, Elasticsearch, React, Terraform, AWS, GraphQL, PostgreSQL
  • Senior Back-end/cloud Developer (Contract)

    2014 - 2015
    Schneider Electric
    • Maintained and developed new features for a cloud back-end energy management system for small and mid-sized buildings. This back end runs in AWS and is built upon Node.js, MongoDB, and websockets.
    Technologies: Node.js, MongoDB, WebSockets, Redis
  • Lead Developer (Full-stack)

    2013 - 2014
    Floop Technologies
    • Developed an iOS (iPhone and iPad) app that curated kids' apps.
    • Designed and developed an iOS SDK that provided various publishing and promotion tools targeted at kids' app developers.
    • Designed and developed a Unity SDK that exposed the iOS SDK functionality directly to Unity developers.
    • Developed a web dashboard to let SDK developers manage their accounts and services. This was a single-page web app built using AngularJS.
    • Designed and developed a REST API and back end to support these SDKs and dashboard. This was built in Python with the Google AppEngine and augmented with Flask.
    • Designed and developed an analytics pipeline that sent events from the iOS clients to the back end and repackaged and uploaded the data to Google Cloud storage and Google BigQuery for efficient querying.
    Technologies: iOS, Google App Engine, Google BigQuery, Python, Flask, AngularJS, Unity
  • Founder and Software Developer

    2011 - 2012
    LumiPay
    • Developed an iPhone app and REST software API using Node.js, and a web front-end using Backbone to manage customers, products, and invoices, and to process mobile payments.
    Technologies: iOS, Node.js, CoffeeScript, MongoDB, Redis, Heroku, Backbone
  • Software Developer

    2002 - 2010
    Netmosphere
    • Led the front- and back-end development and served as chief point of contact with clients for many C#/ASP.NET web applications, including an order management system for corporate orders and a contract tracking and management system for Rogers, Inc. and a booking system for a travel company.
    • Developed and maintained new features for the Mandarin Library Automation (MLA) library management system, a TCP/IP client-server system on Windows (C++).
    • Contributed to the development of a Windows (C#/.NET) TCP/IP client-server system to synchronize files across multiple clients. This included a file system filter driver, service, and user interface.
    Technologies: C#, .NET, Windows Server, JavaScript, PostgreSQL, C++, C

Experience

  • Breather.com (Development)
    https://breather.com

    Breather is a real-time space booking engine that allows the discovery, search, booking, and access of spaces and meeting rooms in a completely self-service fashion.

    In addition to the website, our platform is available as Android and iOS native apps. We also maintain an internal app for our operations and customer service people.

    At Breather, I worked on most parts of our stack, including the web front ends as well as the iOS mobile app, but spent most of my time working on DevOps, the ETL, and back-end API.

    The back end is built on Node.js and our API exposed both a REST and GraphQL (using Apollio) interfaces. We gradually converted it from vanilla ES6 to TypeScript. The front end is built with React + Redux.

  • DOMI Earth (via Toptal) (Development)

    For DOMI Earth, I built an IoT data processing pipeline.

    On-site devices sent power consumption data to AWS IoT. An IoT rule would store messages to SQS, which were then processed by a series of scheduled Lambdas written in Node.js (TypeScript), with the results stored in DynamoDB.

  • Schneider Electric, Building Insights (Development)
    https://www.youtube.com/watch?v=FAJ0ogFb5Rs

    The project I am currently working on: The climate control devices run a thin Node.js client that opens websocket connections to a Node.js server, which creates an API bridge for web and mobile clients.

  • Spotify 2 Chromecast (Development)
    https://github.com/vincentcr/spotify-connect-2-chromecast

    Chrome extension, web app, and Node.js back end leveraging Spotify's playback API and the Chrome capture tab functionality to stream Spotify into Chromecast speakers from the Spotify desktop app.

    Written in TypeScript.

  • SecCTL (Development)
    https://github.com/vincentcr/sec-ctl

    A personal project, it allows monitoring and controlling a DSC home alarm system panel through the cloud.

    It is built in Go and is comprised of an on-premise daemon, which connects to the DSC panel through a direct TCP/IP connection using the device's proprietary protocol and a cloud service. They are connected together via a websocket.

    There is also a simulator that mocks the panel's behavior and allows for faster and safer development.

Skills

  • Languages

    Python, JavaScript, SQL, C, TypeScript, CSS3, CoffeeScript, HTML, CSS, C++, Objective-C, Go, GraphQL
  • Libraries/APIs

    Node.js, jQuery, React, Backbone.js
  • Paradigms

    REST, Asynchronous Programming, Concurrent Programming, Functional Programming, DevOps
  • Platforms

    Linux, Amazon Web Services (AWS), Google App Engine, iOS, AWS Lambda, AWS IoT, AWS IoT Core, Docker
  • Other

    HTTP, Back-end Development, WebSockets, TCP/IP, UDP, Domain-driven Design (DDD), Chrome Extensions, Web Scraping, WebAssembly, AWS DevOps
  • Frameworks

    Express.js, AngularJS, Flask, Next.js, Koa
  • Tools

    RabbitMQ, Make, BigQuery, Amazon SQS, AWS ECS, MQTT
  • Storage

    Redis, PostgreSQL, Elasticsearch, MongoDB, AWS S3, AWS RDS, NoSQL, AWS DynamoDB

Education

  • Bachelor's degree in Computer Science and Mathematics
    1998 - 2001
    University of Montreal - Montreal, Canada

To view more profiles

Join Toptal
I really like this profile
Share it with others