Nicolas Le Manchet, Developer in Warsaw, Poland
Nicolas is available for hire
Hire Nicolas

Nicolas Le Manchet

Verified Expert  in Engineering

Software Developer

Location
Warsaw, Poland
Toptal Member Since
July 24, 2018

Nicolas is an experienced Python developer who enjoys writing back-end code with Django and Flask. Having worked as a DevOps for a large Cloud provider as well as smaller startups in different countries, he likes helping teams of all horizons to build reliable infrastructure.

Portfolio

Open Tender
Amazon Web Services (AWS), CircleCI, Docker, Ansible, MySQL, Flask, Python
Growbots
Continuous Delivery (CD), Celery, SQLAlchemy, Flask, Python
OVH
Ansible, Puppet, Docker, Celery, SQLAlchemy, Flask, Python

Experience

Availability

Part-time

Preferred Environment

Docker, PyCharm, Rust, Python 3, Debian

The most amazing...

...project I've built is a service that helps deploy OpenStack clusters made of thousands of servers.

Work Experience

Back-end Developer

2018 - 2020
Open Tender
  • Designed and developed a REST API replacing the legacy server-side rendered forms.
  • Designed a point-of-sales system with bidirectional synchronization of orders between restaurants and the cloud SaaS application.
  • Established a continuous deployment strategy using GitHub, CircleCI, Docker, and AWS ECS to deploy the main SaaS application.
  • Built the integration with third-party services (payment, CRM, and loyalty programs).
  • Migrated the application from Python 2.7 to Python 3.
  • Integrated asynchronous tasks using Celery, improving the latency of the web application.
Technologies: Amazon Web Services (AWS), CircleCI, Docker, Ansible, MySQL, Flask, Python

Back-end Developer

2016 - 2018
Growbots
  • Wrote and maintained a REST API in Flask with Celery background tasks handling hundreds of requests per second.
  • Improved performances by switching from a pull-based approach to a push one for external services.
  • Improved application latency by profiling and rewriting SQL queries as well as tuning MySQL.
  • Tracked down and reduced memory leaks in Python applications.
  • Migrated existing codebases from Python 2 to Python 3.
  • Provided long-term maintenance of a core service in a microservices architecture.
  • Improved the continuous delivery workflow with GitLab CI and Docker containers.
Technologies: Continuous Delivery (CD), Celery, SQLAlchemy, Flask, Python

DevOps Engineer

2014 - 2016
OVH
  • Developed REST APIs in Flask that help deploy large OpenStack clouds.
  • Provisioned the server with Puppet and Ansible.
  • Wrote an API to automate the creation and signature of SSL certificates used by Puppet to authenticate hosts.
  • Monitored large-scale infrastructure with Shinken.
  • Deployed production using Docker containers on Apache Mesos.
Technologies: Ansible, Puppet, Docker, Celery, SQLAlchemy, Flask, Python

Open Tender/Brandibble

https://www.brandibble.co
Participated to the development of an integrated solution for restaurants providing online ordering, point-of-sales, kitchen display system, API and the integration with dozens of third-party systems.

Growbots

https://www.growbots.com
Contributed with a team of 20 developers to the back-end running the Growbots.com application for outbound sales.

OVH Public Cloud

Built the OVH public cloud based on OpenStack as part of a global team. I delivered internal tools for provisioning large clusters of dedicated servers. Completed server configuration with Puppet, automated operating system image building, and oversaw monitoring.

Feedsubs

https://feedsubs.com
This is an open-source RSS feed reader written in Python 3 with Django. I created asynchronous fetch of feeds with background tasks, deployed to production using Docker containers, automated with Ansible, and built the front end using the Bulma CSS framework. I used Django static assets served with Caddy and ensured security using HTTPS with Let's Encrypt, HSTS.

IMAPClient

https://github.com/mjs/imapclient
Maintainer of IMAPClient, a popular Python library for interacting with email servers.

I fixed issues related to SSL/TLS connections on different versions of Python. Improved the code base by refactoring aging parts. Added support for newer RFCs related to IMAP and improved documentation.

Bplustree

https://github.com/NicolasLM/bplustree
A library providing an on-disk sorted data structure that implements the same interface as Python dicts.

I used a B+ tree for efficient look-ups and traversals, a Write Ahead Log (WAL) for transaction management and Atomicity, supported arbitrary large values using linked overflow pages, and delivered an extensive test suite.

Spinach

https://github.com/NicolasLM/spinach
Lightweight engine for background tasks using Redis as an alternative to the popular Celery.

I created supports for at-least-once or at-most-once delivery per task, periodic tasks without an additional process, the scheduling of tasks in batches, embeddable workers for easier testing, first-class support for Python threads, and an extensive test suite.

Languages

Python, HTML, Python 3, Lua, Rust, CSS

Frameworks

Flask, Django, Django REST Framework, Bulma

Libraries/APIs

REST APIs, Asyncio, SQLAlchemy, Requests

Tools

Celery, Ansible, Git, Sentry, Puppet, PyCharm, CircleCI, RabbitMQ, NGINX, Caddy Server

Platforms

Docker, Debian, Amazon Web Services (AWS), OpenStack

Storage

PostgreSQL, Redis, MySQL, Memcached

Other

Processing & Threading, Gunicorn, Sales, HTTPS, Security, RSS Feeds, IMAP, Request for Comment (RFC), SSL, Nomad

Paradigms

Microservices, Continuous Delivery (CD), Refactoring

2011 - 2014

Engineering in Systems, Networking and Telecommunication

University of Technology of Troyes - Troyes, France

2010 - 2011

University of Technology Diploma (DUT) in Networking and Telecommunication

University of Clermont-Ferrand - Clermont-Ferrand, France

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring