Antoine Reversat, Developer in Montreal, QC, Canada
Antoine is available for hire
Hire Antoine

Antoine Reversat

Verified Expert  in Engineering

Software Developer

Location
Montreal, QC, Canada
Toptal Member Since
September 10, 2018

在过去的18年里,Antoine一直是Linux系统管理员和Python开发人员. He has a wide-ranging set of skills, from VoIP to testing automation, and has worked for several big companies (Ubisoft, Facebook) and several smaller ones. Antoine喜欢深入研究系统的复杂性,以便解决性能问题或复杂的bug.

Portfolio

Meta
Python 3, Rust, DevOps Engineer, Apache Spark
Trust & Safety Laboratory Inc.
DevOps, Amazon Web Services (AWS), Docker, Python...
Crabel Capital Management
Jenkins, Jenkins Pipeline, Artifactory, GitHub, GitHub API, Jira REST API...

Experience

Availability

Part-time

Preferred Environment

Google Cloud, CircleCI, GitHub, Linux, Vi, Visual Studio Code (VS Code)

The most amazing...

...我参与的项目是通过使用WebDriver和Python实现iPhone配置的自动化.

Work Experience

Production Engineer

2021 - 2023
Meta
  • 帮助开发了一个工具,以确保标记违反隐私承诺的工具之一正常工作.
  • Wrote a replacement for a tool in order to remove a java->jni->c->python chain that was very hard to debug.
  • Helped improve the process of landing AI capacity in the data centers.
  • Debugged out-of-memory issues with very complex queries in Spark, changing the query order to make some joins less memory-intensive.
Technologies: Python 3, Rust, DevOps Engineer, Apache Spark

DevOps Engineer

2021 - 2021
Trust & Safety Laboratory Inc.
  • 使用GitHub Actions和Amazon EKS自动化CI/CD管道,以持续部署暂放环境,并标记要在生产环境中部署的版本.
  • 创建了一个工具,从旋转的图像中提取文本,并使用Python提交它们进行分析, Amazon SQS, and S3.
  • 开发了Bazel规则,以简化从主存储库中的代码生成Docker映像的过程.
Technologies: DevOps, Amazon Web Services (AWS), Docker, Python, Amazon Simple Queue Service (SQS), AWS Simple Notification Service (SNS), Amazon EKS, Kubernetes, Data Pipelines, Amazon S3 (AWS S3), GitHub, Bazel, CI/CD Pipelines, DevOps Engineer, AWS CLI, AWS SDK, Ubuntu

DevOps Engineer

2020 - 2021
Crabel Capital Management
  • 重构了一个用于备份的Python应用程序,使其更加面向对象,并添加了类型提示.
  • 在TypeScript的web服务中添加了一个端点,以便在CI/CD管道发布一个版本时将其标记为在Jira中发布.
  • Helped migrate from on-prem Artifactory to cloud Artifactory. 这需要修补用Python和Bash编写的不同工具,并与团队协调以避免停机.
  • Added Ansible tasks to expand the product deployment infrastructure.
  • 修复了Jenkins的不同问题,从shell脚本错误到作业错误配置.
Technologies: Jenkins, Jenkins Pipeline, Artifactory, GitHub, GitHub API, Jira REST API, Python 3, TypeScript, Bash Script, Ansible, DevOps Engineer

DevOps Engineer

2019 - 2020
Veea, inc
  • Contributed to the migration from Chef 12 to Chef 14. Migrated recipes from the deprecated APIs to the new ones.
  • 帮助从在AWS中手动创建集群过渡到使用自动伸缩组部署新集群,使用非必要集群的现场实例.
  • Added the ability to spin up new environments using Terraform.
  • Helped move from the Elastic stack to Datadog. Moved a metrics collection to Datadog.
  • 将现有的Terraform工作流迁移到更易于维护的Terragrunt/Terraform工作流.
Technologies: Continuous Integration (CI), Continuous Delivery (CD), SQL, Docker, Git, Python, Apache, Linux, Amazon Web Services (AWS), NGINX, SmartStack, Elasticsearch, Redis, Apache ZooKeeper, Apache Kafka, Terragrunt, Terraform, Chef, Amazon Elastic Container Service (Amazon ECS), Amazon EC2, AWS NLB, AWS IAM, AWS ALB, DevOps Engineer, AWS CLI, AWS SDK, Apache Spark

Python Developer

2018 - 2018
Obkio
  • 为WebSocket服务器架构重新编写了一个现有的代码库,使其具有无限的可扩展性.
  • Added scalable publish/subscribe support using Redis.
  • Added a PostgreSQL Exporter in order to archive data living in Redis.
  • 在项目中添加了Python类型,并在CD基础结构中添加了类型检查.
  • Added functional tests using Bitbucket pipelines and Docker.
  • Implemented asynchronous unit tests for the project.
Technologies: Continuous Integration (CI), PostgreSQL, Continuous Delivery (CD), SQL, Python Asyncio, Google Cloud Platform (GCP), Git, Python, Linux, Bitbucket, Docker, Redis, WebSockets, Asyncio, Python 3, AWS CLI, Ubuntu, SSL Certificates, SSL Configurations, Amazon EC2

Infrastructure Engineer and Back-end Developer

2017 - 2018
Caravan
  • Developed CI/CD automation using Docker, Swarm, Kubernetes, and CircleCI.
  • 构建一个Python模块,允许Django项目使用不同的后端来存储配置数据:github.com/caravancoop/configstore.
  • 使用Terraform和Docker将Kafka的雪花部署迁移到完整的基础设施即服务部署.
Technologies: Continuous Integration (CI), Google Cloud, Continuous Delivery (CD), SQL, Python 3, Google Cloud Platform (GCP), Git, Apache, Linux, Amazon Web Services (AWS), Apache Kafka, Apache ZooKeeper, Terraform, Node.js, Angular, Flask, Django, Python, CircleCI, Kubernetes, Docker Swarm, Docker, HTTP, Ubuntu, SSL Certificates, SSL Configurations, Amazon EC2

Production Engineer

2015 - 2017
Facebook
  • 在数千部手机的自动化设置和维护中工作,以便在Facebook系列应用程序上运行测试:techcrunch.com/2016/07/13/facebook-lifts-the-veil-on-its-mobile-device-lab/.
  • 重写了Python软件栈,使我们能够监控数据中心中电话的状态.
  • Added automation using Python to turn up mobile device racks.
  • 创建了一个工具,允许使用WebDriver和Python编写iphone配置脚本.
  • 使用Chef帮助自动化管理超过2000台Mac mini.
  • 担任移动实验室的团队负责人:带领另外三个工程师组成的团队在移动实验室工作, providing guidance, code review, and setting priorities.
Technologies: Test-driven Development (TDD), SQL, Python 3, Linux, Android, iOS, MacOS, CentOS, Chef, Asyncio, Python, DevOps Engineer

Python Developer

2014 - 2015
Caravan Web Worker Coopérative
  • Developed an API to federate three other APIs into one using Django, Django REST framework, Memcached, and Google Cloud.
  • Managed two other developers working on the same federated API project.
  • 用Python开发数据摄取脚本,允许将旧数据导入客户的CRM.
Technologies: Test-driven Development (TDD), Google Cloud, SQL, Git, Apache, Linux, Memcached, Google Cloud SQL, Google Cloud Platform (GCP), Django REST Framework, Flask, Django, Python, Ubuntu, SSL Certificates, SSL Configurations

Linux Systems Administrator

2013 - 2013
Fibrenoire
  • Helped create the company's highly available VoIP platform.
  • Implemented Puppet configuration management. Used Puppet to manage the configuration of around ten servers.
  • 创建了一个工具,使用Python自动提供客户端设备.
  • Implemented monitoring using Zabbix. Used Zabbix to monitor around ten servers.
Technologies: SQL, Google Cloud Platform (GCP), Git, Apache, Linux, Python, Lua, Cisco, OpenSIPs, FreeSWITCH, Ubuntu, SSL Certificates, SSL Configurations

Unix/Linux Administrator

2012 - 2013
Ubisoft
  • Implemented a high-availability MySQL platform using MySQL and Pacemaker. The platform serves more than 300,000 concurrent users.
  • Helped implement the company-wide Zabbix deployment.
  • Was on call for the whole MySQL deployment serving online games.
Technologies: SQL, Linux, Zabbix, Percona, Pacemaker, MySQL

Technology Director

2008 - 2012
Ubity
  • Helped create and operate a hosted VoIP service. This involved designing, implementing, and scaling the Asterisk infrastructure supporting the service.
  • Created a tool to provision new phones using Python and MySQL. 该工具将使用客户数据为任何电话生成配置文件,并通过HTTP提供服务.
  • Helped in the customer support rotation. 这包括回答客户的要求,并通过电话或通过我们的票务系统解决问题.
  • Set up new customers' equipment. 这将涉及到客户的位置,安装网络设备和电话.
  • 通过使用GlusterFS和MySQL共享每个服务器所需的数据,使VoIP设置高度可用.
  • 利用BGP和路由工程实现数据中心的互联网全冗余连接.
  • 领导一个五人团队,负责运营、基础设施和支持. Helped define the infrastructure and made sure it was implemented correctly. Helped the support team with higher-level cases.
Technologies: SQL, Git, Apache, Linux, Python, MySQL, GlusterFS, SIP, Tomato, VoIP, Asterisk, Ubuntu, SSL Certificates, SSL Configurations

Software Consultant

2007 - 2007
Savoir faire Linux
  • 电话支持客户处理与服务器运行有关的各种问题.
  • Helped customers scale their web infrastructure to support their load.
  • Created a small distribution for thin workstation clients.
Technologies: SQL, Git, MySQL, Linux, Exim4, Postfix, Samba, Apache, JBoss, Apache Tomcat, Ubuntu, SSL Certificates, SSL Configurations

System Administrator

2007 - 2007
Linagora
  • Created an automated installer to bring up the developer workstations for SAGEM.
  • 了解了如何自动加入工作站的活动目录域.
  • Automated a developer environment setup for the workstations on the first login.
Technologies: SQL, Linux, OpenLDAP, Samba, Kerberos, Debian, Installation, Ubuntu, SSL Certificates, SSL Configurations

Engineer

2004 - 2007
Capensis
  • Automated server installation and configuration by writing a Perl application.
  • 为客户创建定制解决方案:邮件服务器、过滤代理、web服务器等.
  • Supported customers on the phone to help solve problems with their servers.
Technologies: SQL, MySQL, Linux, OpenLDAP, Samba, Dovecot, Apache, Postfix, Python, Perl, Debian Linux, Ubuntu, SSL Certificates, SSL Configurations

Configstore

http://github.com/caravancoop/configstore
Configstore是一个用于Django的Python模块,它允许Django在不同的后端环境(环境变量)中存储配置项, Docker secrets, dotenv file, AWS SSM, etc.).

Contributed to the Linux Kernel

http://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h=v4.19-rc2&id=e3cb78c772de593afa720687ce3abbed8d93b0c3
Contributed a bug fix to the Linux kernel. This fixed a bug where using 802.某些硬件上的1Q vlan会完全破坏它正在发送的数据包. I had to dig deep into the kernel code to determine what was happening.

Added Support for IT8688 to Open Hardware Monitor

http://github.com/openhardwaremonitor/openhardwaremonitor/pull/1157
我通过对用于硬件监控的官方Gigabyte实用程序进行逆向工程,为Open Hardware Monitor添加了对IT8688芯片的支持. 该项目涉及对c#应用程序进行逆向工程,并使用从JetBrains dotPeek导出到Visual Studio 2017的符号对其进行调试.

Mobile Device Lab at the Prineville Data Center

http://code.fb.com/android/the-mobile-device-lab-at-the-prineville-data-center/
Wrote an article about what I did at Facebook. 然后,这被用作几篇在线文章(TechCrunch, the Verge等)的基础.). 这篇文章详细介绍了我们是如何以Facebook的规模在实际手机上测试不同的移动应用程序的.

libimobiledevice Library

http://github.com/libimobiledevice/libimobiledevice
Contributed some patches to libimobiledevice, a library that allows interaction with iPhones, iPads, etc. I fixed a few bugs and added some missing functionality. Most of these were discovered while working on the mobile lab for Facebook.

Unreal Engine Plugin

http://www.unrealengine.com/marketplace/en-US/product/38b887ee46ef471ebdb93d8cfb2ad96a
开发了一个虚幻引擎插件,允许使用实时屏幕截图作为MediaTexture的源. This allows people to use a live capture of their desktop as an in-game texture. 它在VR应用中非常有用,因为它在VR环境中提供了屏幕的实时视图.

Languages

Python, Python 3, Java, JavaScript, SQL, Lua, Rust, Perl, TypeScript, Bash Script, Ruby, Swift, C, C++, C#

Frameworks

Django, Django REST Framework, Flask, Unreal Engine 4, Angular, OpenSIPs, Unreal Engine, Apache Spark, SmartStack

Libraries/APIs

Python Asyncio, Jenkins Pipeline, REST APIs, Terragrunt, Asyncio, Node.js, OpenLDAP, GitHub API, Jira REST API, Windows API

Tools

Terraform, NGINX, Apache, Git, Jenkins, Artifactory, Amazon Elastic Container Service (Amazon ECS), Google Stackdriver, Docker Swarm, CircleCI, Android Studio, Puppet, Chef, SaltStack, Ansible, Asterisk, FreeSWITCH, Apache ZooKeeper, AWS CLI, AWS SDK, GitHub, Pacemaker, Zabbix, Apache Tomcat, Postfix, Exim4, Tomato, Bitbucket, AWS IAM, Amazon Simple Queue Service (SQS), AWS Simple Notification Service (SNS), Amazon EKS, Bazel, Visual Studio, JetBrains

Paradigms

DevOps, Mobile Development, Test-driven Development (TDD), Continuous Delivery (CD), Continuous Integration (CI), Samba

Platforms

Kubernetes, Docker, Android, Linux, Google Cloud Platform (GCP), Ubuntu, iOS, MacOS, Amazon Web Services (AWS), Spinnaker, DigitalOcean, Percona, CentOS, JBoss, Debian Linux, Debian, AWS ALB, AWS NLB, Amazon EC2, Apache Kafka, Visual Studio Code (VS Code)

Storage

MySQL, Google Cloud SQL, Google Cloud, PostgreSQL, Memcached, Redis, GlusterFS, Elasticsearch, MongoDB, Data Pipelines, Amazon S3 (AWS S3)

Other

Vi, Session Initiation Protocol (SIP), Mobile App Development, DevOps Engineer, GitHub Actions, SSL Certificates, Web Applications, Linux Server Administration, CI/CD Pipelines, HTTP, Autoscaling, WebSockets, SSL Configurations, Web Server Gateway Interface (WSGI), Cisco, Dovecot, Installation, Kerberos, VoIP, SIP, Networking, Business, System Administration, Reverse Engineering, Unreal Engine 5, Pulumi

2004 - 2007

Engineering Degree in Telecommunications and Networks

TELECOM Lille - Lille, France

2002 - 2004

Two-year Degree in Telecommunications and Networks

Institut Universitaire de Technologie de Béthune - Bethune, France